Interface JPAEdmComplexTypeView
- All Superinterfaces:
JPAEdmBaseView
A view on Java Persistence embeddable types and EDM complex types. Java
persistence embeddable types are converted into EDM entity types. Only those
embeddable types that are
- used in a java persistence Entity type
- used as non embeddable id of a java persistence entity type
The implementation of the view provides access to EDM complex types for the given JPA EDM model. The view acts as a container for consistent list of EDM complex types. An EDM complex type is said to be consistent only if it used in at least one of the EDM entity type.
@org.apache.olingo.odata2.DoNotImplement
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoidThe method add a JPA EDM complex type view to the container.voidexpandEdmComplexType(ComplexType complexType, List<Property> expandedPropertyList, String embeddablePropertyName) The method expands the given EDM complex type into a list of EDM simple properties.The method returns a consistent list of EDM complex types.The method returns an EDM complex type that is currently being processed.jakarta.persistence.metamodel.EmbeddableType<?> The method returns an JPA embeddable type that is currently being processed.booleanisReferencedInKey(String complexTypeName) The method checks if the given EDM complex type is referenced as a Key property in any EntitysearchEdmComplexType(String embeddableTypeName) The method searches for the EDM complex type with in the container for the given JPA embeddable type name.The method searches for the EDM complex type with in the container for the given EDM complex type's fully qualified name.voidsetReferencedInKey(String complexTypeName) The method sets the given EDM complex type as referenced in an Entity as a key propertyMethods inherited from interface org.apache.olingo.odata2.jpa.processor.api.model.JPAEdmBaseView
clean, getBuilder, getJPAEdmExtension, getJPAEdmMappingModelAccess, getJPAMetaModel, getpUnitName, isConsistent, isDefaultNamingSkipped
-
Method Details
-
getEdmComplexType
ComplexType getEdmComplexType()The method returns an EDM complex type that is currently being processed.- Returns:
- an instance of type
ComplexType
-
getJPAEmbeddableType
jakarta.persistence.metamodel.EmbeddableType<?> getJPAEmbeddableType()The method returns an JPA embeddable type that is currently being processed.- Returns:
- an instance of type
EmbeddableType
-
getConsistentEdmComplexTypes
List<ComplexType> getConsistentEdmComplexTypes()The method returns a consistent list of EDM complex types.- Returns:
- a list of
ComplexType
-
searchEdmComplexType
The method searches for the EDM complex type with in the container for the given JPA embeddable type name.- Parameters:
embeddableTypeName- is the name of JPA embeddable type- Returns:
- a reference to EDM complex type if found else null
-
addJPAEdmCompleTypeView
The method add a JPA EDM complex type view to the container.- Parameters:
view- is the complex type referenced in an Entity as a key property is an instance of typeJPAEdmComplexTypeView
-
searchEdmComplexType
The method searches for the EDM complex type with in the container for the given EDM complex type's fully qualified name.- Parameters:
type- is the fully qualified name of EDM complex type- Returns:
- a reference to EDM complex type if found else null
-
expandEdmComplexType
void expandEdmComplexType(ComplexType complexType, List<Property> expandedPropertyList, String embeddablePropertyName) The method expands the given EDM complex type into a list of EDM simple properties.- Parameters:
complexType- is the EDM complex type to expandexpandedPropertyList- is the list to be populated with expanded EDM simple propertiesembeddablePropertyName- is the name of the complex property. The name is used as the qualifier for the expanded simple property names.
-
isReferencedInKey
The method checks if the given EDM complex type is referenced as a Key property in any Entity- Parameters:
complexTypeName- EDM complex type name- Returns:
- true : if the complex type is referenced as an entity's key property
- false : if the complex type is not referenced as an entity's key property
-
setReferencedInKey
The method sets the given EDM complex type as referenced in an Entity as a key property- Parameters:
complexTypeName- EDM complex Type name
-