@Override public TypeBuilder getRamlSyntax() { return TypeBuilder.type(ramlSyntax); }
@Override public TypeBuilder getRamlSyntax() { return TypeBuilder.type(actualRamlName); }
public ParameterBuilder ofType(String name) { this.type = TypeBuilder.type(name); return this; }
@Override public TypeBuilder getRamlSyntax() { return TypeBuilder.type(actualRamlName); }
public static TypeBuilder ramlStringType() { return TypeBuilder.type("string"); } }
public static TypePropertyBuilder property(String name, String type) { return new TypePropertyBuilder(name, TypeBuilder.type(type)); }
private TypeBuilder buildSuperType(Class<?> clazz, Map<String, TypeDeclarationBuilder> builtTypes) { ClassParser parser = classParserFactory.createParser(clazz); Collection<Type> types = parser.parentClasses(clazz); ArrayList<String> typeNames = new ArrayList<>(); if ( types != null ) { for (Type supertype : types) { // Currently a workaround. if ( supertype instanceof Class && ((Class)supertype).getPackage().getName().startsWith("java.")) { continue; } RamlType ramlType = exploreType(parser, supertype); final String subSimpleName = adjusterFactory.createAdjuster(ramlType.type()).adjustTypeName(ramlType.type(), ramlType.type().getSimpleName()); if (!builtTypes.containsKey(subSimpleName)) { handleSingleType(ramlType.type(), builtTypes); } typeNames.add(subSimpleName); } } TypeBuilder builder; if ( typeNames.isEmpty()) { builder = TypeBuilder.type("object"); } else { builder = TypeBuilder.type(typeNames.toArray(new String[0])); } return builder; }
@Override public TypeBuilder name(Class<?> clazz) { RamlAdjuster adjuster = this.adjusterFactory.createAdjuster(clazz); ClassParser parser = classParserFactory.createParser(clazz); RamlType type = RamlTypeFactory.forType(clazz, parser, adjusterFactory); if ( type.isScalar()) { return type.getRamlSyntax(); } final String simpleName = adjuster.adjustTypeName(clazz, clazz.getSimpleName()); return TypeBuilder.type(simpleName); }
private TypeDeclarationBuilder handleEnum(final RamlType quickType, final RamlAdjuster adjuster) { Class<? extends Enum> c = (Class<? extends Enum>) quickType.type(); TypeBuilder typeBuilder = TypeBuilder.type().enumValues( FluentIterable.of(c.getEnumConstants()).transform(new Function<Enum, String>() { @Nullable @Override public String apply(@Nullable Enum o) { return adjuster.adjustEnumValue(quickType.type(), o.name()); } }).toArray(String.class) ); adjuster.adjustType(quickType.type(), quickType.getRamlSyntax().id(), typeBuilder); return TypeDeclarationBuilder.typeDeclaration(quickType.getRamlSyntax().id()).ofType(typeBuilder); }
private void writeFormParam(RamlResourceMethod method, BodyBuilder body) throws IOException { TypeBuilder typeBuilder = TypeBuilder.type("object"); List<RamlFormParameter> formData = method.getFormParameters(); for (RamlFormParameter formDatum : formData) { typeBuilder.withProperty(TypePropertyBuilder.property(formDatum.getName(), RamlTypes.fromType(formDatum.getType()) .getRamlSyntax())); } body.ofType(typeBuilder); }
private void writeMultiPartFormData(RamlResourceMethod method, BodyBuilder body) throws IOException { TypeBuilder typeBuilder = TypeBuilder.type("object"); List<RamlMultiFormDataParameter> formData = method.getMultiFormDataParameter(); for (RamlMultiFormDataParameter formDatum : formData) { Type type = formDatum.getPartEntity().getType(); TypeHandler typeHandler = pickTypeHandler(type); typeBuilder.withProperty(TypePropertyBuilder.property(formDatum.getName(), typeHandler.writeType(typeRegistry, formDatum.getPartEntity()))); } body.ofType(typeBuilder); }