Package org.eclipse.osgi.service.resolver

## Interface ImportPackageSpecification

All Superinterfaces:
  `Cloneable`, `VersionConstraint`

    public interface ImportPackageSpecification
    extends VersionConstraint

A representation of one package import constraint as seen in a bundle manifest and managed by a state and resolver.

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.

### Field Summary

Fields
`static String` `RESOLUTION_DYNAMIC` The dynamic resolution directive value.
`static String` `RESOLUTION_OPTIONAL` The optional resolution directive value.
`static String` `RESOLUTION_STATIC` The static resolution directive value.

### Method Summary

All Methods Instance Methods Abstract Methods
`Map<String,​Object>` `getAttributes()` Returns the arbitrary attributes which this import package may be resolved to.
`String` `getBundleSymbolicName()` Returns the symbolic name of the bundle this import package must be resolved to.
`VersionRange` `getBundleVersionRange()` Returns the version range which this import package may be resolved to.
`Object` `getDirective​(String key)` Returns the specified directive that control this import package.
`Map<String,​Object>` `getDirectives()` Returns the directives that control this import package.

### Methods inherited from interface org.eclipse.osgi.service.resolver.VersionConstraint

`getBundle, getName, getRequirement, getSupplier, getUserObject, getVersionRange, isResolved, isSatisfiedBy, setUserObject`

### Field Detail

#### RESOLUTION_STATIC

    static final String RESOLUTION_STATIC

The static resolution directive value.

See Also:
  Constant Field Values

#### RESOLUTION_OPTIONAL

    static final String RESOLUTION_OPTIONAL

The optional resolution directive value.

See Also:
  Constant Field Values

#### RESOLUTION_DYNAMIC

    static final String RESOLUTION_DYNAMIC

The dynamic resolution directive value.

See Also:
  Constant Field Values

### Method Detail

#### getBundleSymbolicName

    String getBundleSymbolicName()

Returns the symbolic name of the bundle this import package must be resolved to.

Returns:
  the symbolic name of the bundle this import pacakge must be resolved to. A value of `null` indicates any symbolic name.

#### getBundleVersionRange

    VersionRange getBundleVersionRange()

Returns the version range which this import package may be resolved to.

Returns:
  the version range which this import package may be resolved to.

#### getAttributes

    Map<String,​Object> getAttributes()

Returns the arbitrary attributes which this import package may be resolved to.

Returns:
  the arbitrary attributes which this import package may be resolved to.

#### getDirectives

    Map<String,​Object> getDirectives()

Returns the directives that control this import package.

Returns:
  the directives that control this import package.

#### getDirective

    Object getDirective​(String key)

Returns the specified directive that control this import package.

Returns:
  the specified directive that control this import package.