@Override public EdmType getType() { return function.getReturnType().getType(); }
@Override public EdmType getType() { return function.getReturnType().getType(); }
@Override public EdmType getType() { return action.getReturnType() == null ? null : action.getReturnType().getType(); }
@Override public EdmType getType() { return action.getReturnType() == null ? null : action.getReturnType().getType(); }
public boolean isReturnTypePrimitive() { return getReturnType().getType().getKind() == EdmTypeKind.PRIMITIVE; }
public boolean isReturnTypeComplex() { return getReturnType().getType().getKind() == EdmTypeKind.COMPLEX; }
public boolean isReturnTypePrimitive() { return getReturnType().getType().getKind() == EdmTypeKind.PRIMITIVE; }
public boolean isReturnTypeComplex() { return getReturnType().getType().getKind() == EdmTypeKind.COMPLEX; }
@SuppressWarnings("unchecked") private <RES extends ClientInvokeResult> Class<RES> getResultReference(final EdmReturnType returnType) { Class<RES> result; if (returnType == null) { result = (Class<RES>) ClientNoContent.class; } else { if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntitySet.class; } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntity.class; } else { result = (Class<RES>) ClientProperty.class; } } return result; }
@SuppressWarnings("unchecked") protected <RES extends ClientInvokeResult> Class<RES> getResultReference(final EdmReturnType returnType) { Class<RES> result; if (returnType == null) { result = (Class<RES>) ClientNoContent.class; } else { if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntitySet.class; } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntity.class; } else { result = (Class<RES>) ClientProperty.class; } } return result; } }
@SuppressWarnings("unchecked") private <RES extends ClientInvokeResult> Class<RES> getResultReference(final EdmReturnType returnType) { Class<RES> result; if (returnType == null) { result = (Class<RES>) ClientNoContent.class; } else { if (returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntitySet.class; } else if (!returnType.isCollection() && returnType.getType().getKind() == EdmTypeKind.ENTITY) { result = (Class<RES>) ClientEntity.class; } else { result = (Class<RES>) ClientProperty.class; } } return result; }
private void appendOperationReturnType(final XMLStreamWriter writer, final EdmOperation operation) throws XMLStreamException { EdmReturnType returnType = operation.getReturnType(); if (returnType != null) { writer.writeEmptyElement(XML_RETURN_TYPE); String returnTypeFqnString; if (EdmTypeKind.PRIMITIVE.equals(returnType.getType().getKind())) { returnTypeFqnString = getFullQualifiedName(returnType.getType(), returnType.isCollection()); } else { returnTypeFqnString = getAliasedFullQualifiedName(returnType.getType(), returnType.isCollection()); } writer.writeAttribute(XML_TYPE, returnTypeFqnString); appendReturnTypeFacets(writer, returnType); } }
private void appendOperationReturnType(final XMLStreamWriter writer, final EdmOperation operation) throws XMLStreamException { EdmReturnType returnType = operation.getReturnType(); if (returnType != null) { writer.writeEmptyElement(XML_RETURN_TYPE); String returnTypeFqnString; if (EdmTypeKind.PRIMITIVE.equals(returnType.getType().getKind())) { returnTypeFqnString = getFullQualifiedName(returnType.getType(), returnType.isCollection()); } else { returnTypeFqnString = getAliasedFullQualifiedName(returnType.getType(), returnType.isCollection()); } writer.writeAttribute(XML_TYPE, returnTypeFqnString); appendReturnTypeFacets(writer, returnType); } }
private EdmTypeKind determineReturnEdmTypeKind(final UriResourcePartTyped operation) { if (operation instanceof UriResourceFunction) return ((UriResourceFunction) operation).getFunction().getReturnType().getType().getKind(); else return ((UriResourceAction) operation).getAction().getReturnType().getType().getKind(); }
@Override public void setReturnValue(Object returnValue) throws SQLException { try { EdmReturnType returnType = this.procedureReturn.getReturnType(); this.returnValue = EntityCollectionResponse.buildPropery("return", //$NON-NLS-1$ (SingletonPrimitiveType) returnType.getType(), returnType.getPrecision(), returnType.getScale(), returnType.isCollection(), returnValue); } catch (TeiidProcessingException e) { throw new SQLException(e); } catch (IOException e) { throw new SQLException(e); } }
@Override public void serialize(ODataResponse response, TeiidODataJsonSerializer serializer, ServiceMetadata metadata, ContextURL contextURL, URI next) throws SerializerException { response.setContent(serializer.complexCollection(metadata, (EdmComplexType)this.procedureReturn.getReturnType().getType(), (Property)getResult(), contextURL, next) .getContent()); } }
@Override public Object getResult() { if (this.procedureReturn.hasResultSet()) { String type = this.procedureReturn.getReturnType().getType().getFullQualifiedName().getFullQualifiedNameAsString(); return createComplexCollection("result", type, this.complexValues); } return this.returnValue; }
@Override protected void addProjectedColumn(final String columnName, final Expression expr) { EdmReturnType returnType = procedureReturn.getReturnType(); EdmComplexType complexType = (EdmComplexType)returnType.getType(); EdmPropertyImpl edmProperty = (EdmPropertyImpl)complexType.getProperty(columnName); addProjectedColumn(expr, edmProperty.getType(), edmProperty, edmProperty.isCollection()); }
@Override public void retrieveData(final ODataRequest request, final ODataResponse response, final ContentType responseFormat) throws ODataApplicationException, ODataLibraryException { Object result = null; final UriResourceFunction uriResourceFunction = (UriResourceFunction) uriInfo.getUriResourceParts().get(uriInfo.getUriResourceParts().size() - 1); final JPAFunction jpaFunction = sd.getFunction(uriResourceFunction.getFunction()); if (jpaFunction.getFunctionType() == EdmFunctionType.JavaClass) { result = processJavaFunction(uriResourceFunction, (JPAJavaFunction) jpaFunction, em); } else if (jpaFunction.getFunctionType() == EdmFunctionType.UserDefinedFunction) result = processJavaUDF(uriInfo.getUriResourceParts(), (JPADataBaseFunction) jpaFunction); final EdmType returnType = uriResourceFunction.getFunction().getReturnType().getType(); final Annotatable annotatable = convertResult(result, returnType, jpaFunction); serializeResult(returnType, response, responseFormat, annotatable); }
@Override protected void addAllColumns(boolean onlyPK) { for (final Column column : procedure.getResultSet().getColumns()) { if (column.isSelectable()) { EdmReturnType returnType = procedureReturn.getReturnType(); EdmComplexType complexType = (EdmComplexType)returnType.getType(); EdmPropertyImpl edmProperty = (EdmPropertyImpl)complexType.getProperty(column.getName()); addProjectedColumn(new ElementSymbol(column.getName(), getGroupSymbol()), edmProperty.getType(), edmProperty, edmProperty.isCollection()); } } }