public JavaFile javaFile(String basePackage) { TypeSpec.Builder apiClass = TypeSpec.classBuilder(className) .addJavadoc("$L\n", trimToEmpty(resource.getDescription())) .addModifiers(Modifier.PUBLIC); apiClass.addFields(fields.stream().map(Field::fieldSpec).collect(toList())); List<AddParamMethod> addParamMethods = methods.stream() .filter(method -> method instanceof AddParamMethod) .map(method -> (AddParamMethod) method) .collect(groupingBy(AddParamMethod::name)).entrySet().stream() .flatMap(entry -> entry.getValue().stream().collect(new FormQueryParamsMerge(this)).stream()) .collect(toList()); apiClass.addMethods(addParamMethods.stream().map(Method::methodSpec).collect(Collectors.toList())); apiClass.addMethods(methods.stream() .filter(method -> !(method instanceof AddParamMethod)).map(Method::methodSpec).collect(toList())); enums.forEach(apiClass::addType); return JavaFile.builder(basePackage + "." + packageName, apiClass.build()).build(); }
protected void createResourceInterface(final Resource resource) throws Exception { final String resourceInterfaceName = Names.buildResourceInterfaceName(resource); final JDefinedClass resourceInterface = context.createResourceInterface(resourceInterfaceName); context.setCurrentResourceInterface(resourceInterface); final String path = strip(resource.getRelativeUri(), "/"); resourceInterface.annotate(Path.class).param(DEFAULT_ANNOTATION_PARAMETER, StringUtils.defaultIfBlank(path, "/")); if (isNotBlank(resource.getDescription())) { resourceInterface.javadoc().add(resource.getDescription()); } addResourceMethods(resource, resourceInterface, path); }
rwadResource.setDescription(resource.getDescription()); rwadResource.setName(resourceName); rwadResource.setResourcePath(resource.getUri());
rwadResource.setDescription(resource.getDescription()); rwadResource.setName(resourceName); rwadResource.setResourcePath(resource.getUri());
rwadResource.setDescription(resource.getDescription()); rwadResource.setName(resourceName); rwadResource.setResourcePath(resource.getUri());
rwadResource.setDescription(resource.getDescription()); rwadResource.setName(resourceName); rwadResource.setResourcePath(resource.getUri());
rwadResource.setDescription(resource.getDescription()); rwadResource.setName(resourceName); rwadResource.setResourcePath(resource.getUri());
StringUtils.defaultIfBlank(path, "/")); if (isNotBlank(resource.getDescription())) resourceInterface.javadoc().add(resource.getDescription());
StringUtils.defaultIfBlank(path, "/")); if (isNotBlank(resource.getDescription())) { resourceInterface.javadoc().add(resource.getDescription());
private void resource(Resource resource) { locator.resource(resource); checker.resourcePattern(resource); checker.uriParameters(resource.getUriParameters().keySet(), resource); checker.parameters(resource.getBaseUriParameters(), BASE_URI); checker.parameters(resource.getUriParameters(), URI); checker.description(resource.getDescription()); checker.description(resource.getBaseUriParameters(), BASE_URI); checker.description(resource.getUriParameters(), URI); checker.empty(resource); for (final Resource res : resource.getResources().values()) { resource(res); } for (final Action action : resource.getActions().values()) { action(action); } }