private List<Resource> resolveNestedResources(final Resource resource) { final List<Resource> resources = new ArrayList<>(); resources.add(resource); for (final Resource element : resource.getChildren()) { resources.addAll(resolveNestedResources(element)); } return resources; } }
private void createSubResource(final org.raml.model.Resource parentRamlResource, final List<Resource> children) { final ImmutableMap.Builder<String, org.raml.model.Resource> ramlSubResources = ImmutableMap.builder(); for (final Resource childResource : children) { final org.raml.model.Resource ramlResource = createRamlResource(childResource, prefixPath(childResource)); ramlResource.setParentUri(parentRamlResource.getUri()); ramlSubResources.put(prefixPath(childResource), ramlResource); createSubResource(ramlResource, childResource.getChildren()); } parentRamlResource.setResources(ramlSubResources.build()); }
private org.raml.model.Resource createTopLevelResource(final API singleApi) { final Resource topLevelResource = singleApi.getResource(); if (topLevelResource != null) { final org.raml.model.Resource ramlResource = createRamlResource(topLevelResource, extractTrailingRoot(singleApi)); createSubResource(ramlResource, topLevelResource.getChildren()); return ramlResource; } return null; }