Class DefaultNamingStrategy
- java.lang.Object
-
- software.amazon.awssdk.codegen.naming.DefaultNamingStrategy
-
- All Implemented Interfaces:
NamingStrategy
public class DefaultNamingStrategy extends Object implements NamingStrategy
Default implementation of naming strategy respecting.
-
-
Constructor Summary
Constructors Constructor Description DefaultNamingStrategy(ServiceModel serviceModel, CustomizationConfig customizationConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getAuthSchemePackageName(String serviceName)
Retrieve the auth scheme package name that should be used based on the service name.String
getBeanStyleGetterMethodName(String memberName, Shape parentShape, Shape c2jShape)
String
getBeanStyleSetterMethodName(String memberName, Shape parentShape, Shape c2jShape)
String
getClientPackageName(String serviceName)
Retrieve the client package name that should be used based on the service name.String
getEndpointRulesPackageName(String serviceName)
Retrieve the endpoint rules package name that should be used based on the service name.String
getEnumValueName(String enumValue)
String
getExceptionName(String errorShapeName)
String
getExistenceCheckMethodName(String memberName, Shape parentShape)
Names a method that would check for existence of the member in the response.String
getFluentEnumGetterMethodName(String memberName, Shape parentShape, Shape shape)
String
getFluentEnumSetterMethodName(String memberName, Shape parentShape, Shape shape)
String
getFluentGetterMethodName(String memberName, Shape parentShape, Shape shape)
String
getFluentSetterMethodName(String memberName, Shape parentShape, Shape shape)
String
getJmesPathPackageName(String serviceName)
Retrieve the path runtime package name that should be used based on the service name.String
getModelPackageName(String serviceName)
Retrieve the model package name that should be used based on the service name.String
getPaginatorsPackageName(String serviceName)
Retrieve the paginators package name that should be used based on the service name.String
getRequestClassName(String operationName)
String
getRequestTransformPackageName(String serviceName)
Retrieve the request transform package name that should be used based on the service name.String
getResponseClassName(String operationName)
String
getSdkFieldFieldName(MemberModel memberModel)
Stuttering is intentional, returns the name of theSdkField
field.String
getServiceName()
Retrieve the service name that should be used based on the model.String
getShapeClassName(String shapeName)
String
getSmokeTestPackageName(String serviceName)
Retrieve the smote test package name that should be used based on the service name.String
getTransformPackageName(String serviceName)
Retrieve the transform package name that should be used based on the service name.String
getUnionEnumTypeName(MemberModel memberModel)
Returns the name of the provided member as if it will be included in an enum (as in, when the parent shape is a union and we need to create an enum with each member name in it).String
getVariableName(String name)
String
getWaitersPackageName(String serviceName)
Retrieve the waiters package name that should be used based on the service name.void
validateCustomerVisibleNaming(IntermediateModel trimmedModel)
Verify the customer-visible naming in the provided intermediate model will compile and is idiomatic to Java.
-
-
-
Constructor Detail
-
DefaultNamingStrategy
public DefaultNamingStrategy(ServiceModel serviceModel, CustomizationConfig customizationConfig)
-
-
Method Detail
-
getServiceName
public String getServiceName()
Description copied from interface:NamingStrategy
Retrieve the service name that should be used based on the model.- Specified by:
getServiceName
in interfaceNamingStrategy
-
getClientPackageName
public String getClientPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the client package name that should be used based on the service name.- Specified by:
getClientPackageName
in interfaceNamingStrategy
-
getModelPackageName
public String getModelPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the model package name that should be used based on the service name.- Specified by:
getModelPackageName
in interfaceNamingStrategy
-
getTransformPackageName
public String getTransformPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the transform package name that should be used based on the service name.- Specified by:
getTransformPackageName
in interfaceNamingStrategy
-
getRequestTransformPackageName
public String getRequestTransformPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the request transform package name that should be used based on the service name.- Specified by:
getRequestTransformPackageName
in interfaceNamingStrategy
-
getPaginatorsPackageName
public String getPaginatorsPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the paginators package name that should be used based on the service name.- Specified by:
getPaginatorsPackageName
in interfaceNamingStrategy
-
getWaitersPackageName
public String getWaitersPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the waiters package name that should be used based on the service name.- Specified by:
getWaitersPackageName
in interfaceNamingStrategy
-
getEndpointRulesPackageName
public String getEndpointRulesPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the endpoint rules package name that should be used based on the service name.- Specified by:
getEndpointRulesPackageName
in interfaceNamingStrategy
-
getAuthSchemePackageName
public String getAuthSchemePackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the auth scheme package name that should be used based on the service name.- Specified by:
getAuthSchemePackageName
in interfaceNamingStrategy
-
getJmesPathPackageName
public String getJmesPathPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the path runtime package name that should be used based on the service name.- Specified by:
getJmesPathPackageName
in interfaceNamingStrategy
-
getSmokeTestPackageName
public String getSmokeTestPackageName(String serviceName)
Description copied from interface:NamingStrategy
Retrieve the smote test package name that should be used based on the service name.- Specified by:
getSmokeTestPackageName
in interfaceNamingStrategy
-
getExceptionName
public String getExceptionName(String errorShapeName)
- Specified by:
getExceptionName
in interfaceNamingStrategy
- Parameters:
errorShapeName
- Name of error shape to derive exception class name from.- Returns:
- Appropriate name to use for a Java exception class name
-
getRequestClassName
public String getRequestClassName(String operationName)
- Specified by:
getRequestClassName
in interfaceNamingStrategy
- Parameters:
operationName
- Name of operation used to derive request class name.- Returns:
- Appropriate name to use for the Java class representing the request shape.
-
getResponseClassName
public String getResponseClassName(String operationName)
- Specified by:
getResponseClassName
in interfaceNamingStrategy
- Parameters:
operationName
- Name of operation used to derive response class name.- Returns:
- Appropriate name to use for the Java class representing the response shape.
-
getVariableName
public String getVariableName(String name)
- Specified by:
getVariableName
in interfaceNamingStrategy
- Parameters:
name
- Some contextual name to derive variable name from (i.e. member name, java class name, etc).- Returns:
- Appropriate name to use for a Java variable or field.
-
getEnumValueName
public String getEnumValueName(String enumValue)
- Specified by:
getEnumValueName
in interfaceNamingStrategy
- Parameters:
enumValue
- Enum value as defined in the service model used to derive the java name.- Returns:
- Appropriate name to use for a Java enum value
-
getShapeClassName
public String getShapeClassName(String shapeName)
- Specified by:
getShapeClassName
in interfaceNamingStrategy
- Parameters:
shapeName
- Name of structure used to derive Java class name.- Returns:
- Appropriate name to use for a Java class for an arbitrary (not a request, response, error) structure.
-
getFluentGetterMethodName
public String getFluentGetterMethodName(String memberName, Shape parentShape, Shape shape)
- Specified by:
getFluentGetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- Member name to name getter for.shape
- The shape associated with the member.- Returns:
- Name of the getter method for a model class member.
-
getFluentEnumGetterMethodName
public String getFluentEnumGetterMethodName(String memberName, Shape parentShape, Shape shape)
- Specified by:
getFluentEnumGetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- The full member to get the name for.shape
- The shape associated with the member.- Returns:
- Name of the getter method for an enum model class member.
-
getExistenceCheckMethodName
public String getExistenceCheckMethodName(String memberName, Shape parentShape)
Description copied from interface:NamingStrategy
Names a method that would check for existence of the member in the response.- Specified by:
getExistenceCheckMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- The member name to get the method name for.parentShape
- The shape containing the member.- Returns:
- Name of an existence check method.
-
getBeanStyleGetterMethodName
public String getBeanStyleGetterMethodName(String memberName, Shape parentShape, Shape c2jShape)
- Specified by:
getBeanStyleGetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- Member name to name getter for.- Returns:
- Name of the JavaBean getter method for model class member.
-
getBeanStyleSetterMethodName
public String getBeanStyleSetterMethodName(String memberName, Shape parentShape, Shape c2jShape)
- Specified by:
getBeanStyleSetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- Member name to name setter for.- Returns:
- Name of the JavaBean setter method for model class member.
-
getFluentSetterMethodName
public String getFluentSetterMethodName(String memberName, Shape parentShape, Shape shape)
- Specified by:
getFluentSetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- Member name to name fluent setter for.- Returns:
- Appropriate name to use for fluent setter method (i.e. withFoo) for a model class member.
-
getFluentEnumSetterMethodName
public String getFluentEnumSetterMethodName(String memberName, Shape parentShape, Shape shape)
- Specified by:
getFluentEnumSetterMethodName
in interfaceNamingStrategy
- Parameters:
memberName
- The full member to get the name for.shape
- The shape associated with the member.- Returns:
- Name of the getter method for an enum model class member.
-
getSdkFieldFieldName
public String getSdkFieldFieldName(MemberModel memberModel)
Description copied from interface:NamingStrategy
Stuttering is intentional, returns the name of theSdkField
field.- Specified by:
getSdkFieldFieldName
in interfaceNamingStrategy
- Parameters:
memberModel
- Member to generate field name for.- Returns:
- Name of field for
SdkField
pojo.
-
getUnionEnumTypeName
public String getUnionEnumTypeName(MemberModel memberModel)
Description copied from interface:NamingStrategy
Returns the name of the provided member as if it will be included in an enum (as in, when the parent shape is a union and we need to create an enum with each member name in it).- Specified by:
getUnionEnumTypeName
in interfaceNamingStrategy
- Parameters:
memberModel
- Member to generate the union enum type name for.
-
validateCustomerVisibleNaming
public void validateCustomerVisibleNaming(IntermediateModel trimmedModel)
Description copied from interface:NamingStrategy
Verify the customer-visible naming in the provided intermediate model will compile and is idiomatic to Java.- Specified by:
validateCustomerVisibleNaming
in interfaceNamingStrategy
-
-