diff --git a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/FieldDefinitionToParameterMapper.java b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/FieldDefinitionToParameterMapper.java index 09283ed82e1f3bd6fb03f1f724b4540786c612bc..5de363dfc1288d9139d910efa1a0a45bfa71b2dd 100644 --- a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/FieldDefinitionToParameterMapper.java +++ b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/FieldDefinitionToParameterMapper.java @@ -21,7 +21,7 @@ public class FieldDefinitionToParameterMapper { * @param mappingConfig Global mapping configuration * @param fieldDefinitions List of GraphQL field definitions * @param parentTypeName Name of the parent GraphQL type - * @return Freemarker data model of the GraphQL interface + * @return Freemarker data model of the GraphQL field definition */ public static List map(MappingConfig mappingConfig, List fieldDefinitions, diff --git a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/GraphqlTypeToJavaTypeMapper.java b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/GraphqlTypeToJavaTypeMapper.java index 137a17ec9c54db070e9f6e41825135317e0a55f8..924f9de37333322389722334b92fe40e9394c785 100644 --- a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/GraphqlTypeToJavaTypeMapper.java +++ b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/GraphqlTypeToJavaTypeMapper.java @@ -155,10 +155,28 @@ class GraphqlTypeToJavaTypeMapper { return annotations; } + /** + * Wrap java type into collection. E.g.: "String" becomes "Collection + * @return String wrapped into Collection<> + */ private static String wrapIntoJavaCollection(String type) { return String.format("Collection<%s>", type); } + /** + * Wraps type into subscriptionReturnType (defined in the mapping configuration. + * Example: + * Given GraphQL schema: type Subscription { eventsCreated: [Event!]! } + * Given subscriptionReturnType in mapping config: org.reactivestreams.Publisher + * Return: org.reactivestreams.Publisher + * + * @param mappingConfig Global mapping configuration + * @param javaTypeName The type that will be wrapped into + * @param parentTypeName Name of the parent type + * @return Java type wrapped into the subscriptionReturnType + */ static String wrapIntoSubscriptionIfRequired(MappingConfig mappingConfig, String javaTypeName, String parentTypeName) { if (parentTypeName.equalsIgnoreCase(Operation.SUBSCRIPTION.name()) && !Utils.isBlank(mappingConfig.getSubscriptionReturnType())) { diff --git a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/InputValueDefinitionToParameterMapper.java b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/InputValueDefinitionToParameterMapper.java index b0ed48b18c0b09f915cba155ea850ad55260daee..a61cf3881a47a144d27d734175f312645c88c58b 100644 --- a/src/main/java/com/kobylynskyi/graphql/codegen/mapper/InputValueDefinitionToParameterMapper.java +++ b/src/main/java/com/kobylynskyi/graphql/codegen/mapper/InputValueDefinitionToParameterMapper.java @@ -15,6 +15,14 @@ import java.util.stream.Collectors; */ public class InputValueDefinitionToParameterMapper { + /** + * Map input value definition to a Freemarker-understandable data model type + * + * @param mappingConfig Global mapping configuration + * @param valueDefinitions List of GraphQL value definitions + * @param parentTypeName Name of the parent GraphQL type + * @return Freemarker data model of the GraphQL input value definition + */ public static List map(MappingConfig mappingConfig, List valueDefinitions, String parentTypeName) { if (valueDefinitions == null) { return Collections.emptyList();