private void writeModel() { writer.writeStartElement("model"); Service root = model.getRoot(); if (root != null) { writer.writeElement("root", getServiceRef(root)); } writer.writeStartElement("types"); model.types().forEach(this::writeType); writer.writeEndElement(); writer.writeStartElement("services"); model.services().forEach(this::writeService); writer.writeEndElement(); writer.writeStartElement("documents"); model.documents().forEach(this::writeDocument); writer.writeEndElement(); writer.writeEndElement(); }
private void writeModel() { writer.writeStartObject(); Service root = model.getRoot(); if (root != null) { writer.write("root", getServiceRef(root)); } writer.writeStartArray("types"); model.types().forEach(this::writeType); writer.writeEnd(); writer.writeStartArray("services"); model.services().forEach(this::writeService); writer.writeEnd(); writer.writeStartArray("documents"); model.documents().forEach(this::writeDocument); writer.writeEnd(); writer.writeEnd(); }
Service root = model.getRoot(); if (root != null) { System.err.println(
boolean isRoot = service == service.getModel().getRoot();
private void generateGetMethod(Method method) { Parameter mainParameter = jaxrsGeneratorUtils.getMainUpdateParameter(method); if (mainParameter == null) { throw new IllegalStateException("Method \"" + method + "\" doesn't have any struct parameter"); } // Most "Get" methods return the type that is declared in the model, but the root resource needs to return // "Response", because it has to be able to return the type declared in the model and also the XML schema and // the RSDL. Service service = method.getDeclaringService(); boolean isRoot = service == service.getModel().getRoot(); javaBuffer.addImport(GET.class); javaBuffer.addLine("@GET"); if (isRoot) { javaBuffer.addImport(Response.class); addResponseReturnMethod("get()"); } else { Type mainType = mainParameter.getType(); JavaTypeReference mainTypeReference = schemaNames.getXjcTypeReference(mainType); javaBuffer.addImports(mainTypeReference.getImports()); //add doGet() method with default implementation generateDoGetMethod(mainParameter, mainTypeReference); generateDoc(method); javaBuffer.addLine(); //add get() method addMethod(mainTypeReference.getText(), "get()"); } javaBuffer.addLine(); }