@Override public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof TArtifactType)) return false; if (!super.equals(o)) return false; TArtifactType that = (TArtifactType) o; return Objects.equals(getMimeType(), that.getMimeType()) && Objects.equals(getFileExt(), that.getFileExt()); }
public TArtifactType build() { return new TArtifactType(this); } }
public TArtifactType(Builder builder) { super(builder); this.setMimeType(builder.mimeType); this.setFileExt(builder.fileExt); }
@Override public Result visit(TServiceTemplate node, Parameter parameter) { Result result; if (parameter.reference.getNamespaceURI().equals(this.namespace) && "TArtifactType".equals(parameter.entityClass) && node.getArtifactTypes().containsKey(parameter.reference.getLocalPart())) { return node.getArtifactTypes().get(parameter.reference.getLocalPart()).accept(this, parameter.copy()); } for (TMapImportDefinition map : node.getImports()) { for (Map.Entry<String, TImportDefinition> entry : map.entrySet()) { result = entry.getValue().accept(this, parameter); if (result != null) { return result; } } } return null; }
@Override public Result visit(TArtifactType node, Parameter parameter) { this.setArtifactTypes(namespace, parameter.getKey()); setNormativeTypes(parameter.getKey(), node.getMetadata(), artifactTypes); super.visit(node, parameter); return null; }
.filter(entry -> Objects.nonNull(entry) && Objects.nonNull(entry.getValue())) .forEach(entry -> entry.getValue().accept(this, parameter.copy().addContext("artifact_types", entry.getKey())) ); node.getCapabilityTypes().entrySet().stream()
@Override public String toString() { return "TArtifactType{" + "mimeType='" + getMimeType() + '\'' + ", fileExt=" + getFileExt() + "} " + super.toString(); }
@Override public int hashCode() { return Objects.hash(super.hashCode(), getMimeType(), getFileExt()); }
/** * Converts TOSCA YAML ArtifactTypes to TOSCA XML ArtifactTypes. Both objects have a super type EntityType. * Additional elements mime_type and file_ext from TOSCA YAML are moved to tags in TOSCA XML * * @param node the YAML ArtifactType * @return TOSCA XML ArtifactType */ private TArtifactType convert(org.eclipse.winery.model.tosca.yaml.TArtifactType node, String id) { if (node == null) return null; TArtifactType.Builder builder = new TArtifactType.Builder(id); convert(node, builder); if (node.getFileExt() != null) { builder.addTags("file_ext", "[" + node.getFileExt().stream().map(Object::toString) .collect(Collectors.joining(",")) + "]"); } if (node.getMimeType() != null) { builder.addTags("mime_type", node.getMimeType()); } return builder.build(); }
public Printer visit(TArtifactType node, Parameter parameter) { return new Printer(parameter.getIndent()) .printKeyValue("mime_type", node.getMimeType()) .printKeyValue("file_ext", node.getFileExt()); }