org.eclipse.osgi.internal.resolver
Class NativeCodeSpecificationImpl

java.lang.Object
  extended by org.eclipse.osgi.internal.resolver.NativeCodeSpecificationImpl
All Implemented Interfaces:
Cloneable, NativeCodeSpecification, VersionConstraint

public class NativeCodeSpecificationImpl
extends Object
implements NativeCodeSpecification


Field Summary
protected  Object monitor
           
 
Constructor Summary
NativeCodeSpecificationImpl()
           
 
Method Summary
 BundleDescription getBundle()
          Returns the bundle that declares this constraint.
protected  Map<String,Object> getInteralAttributes()
           
protected  Map<String,String> getInternalDirectives()
           
protected  String getInternalNameSpace()
           
 String getName()
          Returns this constraint's name.
 NativeCodeDescription[] getPossibleSuppliers()
          Returns the list of possible suppliers to this native code specification.
 BundleRequirement getRequirement()
          Returns the requirement represented by this constraint.
 BaseDescription getSupplier()
          Returns the supplier that satisfies this constraint, if it is resolved.
 Object getUserObject()
          Returns the user object associated to this constraint, or null if none exists.
 VersionRange getVersionRange()
          Returns the version range for this constraint.
protected  boolean hasMandatoryAttributes(String[] mandatory)
           
 boolean isOptional()
          Returns whether or not this native code specification is optional.
 boolean isResolved()
          Returns whether this constraint is resolved.
 boolean isSatisfiedBy(BaseDescription supplier)
          Returns whether this constraint could be satisfied by the given supplier.
protected  void setBundle(BundleDescription bundle)
           
protected  void setName(String name)
           
protected  void setSupplier(BaseDescription supplier)
           
 void setUserObject(Object userObject)
          Associates a user-provided object to this constraint, or removes an existing association, if null is provided.
protected  void setVersionRange(VersionRange versionRange)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.osgi.service.resolver.VersionConstraint
getBundle, getName, getRequirement, getSupplier, getUserObject, getVersionRange, isResolved, setUserObject
 

Field Detail

monitor

protected final Object monitor
Constructor Detail

NativeCodeSpecificationImpl

public NativeCodeSpecificationImpl()
Method Detail

getPossibleSuppliers

public NativeCodeDescription[] getPossibleSuppliers()
Description copied from interface: NativeCodeSpecification
Returns the list of possible suppliers to this native code specification. When this native code specification is resolved one of the possible suppliers will be selected and returned by VersionConstraint.getSupplier().

Specified by:
getPossibleSuppliers in interface NativeCodeSpecification
Returns:
the list of possible suppliers.

isOptional

public boolean isOptional()
Description copied from interface: NativeCodeSpecification
Returns whether or not this native code specification is optional.

Specified by:
isOptional in interface NativeCodeSpecification
Returns:
whether this specification is optional

isSatisfiedBy

public boolean isSatisfiedBy(BaseDescription supplier)
Description copied from interface: VersionConstraint
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

Specified by:
isSatisfiedBy in interface VersionConstraint
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

hasMandatoryAttributes

protected boolean hasMandatoryAttributes(String[] mandatory)

toString

public String toString()
Overrides:
toString in class Object

getInternalDirectives

protected Map<String,String> getInternalDirectives()

getInteralAttributes

protected Map<String,Object> getInteralAttributes()

getInternalNameSpace

protected String getInternalNameSpace()

getName

public String getName()
Description copied from interface: VersionConstraint
Returns this constraint's name.

Specified by:
getName in interface VersionConstraint
Returns:
this constraint's name

getVersionRange

public VersionRange getVersionRange()
Description copied from interface: VersionConstraint
Returns the version range for this constraint.

Specified by:
getVersionRange in interface VersionConstraint
Returns:
the version range for this constraint, or null

getBundle

public BundleDescription getBundle()
Description copied from interface: VersionConstraint
Returns the bundle that declares this constraint.

Specified by:
getBundle in interface VersionConstraint
Returns:
a bundle description

isResolved

public boolean isResolved()
Description copied from interface: VersionConstraint
Returns whether this constraint is resolved. A resolved constraint is guaranteed to have its supplier defined.

Specified by:
isResolved in interface VersionConstraint
Returns:
true if this bundle is resolved, false otherwise

getSupplier

public BaseDescription getSupplier()
Description copied from interface: VersionConstraint
Returns the supplier that satisfies this constraint, if it is resolved.

Specified by:
getSupplier in interface VersionConstraint
Returns:
a supplier, or null
See Also:
VersionConstraint.isResolved()

setName

protected void setName(String name)

setVersionRange

protected void setVersionRange(VersionRange versionRange)

setBundle

protected void setBundle(BundleDescription bundle)

setSupplier

protected void setSupplier(BaseDescription supplier)

getRequirement

public BundleRequirement getRequirement()
Description copied from interface: VersionConstraint
Returns the requirement represented by this constraint. Some constraint types may not be able to represent a requirement. In such cases null is returned.

Specified by:
getRequirement in interface VersionConstraint
Returns:
the requirement represented by this constraint

getUserObject

public Object getUserObject()
Description copied from interface: VersionConstraint
Returns the user object associated to this constraint, or null if none exists.

Specified by:
getUserObject in interface VersionConstraint
Returns:
the user object associated to this constraint, or null

setUserObject

public void setUserObject(Object userObject)
Description copied from interface: VersionConstraint
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.

Specified by:
setUserObject in interface VersionConstraint
Parameters:
userObject - an arbitrary object provided by the user, or null


Copyright © 2007–2014 The Apache Software Foundation. All rights reserved.