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
Modifier and TypeFieldDescriptionstatic final NamingStrategy
Constant for the default underscore separated lower case strategy. -
Method Summary
Modifier and TypeMethodDescriptiondefault @NonNull String
The default foreign key suffix for property names.default @NonNull String
mappedAssociatedName
(@NonNull String associatedName) Convert the associated name to a proper format to be appended to the path.default String
mappedJoinTableColumn
(PersistentEntity associated, List<Association> associations, PersistentProperty property) default @NonNull String
mappedName
(@NonNull PersistentEntity entity) Return the mapped name for the given entity.default @NonNull String
mappedName
(@NonNull PersistentProperty property) Return the mapped name for the given property.@NonNull String
mappedName
(@NonNull String name) Return the mapped name for the given name.default @NonNull String
mappedName
(@NonNull List<Association> associations, @NonNull PersistentProperty property) default @NonNull String
mappedName
(Association association) Return the mapped name for the given association.default @NonNull String
mappedName
(Embedded embedded, PersistentProperty property) Return the mapped name given anEmbedded
association and the property of the association.
-
Field Details
-
DEFAULT
Constant for the default underscore 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 anEmbedded
association 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
Address
type has a property calledstreet
then a name ofaddress_street
will 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
-
mappedAssociatedName
Convert the associated name to a proper format to be appended to the path.- Parameters:
associatedName
- The associated name- Returns:
- the name in a proper format
- Since:
- 4.2.0
-
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
-