private List<Type> createSuperInterfaces() throws IOException { List<Type> results = new ArrayList<>(); results.add(f.newParameterizedType( context.resolve(DataModel.class), context.resolve(context.getQualifiedTypeName()))); results.addAll(driver.getInterfaces(context, model)); return results; }
private MethodDeclaration createGetFormatMethod(Name value) { Name base = Models.toName(f, DirectFileInputDescriptionGenerator.FORMAT_BASE_CLASS); Type type = f.newParameterizedType( context.resolve(Class.class), f.newWildcard(WildcardBoundKind.UPPER_BOUNDED, f.newParameterizedType( context.resolve(base), f.newWildcard()))); return createGetMethod("getFormat", type, f.newClassLiteral(context.resolve(value))); //$NON-NLS-1$ }
private MethodDeclaration createGetFormatMethod(Name value) { Name base = Models.toName(f, FORMAT_BASE_CLASS); Type type = f.newParameterizedType( context.resolve(Class.class), f.newWildcard(WildcardBoundKind.UPPER_BOUNDED, f.newParameterizedType( context.resolve(base), f.newWildcard()))); return createGetMethod("getFormat", type, f.newClassLiteral(context.resolve(value))); //$NON-NLS-1$ }
/** * Returns the collection type of target reference. * @param reference target reference * @return the corresponded type * @throws IllegalArgumentException if some parameters were {@code null} * @since 0.9.2 */ public Type getContainerType(PropertyReferenceDeclaration reference) { if ((reference.getType() instanceof BasicType) == false) { throw new IllegalArgumentException(); } Type elementType = getElementType(reference); switch (reference.getReference().getKind()) { case LIST: return factory.newParameterizedType(resolve(List.class), elementType); case MAP: return factory.newParameterizedType(resolve(Map.class), resolve(String.class), elementType); default: throw new AssertionError(reference.getReference().getKind()); } }
private MethodDeclaration createGetListOfStringMethod(String name, List<String> values) { List<Expression> arguments = new ArrayList<>(); for (String element : values) { arguments.add(Models.toLiteral(f, element)); } Type type = f.newParameterizedType(context.resolve(List.class), context.resolve(String.class)); Expression value = new TypeBuilder(f, context.resolve(Arrays.class)) .method("asList", arguments) //$NON-NLS-1$ .toExpression(); return createGetMethod(name, type, value); }
private MethodDeclaration createGetModelTypeMethod(Name value) { return createGetMethod( "getModelType", //$NON-NLS-1$ f.newParameterizedType(context.resolve(Class.class), f.newWildcard()), f.newClassLiteral(context.resolve(value))); }
private MethodDeclaration createGetModelTypeMethod(Name value) { return createGetMethod( "getModelType", //$NON-NLS-1$ f.newParameterizedType(context.resolve(Class.class), f.newWildcard()), f.newClassLiteral(context.resolve(value))); }
private FieldDeclaration createReferenceMapKeyField(PropertyReferenceDeclaration reference) { Map<String, PropertySymbol> map = reference.getReference().asMap(); List<Expression> keys = map.keySet().stream() .sequential() .map(it -> Models.toLiteral(f, it)) .collect(Collectors.toList()); return f.newFieldDeclaration( null, new AttributeBuilder(f) .Static() .Final() .toAttributes(), f.newParameterizedType(context.resolve(Set.class), context.resolve(String.class)), f.newSimpleName(getKeysFieldName(reference)), new TypeBuilder(f, context.resolve(ValueOptionMap.class)) .method("keys", keys) //$NON-NLS-1$ .toExpression()); }
private MethodDeclaration createGetColumnMap() { MethodDeclaration decl = f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Map.class), context.resolve(String.class), context.resolve(String.class)), f.newSimpleName("getColumnMap"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new ExpressionBuilder(f, f.newSimpleName(NAME_COLUMN_MAP)) .toReturnStatement())); return decl; }
private MethodDeclaration createReferenceMapKeySetMethod(PropertyReferenceDeclaration reference) { return f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType(context.resolve(Set.class), context.resolve(String.class)), f.newSimpleName("keySet"), //$NON-NLS-1$ Arrays.asList(), Arrays.asList(new TypeBuilder(f, f.newNamedType(context.getTypeName())) .field(getKeysFieldName(reference)) .toReturnStatement())); }
private MethodDeclaration createGetSupportedType() { return f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement())); }
private MethodDeclaration createGetSupportedType() { return f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement())); }
private MethodDeclaration createGetSupportedType() { MethodDeclaration decl = f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new Statement[] { new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement() })); return decl; }
private MethodDeclaration createGetSupportedType() { MethodDeclaration decl = f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new Statement[] { new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement() })); return decl; }
private MethodDeclaration createGetSupportedType() { MethodDeclaration decl = f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new Statement[] { new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement() })); return decl; }
private MethodDeclaration createGetSupportedType() { MethodDeclaration decl = f.newMethodDeclaration( null, new AttributeBuilder(f) .annotation(context.resolve(Override.class)) .Public() .toAttributes(), f.newParameterizedType( context.resolve(Class.class), context.resolve(model.getSymbol())), f.newSimpleName("getSupportedType"), //$NON-NLS-1$ Collections.emptyList(), Arrays.asList(new Statement[] { new TypeBuilder(f, context.resolve(model.getSymbol())) .dotClass() .toReturnStatement() })); return decl; }
private void emit() throws IOException { ClassDeclaration decl = f.newClassDeclaration( new JavadocBuilder(f) .inline("Supports binary stream for {0}.", //$NON-NLS-1$ d -> d.linkType(context.resolve(model.getSymbol()))) .toJavadoc(), new AttributeBuilder(f) .Public() .toAttributes(), context.getTypeName(), Collections.emptyList(), null, Collections.singletonList(f.newParameterizedType( context.resolve(DataModelStreamSupport.class), context.resolve(model.getSymbol()))), createMembers()); context.emit(decl); }
private void emit() throws IOException { ClassDeclaration decl = f.newClassDeclaration( new JavadocBuilder(f) .text(Messages.getString("CsvSupportEmitter.javadocClass"), //$NON-NLS-1$ context.getTypeName(model.getSymbol())) .toJavadoc(), new AttributeBuilder(f) .Public() .toAttributes(), context.getTypeName(), Collections.emptyList(), null, Collections.singletonList(f.newParameterizedType( context.resolve(DataModelStreamSupport.class), context.resolve(model.getSymbol()))), createMembers()); context.emit(decl); }
private void emit() throws IOException { ClassDeclaration decl = f.newClassDeclaration( new JavadocBuilder(f) .inline(Messages.getString("JdbcSupportEmitter.javadocClass"), //$NON-NLS-1$ d -> d.linkType(context.resolve(model.getSymbol()))) .toJavadoc(), new AttributeBuilder(f) .Public() .toAttributes(), context.getTypeName(), Collections.emptyList(), null, Collections.singletonList(f.newParameterizedType( context.resolve(DataModelJdbcSupport.class), context.resolve(model.getSymbol()))), createMembers()); context.emit(decl); }
private void emit() throws IOException { Class<?> superClass = isHadoopConfRequired() ? ConfigurableBinaryStreamFormat.class : BinaryStreamFormat.class; ClassDeclaration decl = f.newClassDeclaration( new JavadocBuilder(f) .inline("CSV format for {0}.", d -> d.linkType(context.resolve(model.getSymbol()))) .toJavadoc(), new AttributeBuilder(f) .Public() .toAttributes(), context.getTypeName(), f.newParameterizedType( context.resolve(superClass), context.resolve(model.getSymbol())), Collections.emptyList(), createMembers()); context.emit(decl); }