From 4ff9e0626a133d454fa0227effcbde8715ef95b9 Mon Sep 17 00:00:00 2001 From: Grahame Grieve Date: Sun, 16 Jun 2019 05:59:13 +1000 Subject: [PATCH] update graphql generation - add note about types.graphql & fix typo --- .../hl7/fhir/r4/utils/NarrativeRemover.java | 39 +++++++++++++++++++ .../fhir/r5/utils/GraphQLSchemaGenerator.java | 3 +- 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/NarrativeRemover.java diff --git a/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/NarrativeRemover.java b/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/NarrativeRemover.java new file mode 100644 index 000000000..0d3fbe950 --- /dev/null +++ b/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/NarrativeRemover.java @@ -0,0 +1,39 @@ +package org.hl7.fhir.r4.utils; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; + +import org.hl7.fhir.r4.formats.JsonParser; +import org.hl7.fhir.r4.model.DomainResource; +import org.hl7.fhir.r4.model.Resource; + +public class NarrativeRemover { + + public static void main(String[] args) { + execute(new File(args[0])); + + } + + private static void execute(File folder) { + for (File f : folder.listFiles()) { + if (f.isDirectory()) + execute(f); + else { + System.out.println(f.getAbsolutePath()); + try { + Resource r = new JsonParser().parse(new FileInputStream(f)); + if (r instanceof DomainResource) { + DomainResource d = (DomainResource) r; + d.setText(null); + new JsonParser().compose(new FileOutputStream(f), d); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + } + +} diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/GraphQLSchemaGenerator.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/GraphQLSchemaGenerator.java index a556c475e..e89eaa8b3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/GraphQLSchemaGenerator.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/GraphQLSchemaGenerator.java @@ -96,6 +96,7 @@ public class GraphQLSchemaGenerator { public void generateResource(OutputStream stream, StructureDefinition sd, List parameters, EnumSet operations) throws IOException, FHIRException { BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(stream)); writer.write("# FHIR GraphQL Schema. Version "+Constants.VERSION+"\r\n\r\n"); + writer.write("# import the types from 'types.graphql'\r\n\r\n"); generateType(writer, sd); if (operations.contains(FHIROperationType.READ)) generateIdAccess(writer, sd.getName()); @@ -382,7 +383,7 @@ public class GraphQLSchemaGenerator { private void generatePrimitive(BufferedWriter writer, StructureDefinition sd) throws IOException, FHIRException { String gqlName = getGqlname(sd.getName()); if (gqlName.equals(sd.getName())) { - writer.write("Scalar "); + writer.write("scalar "); writer.write(sd.getName()); writer.write(" # JSON Format: "); writer.write(getJsonFormat(sd));