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(); } }