package dk.silverbullet.telemed.deleteme; import dk.silverbullet.telemed.questionnaire.Questionnaire; import dk.silverbullet.telemed.questionnaire.expression.Variable; import dk.silverbullet.telemed.questionnaire.node.UnknownNodeException; import dk.silverbullet.telemed.questionnaire.skema.Skema; import dk.silverbullet.telemed.utils.Json; import dk.silverbullet.telemed.utils.Util; public class TestHenrik implements TestSkema { private static String json = "{\n" + // "\n" + // " \"name\":\"Over 18 test\",\n" + // " \"version\":\"0.1\",\n" + // " \"cron\":\"0 12 * * 2,5\",\n" + // " \"startNode\":\"9\",\n" + // " \"endNode\":\"10\",\n" + // " \"nodes\":[\n" + // " {\n" + // "\n" + // " \"IONode\":{\n" + // " \"title\":\"Til lykke, du er jo sund og rask!\",\n" + // " \"nodeName\":\"15\",\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // " \"text\":\"Til lykke, du er jo sund og rask!\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"ButtonElement\":{\n" + // " \"text\":\"Næste\",\n" + // " \"gravity\":\"center\",\n" + // " \"next\":\"10\"\n" + // " }\n" + // " }\n" + // " ]\n" + // " }\n" + // " },\n" + // " {\n" + // "\n" + // " \"IONode\":{\n" + // " \"title\":\"Du skulle nnu spise nogle piratos!\",\n" + // " \"nodeName\":\"16\",\n" + // "\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // " \"text\":\"Du skulle nnu spise nogle piratos!\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"ButtonElement\":{\n" + // " \"text\":\"Næste\",\n" + // " \"gravity\":\"center\",\n" + // " \"next\":\"10\"\n" + // " }\n" + // " }\n" + // " ]\n" + // " }\n" + // " },\n" + // " {\n" + // "\n" + // " \"title\":\"Indtast dit blodtryk\",\n" + // " \"nodeName\":\"13\",\n" + // " \"next\":\"11\",\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // "\n" + // " \"text\":\"Indtast dit blodtryk\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"EditTextElement\":{\n" + // " \"defaultText\":\"\",\n" + // " \"outputName\":\"13#FIELD\"\n" + // "\n" + // " }\n" + // " },\n" + // " {\n" + // " \"ButtonElement\":{\n" + // " \"text\":\"Næste\",\n" + // " \"gravity\":\"center\",\n" + // " \"next\":\"11\"\n" + // " }\n" + // " }\n" + // " ]\n" + // " },\n" + // " {\n" + // " \"IONode\":{\n" + // " \"nodeName\":\"9\",\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // " \"text\":\"Er du over 18 år gammel?\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"TwoButtonElement\":{\n" + // " \"leftText\":\"Ja\",\n" + // " \"leftNext\":\"AN12\",\n" + // " \"rightText\":\"Nej\",\n" + // " \"rightNext\":\"AN14\"\n" + // " }\n" + // " }\n" + // " ]\n" + // " }\n" + // " },\n" + // " {\n" + // " \"AssignmentNode\":{\n" + // " \"nodeName\":\"AN12\",\n" + // " \"next\":12,\n" + // " \"Variable\":{\n" + // " \"name\":\"9#FIELD\",\n" + // " \"value\":\"true\"\n" + // " }\n" + // " }\n" + // " },\n" + // " {\n" + // " \"AssignmentNode\":{\n" + // " \"nodeName\":\"AN14\",\n" + // " \"next\":14,\n" + // " \"Variable\":{\n" + // " \"name\":\"9#FIELD\",\n" + // " \"value\":\"false\"\n" + // " }\n" + // " }\n" + // " },\n" + // " {\n" + // " \"EndNode\":{\n" + // " \"nodeName\":\"10\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"DecisionNode\":{\n" + // " \"nodeName\":\"11\",\n" + // " \"next\":\"15\",\n" + // " \"nextFalse\":\"16\",\n" + // "\n" + // " \"expression\":{\n" + // " \"gt\":{\n" + // " \"left\":{\n" + // " \"type\":\"Integer\",\n" + // " \"value\":130\n" + // " },\n" + // " \"right\":{\n" + // " \"type\":\"name\",\n" + // " \"value\":\"13#FIELD\"\n" + // "\n" + // " }\n" + // " }\n" + // " }\n" + // " }\n" + // " },\n" + // " {\n" + // " \"IONode\":{\n" + // " \"title\":\"Ældre end 18\",\n" + // " \"nodeName\":\"12\",\n" + // "\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // " \"text\":\"Ældre end 18\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"ButtonElement\":{\n" + // " \"text\":\"Næste\",\n" + // " \"gravity\":\"center\",\n" + // " \"next\":\"13\"\n" + // " }\n" + // " }\n" + // " ]\n" + // "\n" + // " }\n" + // " },\n" + // " {\n" + // " \"IONode\":{\n" + // " \"title\":\"Ikke for børn. Kom tilbage når du er blevet voksen!\",\n" + // " \"nodeName\":\"14\",\n" + // " \"elements\":[\n" + // " {\n" + // " \"TextViewElement\":{\n" + // "\n" + // " \"text\":\"Ikke for børn. Kom tilbage når du er blevet voksen!\"\n" + // " }\n" + // " },\n" + // " {\n" + // " \"ButtonElement\":{\n" + // " \"text\":\"Næste\",\n" + // " \"gravity\":\"center\",\n" + // " \"next\":\"10\"\n" + // " }\n" + // " }\n" + // " ]\n" + // " }\n" + // " }\n" + // " ],\n" + // " \"output\":[\n" + // " {\n" + // " \"name\":\"13#FIELD\",\n" + // " \"type\":\"Integer\"\n" + // " },\n" + // " {\n" + // " \"name\":\"9#FIELD\",\n" + // " \"type\":\"Boolean\"\n" + // " }\n" + // " ]\n" + // "}"; public Skema getSkema() { return Json.parse(json, Skema.class); } public Skema getSkema(Questionnaire questionnaire) throws UnknownNodeException { Skema skema = Json.parse(json, Skema.class); skema.link(); skema.setQuestionnaire(questionnaire); for (Variable<?> output : skema.getOutput()) questionnaire.addSkemaVariable(output); return skema; } }