private PropertyRef createKeyProperty(final EdmProperty et, final Field field) { PropertyRef keyProperty = new PropertyRef(); String entityName = et.name(); if (entityName.isEmpty()) { entityName = getCanonicalName(field); } return keyProperty.setName(entityName); }
@Override public List<String> getPropertyRefNames() { if (refNames == null) { refNames = new ArrayList<String>(); for (PropertyRef ref : role.getPropertyRefs()) { refNames.add(ref.getName()); } } return refNames; }
private PropertyRef readPropertyRef(final XMLStreamReader reader) throws XMLStreamException, EntityProviderException { reader.require(XMLStreamConstants.START_ELEMENT, edmNamespace, XmlMetadataConstants.EDM_PROPERTY_REF); PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(reader.getAttributeValue(null, XmlMetadataConstants.EDM_NAME)); List<AnnotationElement> annotationElements = new ArrayList<AnnotationElement>(); propertyRef.setAnnotationAttributes(readAnnotationAttribute(reader)); while (reader.hasNext() && !(reader.isEndElement() && edmNamespace.equals(reader.getNamespaceURI()) && XmlMetadataConstants.EDM_PROPERTY_REF.equals(reader.getLocalName()))) { reader.next(); if (reader.isStartElement()) { extractNamespaces(reader); annotationElements.add(readAnnotationElement(reader)); } } if (!annotationElements.isEmpty()) { propertyRef.setAnnotationElements(annotationElements); } return propertyRef; }
xmlStreamWriter.writeStartElement(XmlMetadataConstants.EDM_PROPERTY_REF); writeAnnotationAttributes(propertyRef.getAnnotationAttributes(), predefinedNamespaces, null, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); writeAnnotationElements(propertyRef.getAnnotationElements(), predefinedNamespaces, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement(); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement();
xmlStreamWriter.writeStartElement(XmlMetadataConstants.EDM_PROPERTY_REF); writeAnnotationAttributes(propertyRef.getAnnotationAttributes(), predefinedNamespaces, null, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); writeAnnotationElements(propertyRef.getAnnotationElements(), predefinedNamespaces, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement(); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement();
private PropertyRef createKeyProperty(final EdmProperty et, final Field field) { PropertyRef keyProperty = new PropertyRef(); String entityName = et.name(); if (entityName.isEmpty()) { entityName = getCanonicalName(field); } return keyProperty.setName(entityName); }
private PropertyRef readPropertyRef(final XMLStreamReader reader) throws XMLStreamException, EntityProviderException { reader.require(XMLStreamConstants.START_ELEMENT, edmNamespace, XmlMetadataConstants.EDM_PROPERTY_REF); PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(reader.getAttributeValue(null, XmlMetadataConstants.EDM_NAME)); List<AnnotationElement> annotationElements = new ArrayList<AnnotationElement>(); propertyRef.setAnnotationAttributes(readAnnotationAttribute(reader)); while (reader.hasNext() && !(reader.isEndElement() && edmNamespace.equals(reader.getNamespaceURI()) && XmlMetadataConstants.EDM_PROPERTY_REF.equals(reader.getLocalName()))) { reader.next(); if (reader.isStartElement()) { extractNamespaces(reader); annotationElements.add(readAnnotationElement(reader)); } } if (!annotationElements.isEmpty()) { propertyRef.setAnnotationElements(annotationElements); } return propertyRef; }
xmlStreamWriter.writeStartElement(XmlMetadataConstants.EDM_PROPERTY_REF); writeAnnotationAttributes(propertyRef.getAnnotationAttributes(), predefinedNamespaces, null, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); writeAnnotationElements(propertyRef.getAnnotationElements(), predefinedNamespaces, xmlStreamWriter); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement(); xmlStreamWriter.writeAttribute(XmlMetadataConstants.EDM_NAME, propertyRef.getName()); xmlStreamWriter.writeEndElement();
@Override public List<String> getPropertyRefNames() { if (refNames == null) { refNames = new ArrayList<String>(); for (PropertyRef ref : role.getPropertyRefs()) { refNames.add(ref.getName()); } } return refNames; }
private PropertyRef createKeyProperty(final EdmProperty et, final Field field) { PropertyRef keyProperty = new PropertyRef(); String entityName = et.name(); if (entityName.isEmpty()) { entityName = getCanonicalName(field); } return keyProperty.setName(entityName); }
private PropertyRef readPropertyRef(final XMLStreamReader reader) throws XMLStreamException, EntityProviderException { reader.require(XMLStreamConstants.START_ELEMENT, edmNamespace, XmlMetadataConstants.EDM_PROPERTY_REF); PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(reader.getAttributeValue(null, XmlMetadataConstants.EDM_NAME)); List<AnnotationElement> annotationElements = new ArrayList<AnnotationElement>(); propertyRef.setAnnotationAttributes(readAnnotationAttribute(reader)); while (reader.hasNext() && !(reader.isEndElement() && edmNamespace.equals(reader.getNamespaceURI()) && XmlMetadataConstants.EDM_PROPERTY_REF.equals(reader.getLocalName()))) { reader.next(); if (reader.isStartElement()) { extractNamespaces(reader); annotationElements.add(readAnnotationElement(reader)); } } if (!annotationElements.isEmpty()) { propertyRef.setAnnotationElements(annotationElements); } return propertyRef; }
@Override public List<String> getPropertyRefNames() { if (refNames == null) { refNames = new ArrayList<String>(); for (PropertyRef ref : role.getPropertyRefs()) { refNames.add(ref.getName()); } } return refNames; }
public void normalizeComplexKey(final ComplexType complexType, final List<PropertyRef> propertyRefList) { for (Property property : complexType.getProperties()) { try { SimpleProperty simpleProperty = (SimpleProperty) property; Facets facets = (Facets) simpleProperty.getFacets(); if (facets == null) { simpleProperty.setFacets(new Facets().setNullable(false)); } else { facets.setNullable(false); } PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(simpleProperty.getName()); propertyRefList.add(propertyRef); } catch (ClassCastException e) { ComplexProperty complexProperty = (ComplexProperty) property; normalizeComplexKey(complexTypeView.searchEdmComplexType(complexProperty.getType()), propertyRefList); } } } }
private List<KeyPredicate> mapKeyPredicates(List<KeyPredicate> sourcePredicates, AssociationBundle bundle, EdmEntityType targetEntityType) throws EdmException { List<KeyPredicate> result = new ArrayList<KeyPredicate>(); List<PropertyRef> targetPropertyRefs = bundle.association.getReferentialConstraint().getDependent().getPropertyRefs(); for (int i = 0; i < sourcePredicates.size(); ++i) { result.add(new GWKeyPredicate(sourcePredicates.get(i).getLiteral(), getKeyProperty(targetEntityType, targetPropertyRefs.get(i).getName()))); } return result; }
public void normalizeComplexKey(final ComplexType complexType, final List<PropertyRef> propertyRefList) { for (Property property : complexType.getProperties()) { try { SimpleProperty simpleProperty = (SimpleProperty) property; Facets facets = (Facets) simpleProperty.getFacets(); if (facets == null) { simpleProperty.setFacets(new Facets().setNullable(false)); } else { facets.setNullable(false); } PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(simpleProperty.getName()); propertyRefList.add(propertyRef); } catch (ClassCastException e) { ComplexProperty complexProperty = (ComplexProperty) property; normalizeComplexKey(complexTypeView.searchEdmComplexType(complexProperty.getType()), propertyRefList); } } } }
private boolean ComparePropertyStructures(EntityType type1, List<PropertyRef> key1, EntityType type2, List<PropertyRef> key2) { if (key1 == null && key2 == null) { return true; } if (key1 == null || key2 == null) { return false; } if (key1.size() != key2.size()) { return false; } for (int i = 0; i < key1.size(); ++i) { PropertyRef ref1 = key1.get(i), ref2 = key2.get(i); String name1 = ref1.getName(), name2 = ref2.getName(); Property property1 = getProperty(type1, name1), property2 = getProperty( type2, name2); if ((property1 instanceof SimpleProperty) && (property2 instanceof SimpleProperty)) { if (((SimpleProperty) property1).getType().compareTo( ((SimpleProperty) property2).getType()) != 0) { return false; } } else { return false; } } return true; }
if (columnName[index].equals(jpaColumnName) || columnName[index].equals(property.getName())) { PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(property.getName()); propertyRefs.add(propertyRef); break;
@Override public List<String> getKeyPropertyNames() throws EdmException { if (edmKeyPropertyNames == null) { if (edmBaseType != null) { return ((EdmEntityType) edmBaseType).getKeyPropertyNames(); } edmKeyPropertyNames = new ArrayList<String>(); if (entityType.getKey() != null) { for (final PropertyRef keyProperty : entityType.getKey().getKeys()) { edmKeyPropertyNames.add(keyProperty.getName()); } } else { // Entity Type does not define a key throw new EdmException(EdmException.COMMON); } } return edmKeyPropertyNames; }
@Override public void build() throws ODataJPAModelException { List<PropertyRef> propertyRefList = null; if (key == null) { key = new Key(); } if (key.getKeys() == null) { propertyRefList = new ArrayList<PropertyRef>(); key.setKeys(propertyRefList); } else { propertyRefList = key.getKeys(); } if (isBuildModeComplexType) { ComplexType complexType = complexTypeView.searchEdmComplexType(propertyView.getJPAAttribute().getJavaType().getName()); normalizeComplexKey(complexType, propertyRefList); } else { PropertyRef propertyRef = new PropertyRef(); propertyRef.setName(propertyView.getEdmSimpleProperty().getName()); Facets facets = (Facets) propertyView.getEdmSimpleProperty().getFacets(); if (facets == null) { propertyView.getEdmSimpleProperty().setFacets(new Facets().setNullable(false)); } else { facets.setNullable(false); } propertyRefList.add(propertyRef); } }
@Override public List<String> getKeyPropertyNames() throws EdmException { if (edmKeyPropertyNames == null) { if (edmBaseType != null) { return ((EdmEntityType) edmBaseType).getKeyPropertyNames(); } edmKeyPropertyNames = new ArrayList<String>(); if (entityType.getKey() != null) { for (final PropertyRef keyProperty : entityType.getKey().getKeys()) { edmKeyPropertyNames.add(keyProperty.getName()); } } else { // Entity Type does not define a key throw new EdmException(EdmException.COMMON); } } return edmKeyPropertyNames; }