Package org.apache.sling.feature.scanner
Class Descriptor
java.lang.Object
org.apache.sling.feature.scanner.Descriptor
- Direct Known Subclasses:
ArtifactDescriptor,ContainerDescriptor
A descriptor holds information about requirements and capabilities.
Note that this implementation is not synchronized. If multiple threads access
a descriptor concurrently, and at least one of the threads modifies the
descriptor structurally, it must be synchronized externally. However, once a
descriptor is locked, it is safe to access it concurrently.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidAggregate with data from provided descriptorprotected voidInternal method for checking locked statefinal Set<org.osgi.resource.Capability> Return the list of capabilities.final Set<org.osgi.resource.Capability> getCapabilities(String namespace) final Set<PackageInfo> Return a set of dynamic imported packagesfinal Set<PackageInfo> Return a set of exported packagesfinal Set<PackageInfo> getExportedPackages(String packageName) final Set<PackageInfo> Return a set of imported packagesgetName()Returns the name of the entity associated with this descriptor.final Set<org.apache.sling.feature.MatchingRequirement> Return the list of requirements.final booleanisLocked()Check if the descriptor is lockedvoidlock()Lock the descriptor.toString()
-
Constructor Details
-
Descriptor
Constructor for a new descriptor- Parameters:
name- Name- Throws:
IllegalArgumentException- if name isnull
-
-
Method Details
-
lock
public void lock()Lock the descriptor. Once invoked no changes can be made to the descriptor. -
isLocked
public final boolean isLocked()Check if the descriptor is locked- Returns:
trueif locked.
-
checkLocked
protected void checkLocked()Internal method for checking locked state- Throws:
IllegalStateException- If locked
-
aggregate
Aggregate with data from provided descriptor- Parameters:
d- The other descriptor
-
getExportedPackages
Return a set of exported packages- Returns:
- The exported packages. Might be empty.
-
getExportedPackages
-
getImportedPackages
Return a set of imported packages- Returns:
- The imported packages. Might be empty.
-
getDynamicImportedPackages
Return a set of dynamic imported packages- Returns:
- The dynamic imported packages. Might be empty.
-
getName
Returns the name of the entity associated with this descriptor.- Returns:
- the name.
-
getRequirements
Return the list of requirements.- Returns:
- The list of requirements. The list might be empty.
-
getCapabilities
Return the list of capabilities.- Returns:
- The list of capabilities. The list might be empty.
-
getCapabilities
-
toString
-