ModuleReference
Contains information about a dependency.
During the project evaluation the dependency can be obtained by using a repository or refer to a local project. This is controlled by the version, groupName and the configured IviDependencySource:
When version and groupName are set to a non-
null
value then the dependency is always resolved by using a repository.When groupName is
null
then the dependency is always resolved to a local project.When version is
null
and groupName is a non-null
value then the behaviour depends on the used IviDependencySource.
The ModuleReference class is open for extension. If some parts of the module reference parameters can be derived, define and use a subclass to simplify the configuration. For instance, an IviPlatformModuleReference, subclass of ModuleReference, can derive the package name from the module name for all TomTom Digital Cockpit platform modules.
Use IviPlatformModuleReference for TomTom Digital Cockpit platform dependencies.
Parameters
An optional artifact group name. This is the {group}
part in Gradle dependency notations like {group}:{module}:{version}
.
The module name or the name of a local project. This is the {module}
part in Gradle dependency notations like {group}:{module}:{version}
.
The package name of the module. This typically needs to be the same as the value of the package
attribute of the manifest
element as defined in the AndroidManifest.xml
file within the module.
An optional version of the module. This is the {version}
part in Gradle dependency notations like {group}:{module}:{version}
.