/** * checks ReferenceTreatment for treating the given referenceProperty * * @param referenceProperty * @return the predicate */ public static java.util.function.Predicate<ReferenceTreatment> treatsReferenceProperty( ReferenceProperty referenceProperty) { return input -> Objects.equals(referenceProperty, input.getReferenceElement()); }
protected static boolean semanticallyEqual(ReferenceTreatment link1, ReferenceTreatment link2) { return Objects.equals(link1, link2) || java.util.Objects.equals(link1.getReferenceElement(), link2.getReferenceElement()); }
/** * Checks if the referenceTreatment type is not null. * * @return the predicate */ public static java.util.function.Predicate<ReferenceTreatment> hasDeclaredType() { return input -> { if (null != input) { ReferenceElement reference = input.getReferenceElement(); return reference != null && null != reference.getDataType(); } return false; }; }
private String getReferenceTreatmentName(final ReferenceTreatment aReferenceLink) { return aReferenceLink.getReferenceElement().getName(); }
/** * Remove ReferenceTreatments without a declared type from the list */ private void removeInvalidTreatments(EList<ReferenceTreatment> treatments) { ArrayList<ReferenceTreatment> invalidTreatments = Lists.newArrayList(treatments.stream() // .filter(el -> false == el.getReferenceElement() instanceof CollectionReferenceElement) // don't process collection resource links .filter(hasDeclaredType().negate()) // .collect(toList())); if (!invalidTreatments.isEmpty()) { treatments.removeAll(invalidTreatments); } }
private void maybeConvertReferenceLinkToEmbed(ReferenceEmbed container, ReferenceTreatment nestedTreatment) { ReferenceElement property = nestedTreatment.getReferenceElement(); if (property != null) { if (nestedTreatment instanceof ReferenceLink) { normalizeUserDefinedReferenceLink((ReferenceLink) nestedTreatment); } else { // ReferenceEmbed normalizeUserDefinedReferenceEmbed((ReferenceEmbed) nestedTreatment); } } }
@Check public void checkReferenceTreatmentUniqueness(ReferenceTreatment referenceTreatment) { List<ReferenceTreatment> siblingReferenceTreatments = getSiblingsOfType(referenceTreatment, ReferenceTreatment.class); Collection<ReferenceTreatment> siblindsWithTheSameReference = siblingReferenceTreatments.stream()// .filter(hasTheSameReferencePath(referenceTreatment))// .collect(Collectors.toList()); if (!siblindsWithTheSameReference.isEmpty()) { String message = String.format( "A single reference property may have at most one reference treatment, either a reference embed or a reference link, but not both: '%s'", getLabel(referenceTreatment.getReferenceElement())); error(message, RapidmlPackage.Literals.REFERENCE_TREATMENT__REFERENCE_ELEMENT); } }
public boolean hasReferenceTreatment(final RealizationContainer resource, final Feature feature) { final Function1<ReferenceTreatment, ReferenceElement> _function = (ReferenceTreatment it) -> { return it.getReferenceElement(); }; final Function1<ReferenceElement, Boolean> _function_1 = (ReferenceElement f) -> { return Boolean.valueOf((f == feature)); }; return IterableExtensions.<ReferenceElement>exists(ListExtensions.<ReferenceTreatment, ReferenceElement>map(resource.getReferenceTreatments(), _function), _function_1); }
public boolean hasReferenceTreatment(final TypedMessage resource, final Feature feature) { final Function1<ReferenceTreatment, ReferenceElement> _function = (ReferenceTreatment it) -> { return it.getReferenceElement(); }; final Function1<ReferenceElement, Boolean> _function_1 = (ReferenceElement f) -> { return Boolean.valueOf((f == feature)); }; return IterableExtensions.<ReferenceElement>exists(ListExtensions.<ReferenceTreatment, ReferenceElement>map(resource.getReferenceTreatments(), _function), _function_1); }
private boolean hasReferenceTreatment(final TypedMessage message, final Feature feature) { final Function1<ReferenceTreatment, ReferenceElement> _function = (ReferenceTreatment it) -> { return it.getReferenceElement(); }; final Function1<ReferenceElement, Boolean> _function_1 = (ReferenceElement f) -> { return Boolean.valueOf((f == feature)); }; return IterableExtensions.<ReferenceElement>exists(ListExtensions.<ReferenceTreatment, ReferenceElement>map(message.getReferenceTreatments(), _function), _function_1); }
private boolean hasReferenceTreatment(final ServiceDataResource resource, final Feature feature) { final Function1<ReferenceTreatment, ReferenceElement> _function = (ReferenceTreatment it) -> { return it.getReferenceElement(); }; final Function1<ReferenceElement, Boolean> _function_1 = (ReferenceElement f) -> { return Boolean.valueOf((f == feature)); }; return IterableExtensions.<ReferenceElement>exists(ListExtensions.<ReferenceTreatment, ReferenceElement>map(resource.getReferenceTreatments(), _function), _function_1); }
private boolean isMultivalued(final ReferenceTreatment treatment) { boolean _xblockexpression = false; { int _maxOccurs = treatment.getReferenceElement().getMaxOccurs(); final boolean propIsMulti = (_maxOccurs < 0); boolean _switchResult = false; boolean _matched = false; if (treatment instanceof ReferenceLink) { _matched=true; _switchResult = (propIsMulti && (((ReferenceLink)treatment).getTargetResource() instanceof ObjectResource)); } if (!_matched) { if (treatment instanceof ReferenceEmbed) { _matched=true; _switchResult = propIsMulti; } } _xblockexpression = _switchResult; } return _xblockexpression; }
/** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @NOT-generated */ @Override public Structure getDataType() { Structure result = super.getDataType(); if (result != null) { return result; } if (eContainer() instanceof ReferenceTreatment && ((ReferenceTreatment)eContainer()).getReferenceElement() != null) { return ((ReferenceTreatment)eContainer()).getReferenceElement().getDataType(); } return null; }
public static Structure getContextDataType(EObject context) { if (context instanceof ServiceDataResource) { return ((ServiceDataResource) context).getDataType(); } if (context instanceof TypedMessage) { return ((TypedMessage) context).getActualType(); } if (context instanceof ReferenceTreatment) { return ((ReferenceTreatment) context).getReferenceElement().getDataType(); } // not supported case return null; }
private List<PropertyRealization> getEnrichmentProperties(final TypedResponse response) { ResourceDefinition _resourceType = response.getResourceType(); final ServiceDataResource resource = ((ServiceDataResource) _resourceType); ResourceDefinition _resourceType_1 = response.getResourceType(); boolean _tripleNotEquals = (_resourceType_1 != null); if (_tripleNotEquals) { final Function1<ReferenceTreatment, Boolean> _function = (ReferenceTreatment it) -> { return Boolean.valueOf(((it instanceof ReferenceLink) && Objects.equal(it.getReferenceElement().getName(), "ObjectResourceLink"))); }; final ReferenceTreatment orLink = IterableExtensions.<ReferenceTreatment>head(IterableExtensions.<ReferenceTreatment>filter(resource.getAllReferenceTreatments(), _function)); if ((orLink != null)) { return Collections.<PropertyRealization>unmodifiableList(CollectionLiterals.<PropertyRealization>newArrayList()); } else { ResourceDefinition _resourceType_2 = response.getResourceType(); return ((ServiceDataResource) _resourceType_2).getProperties().getAllIncludedProperties(); } } else { return response.getProperties().getAllIncludedProperties(); } }
IScope scope_ReferenceTreatment_referenceElement(ReferenceTreatment referenceTreatment, EReference eRef) { EObject econtainer = referenceTreatment.eContainer(); final Structure contextDataType; if (econtainer instanceof ReferenceEmbed) { contextDataType = ((ReferenceEmbed) econtainer).getReferenceElement().getDataType(); } else if (econtainer instanceof ReferenceRealization) { contextDataType = ((ReferenceTreatment) ((ReferenceRealization) econtainer).eContainer()) .getReferenceElement().getDataType(); } else if (econtainer instanceof TypedMessage) { contextDataType = ((TypedMessage) econtainer).getActualType(); } else { contextDataType = ((RealizationContainer) econtainer).getDataType(); } Iterable<ReferenceProperty> result = Iterables.filter(getAllFeatures(contextDataType), ReferenceProperty.class); if (referenceTreatment instanceof ReferenceLink) { // leave only containment references, containment reference might // not be supported in WADL/XSD generator // result = filter(result, isContainmentReferenceProperty()); } return Scopes.scopeFor(result); }
/** * <!-- begin-user-doc --> <!-- end-user-doc --> * @generated */ public com.reprezen.rapidml.Structure getDataType() { if (eContainer() instanceof ServiceDataResource) { return ((ServiceDataResource) eContainer()).getDataType(); } if (eContainer() instanceof TypedMessage) { return ((TypedMessage) eContainer()).getActualType(); } if (eContainer() instanceof ReferenceRealization) { ReferenceRealization realization = (ReferenceRealization) eContainer(); ReferenceTreatment treatment = realization != null ? (ReferenceTreatment) realization.eContainer() : null; return treatment != null ? treatment.getReferenceElement().getDataType() : null; } if (eContainer() instanceof ReferenceTreatment) { return ((ReferenceTreatment) eContainer()).getReferenceElement().getDataType(); } return null; }
try { StringConcatenation _builder = new StringConcatenation(); String _name = treatment.getReferenceElement().getName(); _builder.append(_name); _builder.append(": {"); _builder.append("\t"); _builder.append("type: \'"); String _name_1 = treatment.getReferenceElement().getDataType().getName(); _builder.append(_name_1, "\t"); _builder.append("\',");