public static Optional<ServiceDataResource> getContainingResourceDefinition(TypedMessage message) { Method method = (Method) message.eContainer(); if (method != null && method.getContainingResourceDefinition() instanceof ServiceDataResource) { return Optional.of((ServiceDataResource)method.getContainingResourceDefinition()); } return Optional.empty(); }
private Structure getContainingResourceDataType(final TypedMessage msg) { Structure _xifexpression = null; boolean _isUseParentTypeReference = msg.isUseParentTypeReference(); if (_isUseParentTypeReference) { EObject _eContainer = msg.eContainer(); _xifexpression = this.getResourceDataType(((Method) _eContainer).getContainingResourceDefinition()); } return _xifexpression; }
private boolean hasOverridedMediaTypes(final TypedMessage message) { boolean _isEmpty = message.getMediaTypes().isEmpty(); boolean _not = (!_isEmpty); if (_not) { EObject _eContainer = message.eContainer(); boolean _elementsEqual = IterableExtensions.elementsEqual(message.getMediaTypes(), ((Method) _eContainer).getContainingResourceDefinition().getMediaTypes()); return (!_elementsEqual); } return false; }
/** * @deprecated use {@link CommonServices#getRequestTypeName(TypedRequest)} or * {@link CommonServices#getResponseTypeName(TypedResponse)} instead * @param message typed message * @return generated type name for XSD generator that avoid name clashes */ @Deprecated public static String getMessageTypeName(TypedMessage message) { Method method = (Method) message.eContainer(); String methodName = method.getHttpMethod().getName().toLowerCase() + method.getContainingResourceDefinition().getName(); final Structure type = message.getActualType(); ImmutableList<TypedMessage> list = ImmutableList.copyOf(Iterators.filter( Iterators.filter(method.getContainingResourceDefinition().eAllContents(), TypedMessage.class), new Predicate<TypedMessage>() { @Override public boolean apply(TypedMessage input) { return input.getActualType() == type; } })); String baseName = Strings.toFirstUpper(methodName) + '_' + message.getActualType().getName(); if (list.size() > 1) { return baseName + '_' + (list.indexOf(message) + 1); } return baseName; }
public static ResourceDefinition getContainingResourceDefinition(SourceReference sourceReference) { Parameter containingParameter = sourceReference.getContainingParameter(); if (containingParameter instanceof URIParameter) { return (ResourceDefinition) ((URIParameter) containingParameter).getContainingURI().eContainer(); } if (containingParameter instanceof CollectionParameter) { return ((CollectionParameter) containingParameter).getContainingResourceDefinition(); } if (containingParameter instanceof MessageParameter) { MessageParameter messageParemeter = (MessageParameter) containingParameter; return ((Method) messageParemeter.getContainingMessage().eContainer()).getContainingResourceDefinition(); } // current metamodel doesn't support other kinds of containers return null; }
error(Messages.XtextDslJavaValidator_typedMessagePropertySetNotAllowed, message, feature); } else { ResourceDefinition resourceDefinition = ((Method) message.eContainer()) .getContainingResourceDefinition();