public static Extension addTag(Extensible taggable, String tagName) { Extension tag = RapidmlFactory.eINSTANCE.createExtension(); tag.setName(tagName); taggable.getExtensions().add(tag); return tag; }
public static Example toExample(DataExample dataExample) { if (dataExample instanceof InlineDataExample) { InlineExample result = RapidmlFactory.eINSTANCE.createInlineExample(); result.setBody(((InlineDataExample) dataExample).getBody()); return result; } throw new IllegalStateException("External examples not implemented"); }
public LinkRelation getLinkRelation(String linkRelationName) { if (linkRelationRegistry.containsKey(linkRelationName)) { return linkRelationRegistry.get(linkRelationName); } LinkRelation linkRelation = RapidmlFactory.eINSTANCE.createLinkRelation(); linkRelation.setName(linkRelationName); linkRelationRegistry.put(linkRelationName, linkRelation); return linkRelation; } }
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; }
private void generateImplicitCollectionLinks(CollectionResource serviceDataResource, boolean hasRealizationRule) { ServiceDataResource targetResource = resourceFinder.findResource(serviceDataResource.getDataType(), true); boolean useReferenceLinkList = targetResource != null && serviceDataResource.isWithDefaultRealization() && !hasRealizationRule; serviceDataResource .setResourceRealizationKind(useReferenceLinkList ? CollectionRealizationEnum.REFERENCE_LINK_LIST : CollectionRealizationEnum.EMBEDDED_OBJECT_LIST); if (useReferenceLinkList) { ReferenceLink hyperlink = rapidmlFactory.createReferenceLink(); ReferenceTreatmentFactory.maybeSetReferenceRealization(hyperlink); hyperlink.getReferenceRealization().setTargetResource(targetResource); serviceDataResource.getReferenceTreatments().add(hyperlink); if (targetResource.getDefaultLinkDescriptor() != null) { hyperlink.getReferenceRealization().setProperties(targetResource.getDefaultLinkDescriptor()); } else { ObjectRealization linkDescriptor = rapidmlFactory.createObjectRealization(); // set container hyperlink.getReferenceRealization().setInlineObjectRealization(linkDescriptor); // Set by ReferenceTreatmentInlineLinkDescriptorProcessor for user-defined link descriptors hyperlink.getReferenceRealization().setProperties(linkDescriptor); } CollectionReferenceElement collectionReferenceElement = rapidmlFactory.createCollectionReferenceElement(); collectionReferenceElement.setCardinality(new int[] { 0, -1 }); collectionReferenceElement.setDataType(serviceDataResource.getDataType()); hyperlink.setReferenceElement(collectionReferenceElement); serviceDataResource.getReferenceElements().add(collectionReferenceElement); } }
if (inheritedProperty instanceof PrimitiveProperty) { PrimitiveProperty inheritedPrimitiveProperty = (PrimitiveProperty) inheritedProperty; PrimitiveProperty newPrimitiveProperty = RapidmlFactory.eINSTANCE.createPrimitiveProperty(); newPrimitiveProperty.setType(inheritedPrimitiveProperty.getType()); List<Constraint> constraintsToCopy = Lists.newArrayList(inheritedPrimitiveProperty.getAllConstraints()); } else { // ReferenceProperty ReferenceProperty inheritedReferenceProperty = (ReferenceProperty) inheritedProperty; ReferenceProperty newReferenceProperty = RapidmlFactory.eINSTANCE.createReferenceProperty(); newReferenceProperty.setType(inheritedReferenceProperty.getType()); newReferenceProperty.setContainer(inheritedReferenceProperty.isContainer()); Documentation documentation = RapidmlFactory.eINSTANCE.createDocumentation(); documentation.setText(inheritedProperty.getDocumentation().getText()); newProperty.setDocumentation(documentation);
public ReferenceTreatment buildReferenceTreatment(final ReferenceRealization referenceRealization) { ReferenceTreatment _xifexpression = null; ReferenceRealizationEnum _realizationType = referenceRealization.getRealizationType(); boolean _equals = Objects.equal(_realizationType, ReferenceRealizationEnum.LINK); if (_equals) { _xifexpression = this.rapidmlFactory.createReferenceLink(); } else { _xifexpression = this.rapidmlFactory.createReferenceEmbed(); } final ReferenceTreatment referenceTreatment = _xifexpression; referenceTreatment.setReferenceRealization(referenceRealization); if (((referenceTreatment instanceof ReferenceLink) && TagUtils.getTagWithName(referenceRealization, TagUtils.LINK_RELATION).isPresent())) { final String linkRel = TagUtils.getTagWithName(referenceRealization, TagUtils.LINK_RELATION).get().getValue(); ((ReferenceLink) referenceTreatment).setLinkRelation(this.linkRelationRegistry.getLinkRelation(linkRel)); } ReferenceTreatmentFactory.markWithDefaultRealization(referenceTreatment); return referenceTreatment; }
public ObjectRealization buildObjectRealization(final EffectiveRealization realization) { final ObjectRealization objectRealization = this.rapidmlFactory.createObjectRealization(); objectRealization.getAllIncludedProperties().addAll(realization.getProperties().values()); return objectRealization; }
public ConstrainedFeature(final Feature feature) { this.property = RapidmlFactoryImpl.eINSTANCE.createPropertyRealization(); this.property.setBaseProperty(feature); }
public static ReferenceLink createReferenceLink(ReferenceRealization referenceRealization) { ReferenceLink referenceLink = rapidmlFactory.createReferenceLink(); referenceLink.setReferenceRealization(referenceRealization); return referenceLink; }
public static ReferenceEmbed createReferenceEmbed(ReferenceRealization referenceRealization) { ReferenceEmbed referenceEmbed = rapidmlFactory.createReferenceEmbed(); referenceEmbed.setReferenceRealization(referenceRealization); return referenceEmbed; }
private void processPropertyOverride(Feature declaredProperty, Iterable<Feature> overriddenPropertyHierarchy) { if (declaredProperty instanceof PrimitiveProperty) { PrimitiveProperty declaredPrimitiveProperty = (PrimitiveProperty) declaredProperty; for (PrimitiveProperty overriddenProperty : Iterables.filter(overriddenPropertyHierarchy, PrimitiveProperty.class)) { EList<Constraint> constraintsToCopy = overriddenProperty.getAllConstraints(); for (Constraint next : constraintsToCopy) { Constraint newConstraint = EcoreUtil.copy(next); declaredPrimitiveProperty.getAllConstraints().add(newConstraint); } } } if (declaredProperty.getDocumentation() == null) { for (Feature next : overriddenPropertyHierarchy) { if (next.getDocumentation() != null) { Documentation documentation = RapidmlFactory.eINSTANCE.createDocumentation(); documentation.setText(next.getDocumentation().getText()); declaredProperty.setDocumentation(documentation); } } } if (declaredProperty.getCardinality() == null) { for (Feature next : overriddenPropertyHierarchy) { if (next.getCardinality() != null) { declaredProperty.setCardinality(next.getCardinality()); } } } }
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; }
/** * @generated NOT */ public ObjectRealization getProperties() { if (getEffectiveRealization() != null) { ObjectRealization result = getEffectiveRealization().getPropertiesAsObjectRealization(); if (result != getPropertiesGen()) { setInlineObjectRealization(result); setProperties(result); } } if (getPropertiesGen() != null) { return getPropertiesGen(); } if (getInlineObjectRealization() != null) { setProperties(getInlineObjectRealization()); } else { ObjectRealization propertyList = RapidmlFactory.eINSTANCE.createObjectRealization(); TagUtils.addTag(propertyList, TagUtils.GENERATED); setInlineObjectRealization(propertyList); setProperties(propertyList); } return getPropertiesGen(); }
} else { PropertyRealization includedProperty = com.reprezen.rapidml.RapidmlFactory.eINSTANCE .createPropertyRealization(); includedProperty.setBaseProperty(feature); allIncludedProperties.add(includedProperty);