org.raml.v2.api.model.v10.datamodel.StringTypeDeclaration Java Examples
The following examples show how to use
org.raml.v2.api.model.v10.datamodel.StringTypeDeclaration.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: UnionTypesHelper.java From raml-java-tools with Apache License 2.0 | 6 votes |
private static Map<Class<? extends TypeDeclaration>, Integer> getPriorityTypeMap() { return new ImmutableMap.Builder<Class<? extends TypeDeclaration>, Integer>() .put(NullTypeDeclaration.class, 1) .put(BooleanTypeDeclaration.class, 2) .put(IntegerTypeDeclaration.class, 3) .put(NumberTypeDeclaration.class, 4) .put(DateTypeDeclaration.class, 5) .put(TimeOnlyTypeDeclaration.class, 6) .put(DateTimeOnlyTypeDeclaration.class, 7) .put(DateTimeTypeDeclaration.class, 8) .put(StringTypeDeclaration.class, 9) .put(ObjectTypeDeclaration.class, 10) .put(ArrayTypeDeclaration.class, 11) .put(UnionTypeDeclaration.class, 12) .put(FileTypeDeclaration.class, 13) .put(AnyTypeDeclaration.class, 14) .build(); }
Example #2
Source File: PojoToRamlImplTest.java From raml-java-tools with Apache License 2.0 | 6 votes |
@Test public void enumeration() throws Exception { PojoToRamlImpl pojoToRaml = new PojoToRamlImpl(FieldClassParser.factory(), AdjusterFactory.NULL_FACTORY); Result types = pojoToRaml.classToRaml(SimpleEnum.class); Api api = createApi(types); List<TypeDeclaration> buildTypes = api.types(); assertEquals(1, buildTypes.size()); assertEquals("SimpleEnum", buildTypes.get(0).name()); assertArrayEquals(new String[] {"ONE", "TWO"}, ((StringTypeDeclaration) buildTypes.get(0)).enumValues().toArray(new String[0])); Emitter emitter = new Emitter(); emitter.emit(api); }
Example #3
Source File: RJP10V2RamlRootTest.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Test public void ramlRootShouldReflectDataTypesFromAllLibraries() { Map<String, RamlDataType> dataTypes = ramlRoot.getTypes(); // this data type is defined in library that is referenced in another // library (and not in a root raml) ObjectTypeDeclaration albumDataType = (ObjectTypeDeclaration) dataTypes.get("Album").getType(); assertThat(albumDataType.displayName().value(), equalTo("Album")); assertThat(albumDataType.type(), equalTo("object")); StringTypeDeclaration title = (StringTypeDeclaration) albumDataType.properties().get(0); assertThat(title.displayName().value(), equalTo("title")); assertThat(title.example().value(), equalTo("Nevermind")); assertThat(title.minLength(), equalTo(1)); assertThat(title.maxLength(), equalTo(999)); StringTypeDeclaration artist = (StringTypeDeclaration) albumDataType.properties().get(1); assertThat(artist.name(), equalTo("artist")); assertThat(artist.required(), equalTo(true)); StringTypeDeclaration studio = (StringTypeDeclaration) albumDataType.properties().get(2); assertThat(studio.name(), equalTo("studio")); assertThat(studio.required(), equalTo(false)); IntegerTypeDeclaration year = (IntegerTypeDeclaration) albumDataType.properties().get(3); assertThat(year.name(), equalTo("year")); assertThat(year.example().value(), equalTo("1991")); assertThat(year.required(), equalTo(false)); }
Example #4
Source File: RJP10V2RamlRootTest.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Test public void ramlRootShouldReflectDataTypesFromLibraries() { Map<String, RamlDataType> dataTypes = ramlRoot.getTypes(); ObjectTypeDeclaration personDataType = (ObjectTypeDeclaration) dataTypes.get("Song").getType(); assertThat(personDataType.displayName().value(), equalTo("Song")); assertThat(personDataType.type(), equalTo("object")); StringTypeDeclaration title = (StringTypeDeclaration) personDataType.properties().get(0); assertThat(title.displayName().value(), equalTo("title")); assertThat(title.example().value(), equalTo("Smells Like Teen Spirit")); assertThat(title.minLength(), equalTo(5)); assertThat(title.maxLength(), equalTo(999)); StringTypeDeclaration artist = (StringTypeDeclaration) personDataType.properties().get(1); assertThat(artist.name(), equalTo("artist")); assertThat(artist.required(), equalTo(true)); ObjectTypeDeclaration album = (ObjectTypeDeclaration) personDataType.properties().get(2); assertThat(album.name(), equalTo("album")); assertThat(album.required(), equalTo(false)); IntegerTypeDeclaration year = (IntegerTypeDeclaration) personDataType.properties().get(3); assertThat(year.name(), equalTo("year")); assertThat(year.example().value(), equalTo("1991")); assertThat(year.required(), equalTo(false)); }
Example #5
Source File: RJP10V2RamlRootTest.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Test public void ramlRootShouldReflectDataTypes() { Map<String, RamlDataType> personType = ramlRoot.getTypes(); ObjectTypeDeclaration personDataType = (ObjectTypeDeclaration) personType.get("Person").getType(); assertThat(personDataType.displayName().value(), equalTo("Person")); assertThat(personDataType.type(), equalTo("object")); StringTypeDeclaration testXProp = (StringTypeDeclaration) personDataType.properties().get(0); assertThat(testXProp.displayName().value(), equalTo("testX")); assertThat(testXProp.defaultValue(), equalTo("def_value")); assertThat(testXProp.minLength(), equalTo(3)); assertThat(testXProp.maxLength(), equalTo(10)); ArrayTypeDeclaration testY = (ArrayTypeDeclaration) personDataType.properties().get(1); assertThat(testY.description().value(), equalTo("array attribute")); assertThat(testY.example().value(), endsWith("[\n\"a\",\n\"b\"\n]")); assertThat(testY.items().type(), equalTo("string")); assertThat(testY.minItems(), equalTo(2)); assertThat(testY.maxItems(), equalTo(5)); ObjectTypeDeclaration managerDataType = (ObjectTypeDeclaration) personType.get("Manager").getType(); assertThat(managerDataType.type(), equalTo("Person")); ArrayTypeDeclaration personsDataType = (ArrayTypeDeclaration) personType.get("Persons").getType(); assertThat(personsDataType.type(), equalTo("array")); assertThat(personsDataType.items().type(), equalTo("Person")); }
Example #6
Source File: RJP10V2RamlHeader.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMaxLength() { if (header instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) header).maxLength(); } return null; }
Example #7
Source File: RJP10V2RamlHeader.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMinLength() { if (header instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) header).minLength(); } return null; }
Example #8
Source File: RJP10V2RamlHeader.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public String getPattern() { if (header instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) header).pattern(); } return null; }
Example #9
Source File: RJP10V2RamlFormParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMaxLength() { if (formParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) formParameter).maxLength(); } return null; }
Example #10
Source File: RJP10V2RamlFormParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMinLength() { if (formParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) formParameter).minLength(); } return null; }
Example #11
Source File: RJP10V2RamlFormParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public String getPattern() { if (formParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) formParameter).pattern(); } return null; }
Example #12
Source File: RJP10V2RamlUriParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMaxLength() { if (uriParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) uriParameter).maxLength(); } return null; }
Example #13
Source File: RJP10V2RamlUriParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMinLength() { if (uriParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) uriParameter).minLength(); } return null; }
Example #14
Source File: RJP10V2RamlUriParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public String getPattern() { if (uriParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) uriParameter).pattern(); } return null; }
Example #15
Source File: RJP10V2RamlQueryParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public String getPattern() { if (queryParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) queryParameter).pattern(); } return null; }
Example #16
Source File: RJP10V2RamlQueryParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMaxLength() { if (queryParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) queryParameter).maxLength(); } return null; }
Example #17
Source File: RJP10V2RamlQueryParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public Integer getMinLength() { if (queryParameter instanceof StringTypeDeclaration) { return ((StringTypeDeclaration) queryParameter).minLength(); } return null; }
Example #18
Source File: RJP10V2RamlQueryParameter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public String getRawType() { if (queryParameter instanceof StringTypeDeclaration && "string".equalsIgnoreCase(queryParameter.type())) { List<String> items = ((StringTypeDeclaration) queryParameter).enumValues(); if (!items.isEmpty()) { return NamingHelper.convertToClassName(queryParameter.name()); } } return queryParameter.type(); }
Example #19
Source File: StringTypeInterpreter.java From springmvc-raml-plugin with Apache License 2.0 | 5 votes |
@Override public RamlInterpretationResult interpret(RamlRoot document, TypeDeclaration type, JCodeModel builderModel, boolean property) { RamlInterpretationResult result = new RamlInterpretationResult(type.required()); if (type instanceof StringTypeDeclaration) { StringTypeDeclaration stringType = (StringTypeDeclaration) type; // do stringy stuff - enums and stuff. RamlTypeValidations validations = result.getValidations(); validations.withPattern(stringType.pattern()); validations.withLenghts(stringType.minLength(), stringType.maxLength()); // Create and handle Enums here if (stringType.enumValues() != null && !stringType.enumValues().isEmpty()) { // We have an enum. we need to create it and set it String enumName = stringType.type(); if ("string".equalsIgnoreCase(enumName)) { enumName = stringType.name(); } if ("string".equalsIgnoreCase(enumName) || enumName.contains("/")) { // enumName is either a string or media type enumName = DEFAULT_ENUM_NAME; } EnumBuilder builder = new EnumBuilder(builderModel, enumName); builder.withEnums(stringType.enumValues(), String.class); result.setBuilder(builder); result.setCodeModel(builderModel); } } if (result.getBuilder() == null) { result.setResolvedClass(CodeModelHelper.findFirstClassBySimpleName(builderModel, "java.lang.String")); } return result; }
Example #20
Source File: EnumerationTypeHandler.java From raml-java-tools with Apache License 2.0 | 5 votes |
List pullEnumValues(TypeDeclaration typeDeclaration) { if ( typeDeclaration instanceof IntegerTypeDeclaration ) { return ((IntegerTypeDeclaration)typeDeclaration).enumValues(); } else if (typeDeclaration instanceof NumberTypeDeclaration) { return ((NumberTypeDeclaration)typeDeclaration).enumValues(); } else { return ((StringTypeDeclaration)typeDeclaration).enumValues(); } }
Example #21
Source File: StringTypeInterpreter.java From springmvc-raml-plugin with Apache License 2.0 | 4 votes |
@Override public Set<Class<? extends TypeDeclaration>> getSupportedTypes() { return Collections.singleton(StringTypeDeclaration.class); }
Example #22
Source File: Main.java From raml-java-tools with Apache License 2.0 | 4 votes |
public static void main(String[] args) throws Exception { Api api = document() .baseUri("http:fun.com/fun") .title("Hello!") .version("1.0beta6") .withTypes( TypeDeclarationBuilder.typeDeclaration("Foo").ofType( TypeBuilder.type("object") .withFacets(FacetBuilder.facet("required").ofType("boolean")) .withAnnotations(AnnotationBuilder.annotation("Foo") .withProperties(PropertyValueBuilder.property("time", "2022-02-02"), PropertyValueBuilder.propertyOfArray("count", 1,2))) ), TypeDeclarationBuilder.typeDeclaration("EnumFoo").ofType(TypeBuilder.type().enumValues("UN", "DEUX")), TypeDeclarationBuilder.typeDeclaration("EnumNum").ofType(TypeBuilder.type("integer").enumValues(1,2)), TypeDeclarationBuilder.typeDeclaration("Goo").ofType(TypeBuilder.type("object")), TypeDeclarationBuilder.typeDeclaration("GooWithExamples").ofType(TypeBuilder.type("object") .withProperty(TypePropertyBuilder.property("count", "integer"),TypePropertyBuilder.property("realType", "Foo")) .withExamples(ExamplesBuilder.example("one").withPropertyValue(PropertyValueBuilder.property("count", 1))) ), TypeDeclarationBuilder.typeDeclaration("GooWithExample").ofType(TypeBuilder.type("object") .withProperty( TypePropertyBuilder.property("count", "integer"), TypePropertyBuilder.property("counts", TypeBuilder.arrayOf(TypeBuilder.type("string"))), TypePropertyBuilder.property("realType", "Foo")) .withExample(ExamplesBuilder.singleExample().strict(false).withPropertyValue(PropertyValueBuilder.property("count", 1))) ) ) .withAnnotationTypes( AnnotationTypeBuilder.annotationType("Foo").withProperty(property("time", "date-only")).withProperty(property("count", "integer[]")) ).buildModel(); /* .withResources( resource("/no") .description("fooo!!!") .displayName("Mama!!!") .with( method("get") .description("fooofooofooo") .withQueryParameter(ParameterBuilder.parameter("apaaa").ofType("integer")) .withAnnotations(AnnotationBuilder.annotation("Foo").withProperties( PropertyValueBuilder.property("time", "2022-02-02"), PropertyValueBuilder.propertyOfArray("count", 7))) .withBodies( BodyBuilder.body("application/json") .ofType(TypeBuilder.type("Foo", "Goo") .withProperty(TypePropertyBuilder.property("foo", "string")) ) ).withResponses(response(200)) ) */ // ).buildModel(); StringTypeDeclaration stdzero = (StringTypeDeclaration) api.types().get(0); System.err.println(stdzero.enumValues()); System.err.println(api.types().get(0).name()); System.err.println(); Emitter emitter = new Emitter(); emitter.emit(api); StringWriter writer = new StringWriter(); emitter.emit(api, writer); RamlModelResult re_read = new RamlModelBuilder().buildApi(new StringReader(writer.toString()), "."); if (re_read.hasErrors()) { for (ValidationResult validationResult : re_read.getValidationResults()) { System.err.println(validationResult); } } StringTypeDeclaration std = (StringTypeDeclaration) re_read.getApiV10().types().get(0); System.err.println(std.enumValues()); ObjectTypeDeclaration third = (ObjectTypeDeclaration) re_read.getApiV10().types().get(3); System.err.println(third.properties().get(0).name()); System.err.println(third.properties().get(0).type()); System.err.println(third.properties().get(1).name()); System.err.println(third.properties().get(1).type()); System.err.println(third.properties().get(1).parentTypes().get(0).type()); }
Example #23
Source File: EnumerationTypeHandler.java From raml-java-tools with Apache License 2.0 | 4 votes |
@Override public Optional<CreationResult> create(GenerationContext generationContext, CreationResult preCreationResult) { Class cls = (typeDeclaration instanceof StringTypeDeclaration)?String.class:Number.class; FieldSpec.Builder field = FieldSpec.builder(ClassName.get(cls), "name").addModifiers(Modifier.PROTECTED, Modifier.FINAL); EnumerationPluginContext enumerationPluginContext = new EnumerationPluginContextImpl(generationContext, preCreationResult); ClassName className = preCreationResult.getJavaName(EventType.INTERFACE); TypeSpec.Builder enumBuilder = TypeSpec.enumBuilder(className); enumBuilder.addField(field.build()) .addModifiers(Modifier.PUBLIC, Modifier.STATIC) .addMethod( MethodSpec.constructorBuilder().addParameter(ClassName.get(cls), "name") .addStatement("this.$N = $N", "name", "name") .build() ); enumBuilder = generationContext.pluginsForEnumerations(typeDeclaration).classCreated(enumerationPluginContext, typeDeclaration, enumBuilder, EventType.INTERFACE); if ( enumBuilder == null ) { return Optional.absent(); } for (Object value : pullEnumValues(typeDeclaration)) { TypeSpec.Builder enumValueBuilder; if ( value instanceof String) { enumValueBuilder= TypeSpec.anonymousClassBuilder("$S", value); enumValueBuilder = generationContext.pluginsForEnumerations(typeDeclaration).enumValue(enumerationPluginContext, typeDeclaration, enumValueBuilder, (String)value, EventType.INTERFACE); } else { enumValueBuilder= TypeSpec.anonymousClassBuilder("$L", value); enumValueBuilder = generationContext.pluginsForEnumerations(typeDeclaration).enumValue(enumerationPluginContext, typeDeclaration, enumValueBuilder, (Number)value, EventType.INTERFACE); } if ( enumValueBuilder == null ) { continue; } enumBuilder.addEnumConstant(Names.constantName(String.valueOf(value)), enumValueBuilder.build()); } return Optional.of(preCreationResult.withInterface(enumBuilder.build())); }