public static ReferenceTreatment maybeSetReferenceRealization(ReferenceTreatment treatment) { if (treatment.getReferenceRealization() == null) { ReferenceRealization referenceRealization = rapidmlFactory.createReferenceRealization(); referenceRealization.setRealizationType(treatment instanceof ReferenceLink ? ReferenceRealizationEnum.LINK : ReferenceRealizationEnum.EMBED); treatment.setOwnedReferenceRealization(referenceRealization); } return treatment; }
public static ReferenceRealization createReferenceEmbed(ResourceAPI context, ReferenceTreatmentDescriptor reference) { ReferenceRealization referenceEmbed = rapidmlFactory.createReferenceRealization(); referenceEmbed.setRealizationType(ReferenceRealizationEnum.EMBED); referenceEmbed.setDataType(reference.getTargetDataType()); ObjectRealization propertyList = rapidmlFactory.createObjectRealization(); referenceEmbed.setInlineObjectRealization(propertyList); return referenceEmbed; }
public ReferenceRealization buildReferenceRealization(final EffectiveRealization realization) { final ReferenceRealization referenceRealization = this.rapidmlFactory.createReferenceRealization(); referenceRealization.setRealizationType(ReferenceRealizationEnum.EMBED); referenceRealization.setEffectiveRealization(realization); referenceRealization.setDataType(realization.getType()); boolean _isEmpty = realization.getLinks().isEmpty(); boolean _not = (!_isEmpty); if (_not) { referenceRealization.setRealizationType(ReferenceRealizationEnum.LINK); final Map.Entry<String, ServiceDataResource> linkInfo = ((Map.Entry<String, ServiceDataResource>[])Conversions.unwrapArray(realization.getLinks().entrySet(), Map.Entry.class))[0]; referenceRealization.setTargetResource(linkInfo.getValue()); final Extension tag = TagUtils.addTag(referenceRealization, TagUtils.LINK_RELATION); tag.setValue(linkInfo.getKey()); } return referenceRealization; } }
private ReferenceRealization createDefaultReferenceLink(ResourceAPI context, ReferenceTreatmentDescriptor reference) { ReferenceRealization referenceLink = rapidmlFactory.createReferenceRealization(); referenceLink.setRealizationType(ReferenceRealizationEnum.LINK); referenceLink.setDataType(reference.getTargetDataType()); ObjectRealization objectRealization = getLinkDescriptor(reference); if (objectRealization == null) { objectRealization = rapidmlFactory.createObjectRealization(); referenceLink.setInlineObjectRealization(objectRealization); } referenceLink.setTargetResource(getDefaultResource(reference)); // TODO move linkRelation from ReferenceTreatment to ReferenceRealization and set it here referenceLink.setProperties(objectRealization); return referenceLink; }