org.apache.felix.bundlerepository

## Interface Requirement

All Known Implementing Classes:
  RequirementImpl

    public interface Requirement

A named requirement specifies the need for certain capabilities with the same name. A requirement is said to be satisfied by a capability if and only if:

- they have the same nsame
- the filter matches the capability properties

Version:
  $Revision: 1.4 $

### Method Summary

Methods
`java.util.Map<java.lang.String,java.lang.Object>` `getAttributes()` Return a map of attributes.
`java.lang.String` `getComment()`
`java.util.Map<java.lang.String,java.lang.String>` `getDirectives()` Return the map of directives for this requirement.
`java.lang.String` `getFilter()` Return the filter.
`java.lang.String` `getName()` Return the name of the requirement.
`boolean` `isExtend()`
`boolean` `isMultiple()`
`boolean` `isOptional()`
`boolean` `isSatisfied(Capability capability)` Check if the given capability satisfied this requirement.

### Method Detail

#### getAttributes

    java.util.Map<java.lang.String,java.lang.Object> getAttributes()

Return a map of attributes. Requirements can have attributes, but these are not used for matching. They are for informational purposes only.

Returns:
  The map of attributes.

#### getDirectives

    java.util.Map<java.lang.String,java.lang.String> getDirectives()

Return the map of directives for this requirement. This requirements map does *not* contain requirements that are modeled via direct APIs on this interface, such as the filter, cardinality and resolution.

Returns:

#### getName

    java.lang.String getName()

Return the name of the requirement.

#### getFilter

    java.lang.String getFilter()

Return the filter.

#### isMultiple

    boolean isMultiple()

#### isOptional

    boolean isOptional()

#### isExtend

    boolean isExtend()

#### getComment

    java.lang.String getComment()

#### isSatisfied

    boolean isSatisfied(Capability capability)

Check if the given capability satisfied this requirement.

Parameters:
  `capability` - the capability to check
Returns:
  `true` is the capability satisfies this requirement, `false` otherwise