package org.osgi.service.indexer;
import java.util.Collections;
import java.util.Map;
/**
* A capability
*/
public final class Capability {
/** the namespace */
private final String namespace;
/** the attributes */
private final Map<String,Object> attributes;
/** the directives */
private final Map<String,String> directives;
/**
* Constructor
*
* @param namespace the namespace
* @param attributes the attributes
* @param directives the directives
*/
Capability(String namespace, Map<String,Object> attributes, Map<String,String> directives) {
this.namespace = namespace;
this.attributes = attributes;
this.directives = directives;
}
/**
* @return the namespace
*/
public String getNamespace() {
return namespace;
}
/**
* @return the attributes
*/
public Map<String,Object> getAttributes() {
return Collections.unmodifiableMap(attributes);
}
/**
* @return the directives
*/
public Map<String,String> getDirectives() {
return Collections.unmodifiableMap(directives);
}
@Override
public String toString() {
StringBuilder builder = new StringBuilder();
builder.append("Capability [namespace=")
.append(namespace)
.append(", attributes=")
.append(attributes)
.append(", directives=")
.append(directives)
.append("]");
return builder.toString();
}
}