Package org.apache.sling.feature.maven.mojos.apis

# Class ApisJarContext.ArtifactInfo

java.lang.Object
org.apache.sling.feature.maven.mojos.apis.ApisJarContext.ArtifactInfo

Enclosing class:
  `ApisJarContext`

public static final class ApisJarContext.ArtifactInfo extends Object
Information about a single artifact (bundle) taking part in the api generation.

## Constructor Summary

Constructors
Constructor
Description
`ArtifactInfo(org.apache.sling.feature.Artifact artifact)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addSourceInfo(String connection)`
`void`
`addSourceInfo(org.apache.sling.feature.ArtifactId id)`
`boolean`
`equals(Object obj)`
`org.apache.sling.feature.Artifact`
`getArtifact()`
`File`
`getBinDirectory()`
`List<org.apache.sling.feature.ArtifactId>`
`getDependencyArtifacts()`
Get the dependency artifacts If `ApisUtil#API_IDS` is provided as metadata for the artifact, the value is used as a list of artifacts If `ApisUtil#SCM_IDS` is provided as metadata for the artifact, the value is used as a list of artifacts.
`org.apache.sling.feature.ArtifactId`
`getId()`
`Set<File>`
`getIncludedResources()`
`List<org.apache.maven.model.License>`
`getLicenses()`
`Set<String>`
`getNodeTypes()`
Get all node types from this artifact
`String`
`getNotUseAsDependencyPerRegionReason(String regionName)`
`Set<org.apache.felix.utils.manifest.Clause>`
`getProvidedCapabilities(String regionName)`
`File`
`getSourceDirectory()`
`Set<String>`
`getSources()`
`String[]`
`getUsedExportedPackageIncludes()`
`String[]`
`getUsedExportedPackageIncludes(String regionName)`
`Set<String>`
`getUsedExportedPackages()`
`Set<org.apache.felix.utils.manifest.Clause>`
`getUsedExportedPackages(String regionName)`
`int`
`hashCode()`
`boolean`
`isUseAsDependencyPerRegion(String regionName)`
`void`
`setBinDirectory(File binDirectory)`
`void`
`setLicenses(List<org.apache.maven.model.License> licenses)`
`void`
`setProvidedCapabilities(String regionName, Set<org.apache.felix.utils.manifest.Clause> providedCapabilitiesPerRegion)`
`void`
`setSourceDirectory(File sourceDirectory)`
`void`
`setUsedExportedPackages(String regionName, Set<org.apache.felix.utils.manifest.Clause> usedExportedPackages, String useAsDependency)`
`void`
`setUsedExportedPackages(Set<String> usedExportedPackages)`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ArtifactInfo

public ArtifactInfo(org.apache.sling.feature.Artifact artifact)

## Method Details

### getId

public org.apache.sling.feature.ArtifactId getId()

### getArtifact

public org.apache.sling.feature.Artifact getArtifact()

### getBinDirectory

public File getBinDirectory()

### setBinDirectory

public void setBinDirectory(File binDirectory)

### getSourceDirectory

public File getSourceDirectory()

### setSourceDirectory

public void setSourceDirectory(File sourceDirectory)

### getUsedExportedPackages

public Set<String> getUsedExportedPackages()

### setUsedExportedPackages

public void setUsedExportedPackages(Set<String> usedExportedPackages)

### getUsedExportedPackageIncludes

public String[] getUsedExportedPackageIncludes()

### getUsedExportedPackages

public Set<org.apache.felix.utils.manifest.Clause> getUsedExportedPackages(String regionName)

### setUsedExportedPackages

public void setUsedExportedPackages(String regionName, Set<org.apache.felix.utils.manifest.Clause> usedExportedPackages, String useAsDependency)

### getUsedExportedPackageIncludes

public String[] getUsedExportedPackageIncludes(String regionName)

### isUseAsDependencyPerRegion

public boolean isUseAsDependencyPerRegion(String regionName)

### getNotUseAsDependencyPerRegionReason

public String getNotUseAsDependencyPerRegionReason(String regionName)

### getIncludedResources

public Set<File> getIncludedResources()

### getNodeTypes

public Set<String> getNodeTypes()
Get all node types from this artifact

Returns:
  The set of node types, might be empty

### getLicenses

public List<org.apache.maven.model.License> getLicenses()

### setLicenses

public void setLicenses(List<org.apache.maven.model.License> licenses)

### getDependencyArtifacts

public List<org.apache.sling.feature.ArtifactId> getDependencyArtifacts() throws org.apache.maven.plugin.MojoExecutionException
Get the dependency artifacts

1. If `ApisUtil#API_IDS` is provided as metadata for the artifact, the value is used as a list of artifacts
2. If `ApisUtil#SCM_IDS` is provided as metadata for the artifact, the value is used as a list of artifacts. The artifacts must have a classifier set. The classifier is removed and then the artifacts are used
3. The artifact itself is used

Returns:
  The list of dependency artifacts
Throws:
  `org.apache.maven.plugin.MojoExecutionException` - If an incorrect configuration is found

### addSourceInfo

public void addSourceInfo(org.apache.sling.feature.ArtifactId id)

### addSourceInfo

public void addSourceInfo(String connection)

### getSources

public Set<String> getSources()

### getProvidedCapabilities

public Set<org.apache.felix.utils.manifest.Clause> getProvidedCapabilities(String regionName)

### setProvidedCapabilities

public void setProvidedCapabilities(String regionName, Set<org.apache.felix.utils.manifest.Clause> providedCapabilitiesPerRegion)

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`