Package io.micronaut.data.model.naming
Interface NamingStrategy
- All Known Implementing Classes:
NamingStrategies.KebabCase,NamingStrategies.LowerCase,NamingStrategies.Raw,NamingStrategies.UnderScoreSeparatedLowerCase,NamingStrategies.UnderScoreSeparatedUpperCase,NamingStrategies.UpperCase
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
A strategy interface for resolving the mapped name of an entity or property.
- Since:
- 1.0
- Author:
- graemerocher
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final NamingStrategyConstant for the default under score separated lower case strategy. -
Method Summary
Modifier and TypeMethodDescriptiondefault @NonNull StringThe default foreign key suffix for property names.default StringmappedJoinTableColumn(PersistentEntity associated, List<Association> associations, PersistentProperty property) default @NonNull StringmappedName(@NonNull PersistentEntity entity) Return the mapped name for the given entity.default @NonNull StringmappedName(@NonNull PersistentProperty property) Return the mapped name for the given property.@NonNull StringmappedName(@NonNull String name) Return the mapped name for the given name.default @NonNull StringmappedName(@NonNull List<Association> associations, @NonNull PersistentProperty property) default @NonNull StringmappedName(Association association) Return the mapped name for the given association.default @NonNull StringmappedName(Embedded embedded, PersistentProperty property) Return the mapped name given anEmbeddedassociation and the property of the association.
-
Field Details
-
DEFAULT
Constant for the default under score separated lower case strategy.
-
-
Method Details
-
mappedName
Return the mapped name for the given name.- Parameters:
name- The name- Returns:
- The mapped name
-
mappedName
Return the mapped name for the given entity.- Parameters:
entity- The entity- Returns:
- The mapped name
-
mappedName
Return the mapped name given anEmbeddedassociation and the property of the association. The default strategy takes the parent embedded property name and combines it underscore separated with the child parent property name.For example given:
@Embedded Address address;Where the
Addresstype has a property calledstreetthen a name ofaddress_streetwill be returned- Parameters:
embedded- The embedded parentproperty- The embedded property- Returns:
- The mapped name
-
mappedName
Return the mapped name for the given property.- Parameters:
property- The property- Returns:
- The mapped name
-
mappedName
Return the mapped name for the given association.- Parameters:
association- The association- Returns:
- The mapped name
-
mappedName
@NonNull default @NonNull String mappedName(@NonNull @NonNull List<Association> associations, @NonNull @NonNull PersistentProperty property) -
mappedJoinTableColumn
default String mappedJoinTableColumn(PersistentEntity associated, List<Association> associations, PersistentProperty property) -
getForeignKeySuffix
The default foreign key suffix for property names.- Returns:
- The suffix
-