public static OpenType<?>[] getItemTypes() throws OpenDataException { ArrayType<CompositeType> attsType = AttributesType.getArrayType(); ArrayType<CompositeType> dirsType = DirectivesType.getArrayType(); return new OpenType<?>[] { SimpleType.STRING, attsType, dirsType }; } }
public CompositeData getCompositeData(Requirement req) throws OpenDataException { String namespace = req.getNamespace(); CompositeData[] attsData = new AttributesType().getCompositeData(req.getAttributes()); CompositeData[] dirsData = new DirectivesType().getCompositeData(req.getDirectives()); Object[] itemValues = new Object[] { namespace, attsData, dirsData }; return new CompositeDataSupport(compositeType, getItemNames(), itemValues); }
public CompositeData getCompositeData(Capability cap) throws OpenDataException { String namespace = cap.getNamespace(); CompositeData[] attsData = new AttributesType().getCompositeData(cap.getAttributes()); CompositeData[] dirsData = new DirectivesType().getCompositeData(cap.getDirectives()); Object[] itemValues = new Object[] { namespace, attsData, dirsData }; return new CompositeDataSupport(compositeType, getItemNames(), itemValues); }
public CompositeData getCompositeData(Resource res) throws OpenDataException { String identity = res.getIdentity().toString(); List<Capability> caps = res.getCapabilities(null); List<Requirement> reqs = res.getRequirements(null); List<Object> items = new ArrayList<Object>(); items.add(identity); items.add(new CapabilitiesType().getCompositeData(caps)); items.add(new RequirementsType().getCompositeData(reqs)); Object[] itemValues = items.toArray(new Object[items.size()]); return new CompositeDataSupport(compositeType, getItemNames(), itemValues); }
@Override public ResourceBuilder fromResource(Resource res) { for (Capability cap : res.getCapabilities(null)) { addCapability(cap.getNamespace(), cap.getAttributes(), cap.getDirectives()); } for (Requirement req : res.getRequirements(null)) { addRequirement(req.getNamespace(), req.getAttributes(), req.getDirectives()); } return this; }
public ManifestBuilder addIdentityCapability(ResourceIdentity identity) { return addIdentityCapability(identity.getSymbolicName(), identity.getVersion()); }
public IdentityRequirementBuilder(ResourceIdentity identity) { this(identity.getSymbolicName(), identity.getVersion().toString()); }
private String getIdentityHeader(ResourceIdentity identity) { String symbolicName = identity.getSymbolicName(); Version version = identity.getVersion(); return symbolicName + ";version=" + version; }
@Override public Requirement getRequirement() { Resource resource = resbuilder.getResource(); String namespace = requirement.getNamespace(); return resource.getRequirements(namespace).get(0); }
@Override public String toString() { return "ResourceSpace[" + primary.getIdentity() + "]"; } }
@Override public ResourceIdentity getIdentity() { if (identity == null) { Capability icap = getIdentityCapability(); String symbolicName = (String) icap.getAttribute(IdentityNamespace.IDENTITY_NAMESPACE); Version version = (Version) icap.getAttribute(IdentityNamespace.CAPABILITY_VERSION_ATTRIBUTE); identity = ResourceIdentity.create(symbolicName, version); } return identity; }
public ManifestBuilder addIdentityCapability(String symbolicName, String version) { return addIdentityCapability(symbolicName, Version.parseVersion(version), null, null); }
public ManifestBuilder addIdentityRequirement(String symbolicName, String version) { return addIdentityRequirement(symbolicName, new VersionRange(version), null, null); }
public static VersionRange getVersionRange(Requirement req, String attr) { Object value = req.getAttribute(attr); return (value instanceof String) ? new VersionRange((String) value) : (VersionRange) value; }
@Override protected ResourceBuilder createResourceBuilder() { return new DefaultResourceBuilder(); } }
/** * A reference resource has a 'type' attribute with value 'reference' */ public static boolean isReference(Resource res) { Object attval = res.getIdentityCapability().getAttribute(IdentityNamespace.CAPABILITY_TYPE_ATTRIBUTE); return IdentityNamespace.TYPE_REFERENCE.equals(attval); }
public static ResourceIdentity create(String symbolicName, String version) { return new ResourceIdentity(symbolicName, version != null ? Version.parseVersion(version) : null); }
@Override protected AbstractCapability createCapability(AbstractResource resource, String namespace, Map<String, Object> attributes, Map<String, String> directives) { if (ContentNamespace.CONTENT_NAMESPACE.equals(namespace)) { return new DefaultContentCapability(resource, namespace, attributes, directives); } else { return new DefaultCapability(resource, namespace, attributes, directives); } }
@Override protected AbstractRequirement createRequirement(AbstractResource resource, String namespace, Map<String, Object> attributes, Map<String, String> directives) { return new DefaultRequirement(resource, namespace, attributes, directives); } }
public static OpenType<?>[] getItemTypes() throws OpenDataException { ArrayType<CompositeType> attsType = AttributesType.getArrayType(); ArrayType<CompositeType> dirsType = DirectivesType.getArrayType(); return new OpenType<?>[] { SimpleType.STRING, attsType, dirsType }; } }