public Target(final String target, final EdmEntityContainer defaultContainer) { final String[] bindingTargetParts = target.split("/"); if (bindingTargetParts.length == 1) { entityContainer = defaultContainer.getFullQualifiedName(); targetName = bindingTargetParts[0]; } else { entityContainer = new FullQualifiedName(bindingTargetParts[0]); targetName = bindingTargetParts[1]; } }
public Target(final String target, final EdmEntityContainer defaultContainer) { final String[] bindingTargetParts = target.split("/"); if (bindingTargetParts.length == 1) { entityContainer = defaultContainer.getFullQualifiedName(); targetName = bindingTargetParts[0]; } else { entityContainer = new FullQualifiedName(bindingTargetParts[0]); targetName = bindingTargetParts[1]; } }
public void writeServiceDocument(final XMLStreamWriter writer) throws XMLStreamException { final String metadataUri = (serviceRoot == null ? "" : serviceRoot.endsWith("/") ? serviceRoot : (serviceRoot + "/")) + Constants.METADATA; writer.writeStartDocument(ODataSerializer.DEFAULT_CHARSET, "1.0"); writer.writeStartElement(APP, "service", NS_APP); writer.writeNamespace(ATOM, NS_ATOM); writer.writeNamespace(APP, NS_APP); writer.writeNamespace(METADATA, NS_METADATA); writer.writeAttribute(METADATA, NS_METADATA, Constants.CONTEXT, metadataUri); if (metadata != null && metadata.getServiceMetadataETagSupport() != null && metadata.getServiceMetadataETagSupport().getMetadataETag() != null) { writer.writeAttribute(METADATA, NS_METADATA, Constants.ATOM_ATTR_METADATAETAG, metadata.getServiceMetadataETagSupport().getMetadataETag()); } writer.writeStartElement(APP, "workspace", NS_APP); final EdmEntityContainer container = metadata.getEdm().getEntityContainer(); if (container != null) { writer.writeStartElement(ATOM, Constants.ATOM_ELEM_TITLE, NS_ATOM); writer.writeCharacters(container.getFullQualifiedName().getFullQualifiedNameAsString()); writer.writeEndElement(); writeEntitySets(writer, container); writeFunctionImports(writer, container); writeSingletons(writer, container); writeServiceDocuments(writer); } writer.writeEndElement(); // end workspace writer.writeEndElement(); // end service }
public void writeServiceDocument(final XMLStreamWriter writer) throws XMLStreamException { final String metadataUri = (serviceRoot == null ? "" : serviceRoot.endsWith("/") ? serviceRoot : (serviceRoot + "/")) + Constants.METADATA; writer.writeStartDocument(ODataSerializer.DEFAULT_CHARSET, "1.0"); writer.writeStartElement(APP, "service", NS_APP); writer.writeNamespace(ATOM, NS_ATOM); writer.writeNamespace(APP, NS_APP); writer.writeNamespace(METADATA, NS_METADATA); writer.writeAttribute(METADATA, NS_METADATA, Constants.CONTEXT, metadataUri); if (metadata != null && metadata.getServiceMetadataETagSupport() != null && metadata.getServiceMetadataETagSupport().getMetadataETag() != null) { writer.writeAttribute(METADATA, NS_METADATA, Constants.ATOM_ATTR_METADATAETAG, metadata.getServiceMetadataETagSupport().getMetadataETag()); } writer.writeStartElement(APP, "workspace", NS_APP); final EdmEntityContainer container = metadata.getEdm().getEntityContainer(); if (container != null) { writer.writeStartElement(ATOM, Constants.ATOM_ELEM_TITLE, NS_ATOM); writer.writeCharacters(container.getFullQualifiedName().getFullQualifiedNameAsString()); writer.writeEndElement(); writeEntitySets(writer, container); writeFunctionImports(writer, container); writeSingletons(writer, container); writeServiceDocuments(writer); } writer.writeEndElement(); // end workspace writer.writeEndElement(); // end service }
@Override public void validateMetadata(Edm edm) { Map<FullQualifiedName, EdmEntityType> edmEntityTypesMap = new HashMap<FullQualifiedName, EdmEntityType>(); Map<FullQualifiedName, EdmComplexType> edmComplexTypesMap = new HashMap<FullQualifiedName, EdmComplexType>(); Map<FullQualifiedName, EdmFunction> edmFunctionsMap = new HashMap<FullQualifiedName, EdmFunction>(); Map<FullQualifiedName, EdmEntityContainer> edmContainersMap = new HashMap<FullQualifiedName, EdmEntityContainer>(); Map<String, String> aliasNamespaceMap = new HashMap<String, String>(); List<EdmSchema> edmSchemas = edm.getSchemas(); for (EdmSchema edmSchema : edmSchemas) { List<EdmEntityType> edmEntityTypes = edmSchema.getEntityTypes(); for (EdmEntityType edmEntityType : edmEntityTypes) { edmEntityTypesMap.put(edmEntityType.getFullQualifiedName(), edmEntityType); } List<EdmComplexType> edmComplexTypes = edmSchema.getComplexTypes(); for (EdmComplexType edmComplexType : edmComplexTypes) { edmComplexTypesMap.put(edmComplexType.getFullQualifiedName(), edmComplexType); } List<EdmFunction> edmFunctions = edmSchema.getFunctions(); for (EdmFunction edmFunction : edmFunctions) { edmFunctionsMap.put(edmFunction.getFullQualifiedName(), edmFunction); } aliasNamespaceMap.put(edmSchema.getAlias(), edmSchema.getNamespace()); if (edmSchema.getEntityContainer() != null) { edmContainersMap.put(edmSchema.getEntityContainer().getFullQualifiedName(), edmSchema.getEntityContainer()); } } EdmTypeValidator edmTypeValidator = new EdmTypeValidator(aliasNamespaceMap, edmContainersMap, edmEntityTypesMap, edmComplexTypesMap, edmFunctionsMap); edmTypeValidator.validateEdm(); }
@Override public void validateMetadata(Edm edm) { Map<FullQualifiedName, EdmEntityType> edmEntityTypesMap = new HashMap<FullQualifiedName, EdmEntityType>(); Map<FullQualifiedName, EdmComplexType> edmComplexTypesMap = new HashMap<FullQualifiedName, EdmComplexType>(); Map<FullQualifiedName, EdmFunction> edmFunctionsMap = new HashMap<FullQualifiedName, EdmFunction>(); Map<FullQualifiedName, EdmEntityContainer> edmContainersMap = new HashMap<FullQualifiedName, EdmEntityContainer>(); Map<String, String> aliasNamespaceMap = new HashMap<String, String>(); List<EdmSchema> edmSchemas = edm.getSchemas(); for (EdmSchema edmSchema : edmSchemas) { List<EdmEntityType> edmEntityTypes = edmSchema.getEntityTypes(); for (EdmEntityType edmEntityType : edmEntityTypes) { edmEntityTypesMap.put(edmEntityType.getFullQualifiedName(), edmEntityType); } List<EdmComplexType> edmComplexTypes = edmSchema.getComplexTypes(); for (EdmComplexType edmComplexType : edmComplexTypes) { edmComplexTypesMap.put(edmComplexType.getFullQualifiedName(), edmComplexType); } List<EdmFunction> edmFunctions = edmSchema.getFunctions(); for (EdmFunction edmFunction : edmFunctions) { edmFunctionsMap.put(edmFunction.getFullQualifiedName(), edmFunction); } aliasNamespaceMap.put(edmSchema.getAlias(), edmSchema.getNamespace()); if (edmSchema.getEntityContainer() != null) { edmContainersMap.put(edmSchema.getEntityContainer().getFullQualifiedName(), edmSchema.getEntityContainer()); } } EdmTypeValidator edmTypeValidator = new EdmTypeValidator(aliasNamespaceMap, edmContainersMap, edmEntityTypesMap, edmComplexTypesMap, edmFunctionsMap); edmTypeValidator.validateEdm(); }