Interface VersionConstraint

All Superinterfaces:
Cloneable
All Known Subinterfaces:
BundleSpecification, GenericSpecification, HostSpecification, ImportPackageSpecification, NativeCodeSpecification

public interface VersionConstraint extends Cloneable
VersionConstraints represent the relationship between two bundles (in the case of bundle requires) or a bundle and a package (in the case of import/export).

This interface is not intended to be implemented by clients. The StateObjectFactory should be used to construct instances.

Since:
3.1
Restriction:
This interface is not intended to be implemented by clients.
  • Method Details Link icon

    • getName Link icon

      String getName()
      Returns this constraint's name.
      Returns:
      this constraint's name
    • getVersionRange Link icon

      VersionRange getVersionRange()
      Returns the version range for this constraint.
      Returns:
      the version range for this constraint, or null
    • getBundle Link icon

      BundleDescription getBundle()
      Returns the bundle that declares this constraint.
      Returns:
      a bundle description
    • isResolved Link icon

      boolean isResolved()
      Returns whether this constraint is resolved. A resolved constraint is guaranteed to have its supplier defined.
      Returns:
      true if this bundle is resolved, false otherwise
    • isSatisfiedBy Link icon

      boolean isSatisfiedBy(BaseDescription supplier)
      Returns whether this constraint could be satisfied by the given supplier. This will depend on the suppliers different attributes including its name, versions and other arbitrary attributes
      Parameters:
      supplier - a supplier to be tested against this constraint (may be null)
      Returns:
      true if this constraint could be resolved using the supplier, false otherwise
    • getSupplier Link icon

      BaseDescription getSupplier()
      Returns the supplier that satisfies this constraint, if it is resolved.
      Returns:
      a supplier, or null
      See Also:
    • getRequirement Link icon

      BundleRequirement getRequirement()
      Returns the requirement represented by this constraint. Some constraint types may not be able to represent a requirement. In such cases null is returned.
      Returns:
      the requirement represented by this constraint
      Since:
      3.7
    • getUserObject Link icon

      Object getUserObject()
      Returns the user object associated to this constraint, or null if none exists.
      Returns:
      the user object associated to this constraint, or null
      Since:
      3.8
    • setUserObject Link icon

      void setUserObject(Object userObject)
      Associates a user-provided object to this constraint, or removes an existing association, if null is provided. The provided object is not interpreted in any ways by this constrain.
      Parameters:
      userObject - an arbitrary object provided by the user, or null
      Since:
      3.8