use of org.eclipse.winery.model.ids.definitions.ServiceTemplateId in project winery by eclipse.
the class ServiceTemplatesResource method getXaaSPackageTemplates.
private Collection<ServiceTemplateId> getXaaSPackageTemplates() {
Collection<AbstractComponentInstanceResource> templates = this.getAll();
Collection<ServiceTemplateId> xaasPackages = new ArrayList<>();
for (AbstractComponentInstanceResource resource : templates) {
if (resource instanceof ServiceTemplateResource) {
ServiceTemplateResource stRes = (ServiceTemplateResource) resource;
List<TTag> tags = stRes.getServiceTemplate().getTags();
if (tags == null) {
continue;
}
int check = 0;
for (TTag tag : tags) {
switch(tag.getName()) {
case "xaasPackageNode":
case "xaasPackageArtifactType":
case "xaasPackageDeploymentArtifact":
check++;
break;
default:
break;
}
}
if (check == 3) {
xaasPackages.add((ServiceTemplateId) stRes.getId());
}
}
}
return xaasPackages;
}
use of org.eclipse.winery.model.ids.definitions.ServiceTemplateId in project winery by eclipse.
the class VersionSupport method getDefinitionInTheGivenVersion.
public static DefinitionsChildId getDefinitionInTheGivenVersion(DefinitionsChildId childId, WineryVersion otherVersion) {
if (childId.getVersion().compareTo(otherVersion) == 0) {
return childId;
}
String localPart = childId.getNameWithoutVersion() + (otherVersion.toString().length() > 0 ? WineryVersion.WINERY_NAME_FROM_VERSION_SEPARATOR + otherVersion.toString() : "");
QName qName = new QName(childId.getNamespace().getDecoded(), localPart);
if (childId instanceof RelationshipTypeImplementationId) {
return new RelationshipTypeImplementationId(qName);
} else if (childId instanceof NodeTypeImplementationId) {
return new NodeTypeImplementationId(qName);
} else if (childId instanceof RequirementTypeId) {
return new RequirementTypeId(qName);
} else if (childId instanceof NodeTypeId) {
return new NodeTypeId(qName);
} else if (childId instanceof RelationshipTypeId) {
return new RelationshipTypeId(qName);
} else if (childId instanceof CapabilityTypeId) {
return new CapabilityTypeId(qName);
} else if (childId instanceof ArtifactTypeId) {
return new ArtifactTypeId(qName);
} else if (childId instanceof PolicyTypeId) {
return new PolicyTypeId(qName);
} else if (childId instanceof PolicyTemplateId) {
return new PolicyTemplateId(qName);
} else if (childId instanceof ServiceTemplateId) {
return new ServiceTemplateId(qName);
} else if (childId instanceof ArtifactTemplateId) {
return new ArtifactTemplateId(qName);
} else {
throw new IllegalStateException("Unhandled id branch. Could happen for XSDImportId");
}
}
use of org.eclipse.winery.model.ids.definitions.ServiceTemplateId in project winery by eclipse.
the class VersionSupportTest method getNewIdName.
@Test
public void getNewIdName() {
String id = "myId_w1-wip56";
String appendix = "test";
String expectedId = "myId_w1-wip56-" + appendix + "-w1-wip1";
ServiceTemplateId serviceTemplateId = new ServiceTemplateId("https://ex.org/tosca/sts", id, false);
assertEquals(expectedId, VersionSupport.getNewComponentVersionId(serviceTemplateId, appendix));
}
use of org.eclipse.winery.model.ids.definitions.ServiceTemplateId in project winery by eclipse.
the class PlanResource method getId.
/**
* Determines the id of the current resource
*/
private PlanId getId() {
ServiceTemplateId sId = (ServiceTemplateId) this.getServiceTemplateResource().getId();
PlansId psId = new PlansId(sId);
return new PlanId(psId, new XmlId(this.o.getId(), false));
}
use of org.eclipse.winery.model.ids.definitions.ServiceTemplateId in project winery by eclipse.
the class TopologyTemplateResource method mergeWithOtherTopologyTemplate.
/**
* Only works for relationship templates connecting node templates; and not capabilities
*/
@Path("merge/")
@Consumes(MediaType.TEXT_PLAIN)
@POST
public Response mergeWithOtherTopologyTemplate(String strOtherServiceTemplateQName) {
QName otherServiceTemplateQName = QName.valueOf(strOtherServiceTemplateQName);
ServiceTemplateId otherServiceTemplateId = new ServiceTemplateId(otherServiceTemplateQName);
ServiceTemplateId thisServiceTemplateId = (ServiceTemplateId) this.parent.getId();
try {
BackendUtils.mergeTopologyTemplateAinTopologyTemplateB(otherServiceTemplateId, thisServiceTemplateId, RepositoryFactory.getRepository());
} catch (IOException e) {
LOGGER.debug("Could not merge", e);
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e).build();
}
return Response.noContent().build();
}
Aggregations