Package io.micronaut.data.model
Class PersistentEntityUtils
java.lang.Object
io.micronaut.data.model.PersistentEntityUtils
Persistent entity utils.
- Since:
- 3.5.0
- Author:
- Denis Stepanov
-
Method Summary
Modifier and TypeMethodDescriptionstatic intcountPersistentProperties(PersistentProperty property) Count possible embedded properties.static intcountPersistentProperties(List<Association> associations, PersistentProperty property) Count possible embedded properties.getPersistentPropertyPath(PersistentEntity entity, String path) Computes a dot separated property path for the given camel case path.static booleanisAccessibleWithoutJoin(Association association, PersistentProperty persistentProperty) Check if the property is an association ID that can be accessed without join.static voidtraverse(PersistentPropertyPath propertyPath, Consumer<PersistentPropertyPath> consumer) static voidtraversePersistentProperties(PersistentEntity persistentEntity, boolean includeIdentity, boolean includeVersion, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.static voidtraversePersistentProperties(PersistentEntity persistentEntity, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.static voidtraversePersistentProperties(PersistentPropertyPath propertyPath, boolean traverseEmbedded, BiConsumer<List<Association>, PersistentProperty> consumerProperty) static voidtraversePersistentProperties(PersistentPropertyPath propertyPath, BiConsumer<List<Association>, PersistentProperty> consumerProperty) static voidtraversePersistentProperties(PersistentProperty property, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.static voidtraversePersistentProperties(List<Association> associations, PersistentProperty property, boolean traverseEmbedded, BiConsumer<List<Association>, PersistentProperty> consumerProperty) static voidtraversePersistentProperties(List<Association> associations, PersistentProperty property, BiConsumer<List<Association>, PersistentProperty> consumerProperty)
-
Method Details
-
isAccessibleWithoutJoin
public static boolean isAccessibleWithoutJoin(Association association, PersistentProperty persistentProperty) Check if the property is an association ID that can be accessed without join. In a case it's not an ID stored outside the associated table.- Parameters:
association- The associationpersistentProperty- The association's property- Returns:
- true if can be accessed
- Since:
- 4.2.0
-
traversePersistentProperties
public static void traversePersistentProperties(PersistentProperty property, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.- Parameters:
property- The property to start traversing fromconsumer- The function to invoke on every property
-
traversePersistentProperties
public static void traversePersistentProperties(PersistentEntity persistentEntity, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.- Parameters:
persistentEntity- The persistent entityconsumer- The function to invoke on every property
-
traversePersistentProperties
public static void traversePersistentProperties(PersistentEntity persistentEntity, boolean includeIdentity, boolean includeVersion, BiConsumer<List<Association>, PersistentProperty> consumer) Traverses properties that should be persisted.- Parameters:
persistentEntity- The persistent entityincludeIdentity- Should be identifier includedincludeVersion- Should be version includedconsumer- The function to invoke on every property
-
countPersistentProperties
Count possible embedded properties.- Parameters:
property- The property- Returns:
- the count
-
countPersistentProperties
public static int countPersistentProperties(List<Association> associations, PersistentProperty property) Count possible embedded properties.- Parameters:
property- The propertyassociations- The associations- Returns:
- the count
-
traversePersistentProperties
public static void traversePersistentProperties(List<Association> associations, PersistentProperty property, BiConsumer<List<Association>, PersistentProperty> consumerProperty) -
traversePersistentProperties
public static void traversePersistentProperties(PersistentPropertyPath propertyPath, BiConsumer<List<Association>, PersistentProperty> consumerProperty) -
traverse
public static void traverse(PersistentPropertyPath propertyPath, Consumer<PersistentPropertyPath> consumer) -
traversePersistentProperties
public static void traversePersistentProperties(PersistentPropertyPath propertyPath, boolean traverseEmbedded, BiConsumer<List<Association>, PersistentProperty> consumerProperty) -
traversePersistentProperties
public static void traversePersistentProperties(List<Association> associations, PersistentProperty property, boolean traverseEmbedded, BiConsumer<List<Association>, PersistentProperty> consumerProperty) -
getPersistentPropertyPath
Computes a dot separated property path for the given camel case path.- Parameters:
path- The camel case path, can contain underscore to indicate how we should traverse entity propertiesentity- the persistent entity- Returns:
- The dot separated version or null if it cannot be computed
-