javaconfig

package
v0.27.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 5, 2024 License: Apache-2.0 Imports: 7 Imported by: 4

Documentation

Index

Constants

View Source
const (
	// JavaExcludeArtifact tells the resolver to disregard a given maven artifact.
	// Can be repeated.
	JavaExcludeArtifact = "java_exclude_artifact"

	// JavaExtensionDirective represents the directive that controls whether
	// this Java extension is enabled or not. Sub-packages inherit this value.
	// Can be either "enabled" or "disabled". Defaults to "enabled".
	JavaExtensionDirective = "java_extension"

	// JavaMavenInstallFile represents the directive that controls where the
	// maven_install.json file is located.
	// Defaults to "maven_install.json".
	JavaMavenInstallFile = "java_maven_install_file"

	// JavaModuleGranularityDirective represents the directive that controls whether
	// this Java module has a module granularity (Gradle) or a package
	// granularity (bazel).
	// Can be either "package" or "module". Defaults to "package".
	JavaModuleGranularityDirective = "java_module_granularity"

	// JavaTestFileSuffixes indicates within a test directory which files are test classes vs utility classes,
	// based on their basename.
	// It should be set up to match the value used for java_test_suite's test_suffixes attribute.
	// Accepted values are a comma-delimited list of strings.
	JavaTestFileSuffixes = "java_test_file_suffixes"

	// JavaTestMode allows user to choose from per file test or per directory test suite.
	JavaTestMode = "java_test_mode"

	// JavaGenerateProto tells the code generator whether to generate `java_proto_library` (and `java_library`)
	// rules when a `proto_library` rule is present.
	// Can be either "true" or "false". Defaults to "true".
	JavaGenerateProto = "java_generate_proto"

	// JavaMavenRepositoryName tells the code generator what the repository name that contains all maven dependencies is.
	// Defaults to "maven"
	JavaMavenRepositoryName = "java_maven_repository_name"

	// JavaAnnotationProcessorPlugin tells the code generator about specific java_plugin targets needed to process
	// specific annotations.
	JavaAnnotationProcessorPlugin = "java_annotation_processor_plugin"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// contains filtered or unexported fields
}

Config represents a config extension for a specific Bazel package.

func New

func New(repoRoot string) *Config

New creates a new Config.

func (*Config) AddAnnotationProcessorPlugin added in v0.26.0

func (c *Config) AddAnnotationProcessorPlugin(annotationClass types.ClassName, processorClass types.ClassName)

func (*Config) AddExcludedArtifact added in v0.10.0

func (c *Config) AddExcludedArtifact(s string) error

func (*Config) AttributesForAnnotation added in v0.6.0

func (c *Config) AttributesForAnnotation(annotation string) (map[string]bzl.Expr, bool)

func (Config) ExcludedArtifacts added in v0.10.0

func (c Config) ExcludedArtifacts() map[string]struct{}

func (*Config) ExtensionEnabled added in v0.6.0

func (c *Config) ExtensionEnabled() bool

ExtensionEnabled returns whether the extension is enabled or not.

func (*Config) GenerateProto added in v0.14.0

func (c *Config) GenerateProto() bool

func (*Config) GetAnnotationProcessorPluginClasses added in v0.26.0

func (c *Config) GetAnnotationProcessorPluginClasses(annotationClass types.ClassName) *sorted_set.SortedSet[types.ClassName]

func (*Config) GetCustomJavaTestFileSuffixes added in v0.10.0

func (c *Config) GetCustomJavaTestFileSuffixes() *[]string

func (*Config) IsJavaTestFile added in v0.10.0

func (c *Config) IsJavaTestFile(basename string) bool

func (Config) IsModuleRoot

func (c Config) IsModuleRoot() bool

func (*Config) IsTestRule added in v0.24.0

func (c *Config) IsTestRule(ruleKind string) bool

func (*Config) MapAnnotationToAttribute added in v0.6.0

func (c *Config) MapAnnotationToAttribute(annotation string, key string, value bzl.Expr)

func (*Config) MapAnnotationToWrapper added in v0.24.0

func (c *Config) MapAnnotationToWrapper(annotation string, wrapper string)

func (Config) MavenInstallFile

func (c Config) MavenInstallFile() string

func (*Config) MavenRepositoryName added in v0.18.0

func (c *Config) MavenRepositoryName() string

func (Config) ModuleGranularity

func (c Config) ModuleGranularity() string

func (*Config) NewChild

func (c *Config) NewChild() *Config

NewChild creates a new child Config. It inherits desired values from the current Config and sets itself as the parent to the child.

func (*Config) SetExtensionEnabled added in v0.6.0

func (c *Config) SetExtensionEnabled(enabled bool)

SetExtensionEnabled sets whether the extension is enabled or not.

func (*Config) SetGenerateProto added in v0.14.0

func (c *Config) SetGenerateProto(generate bool)

func (*Config) SetJavaTestFileSuffixes added in v0.10.0

func (c *Config) SetJavaTestFileSuffixes(suffixesString string) error

func (*Config) SetMavenInstallFile

func (c *Config) SetMavenInstallFile(filename string)

func (*Config) SetMavenRepositoryName added in v0.18.0

func (c *Config) SetMavenRepositoryName(name string)

func (*Config) SetModuleGranularity

func (c *Config) SetModuleGranularity(granularity string) error

func (*Config) SetTestMode

func (c *Config) SetTestMode(mode string) error

func (Config) TestMode

func (c Config) TestMode() string

func (*Config) WrapperForAnnotation added in v0.24.0

func (c *Config) WrapperForAnnotation(annotation string) (string, bool)

type Configs

type Configs map[string]*Config

Configs is an extension of map[string]*Config. It provides finding methods on top of the mapping.

func (*Configs) ParentForPackage

func (c *Configs) ParentForPackage(pkg string) *Config

ParentForPackage returns the parent Config for the given Bazel package.

type LoadInfo added in v0.6.0

type LoadInfo struct {
	From   string
	Symbol string
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL