From 52b0f1e31bcfc4887f05990c9d951888960dbdd3 Mon Sep 17 00:00:00 2001 From: LO Kam Tao Leo Date: Thu, 3 Nov 2022 19:56:58 +0000 Subject: [PATCH] Parsing TIPLOC data --- src/main/java/org/leolo/nrdatad/model/Tiploc.java | 75 ++++++++++++++++++++++ .../java/org/leolo/nrdatad/model/TiplocTest.java | 19 ++++++ 2 files changed, 94 insertions(+) create mode 100644 src/main/java/org/leolo/nrdatad/model/Tiploc.java create mode 100644 src/test/java/org/leolo/nrdatad/model/TiplocTest.java diff --git a/src/main/java/org/leolo/nrdatad/model/Tiploc.java b/src/main/java/org/leolo/nrdatad/model/Tiploc.java new file mode 100644 index 0000000..512ed16 --- /dev/null +++ b/src/main/java/org/leolo/nrdatad/model/Tiploc.java @@ -0,0 +1,75 @@ +package org.leolo.nrdatad.model; + +import org.json.JSONObject; + +public class Tiploc { + private String tiplocCode; + private String nalco; + private String stanox; + private String description; + private String tpsDescription; + private String crsCode; + + public String getTiplocCode() { + return tiplocCode; + } + + public void setTiplocCode(String tiplocCode) { + this.tiplocCode = tiplocCode; + } + + public String getNalco() { + return nalco; + } + + public void setNalco(String nalco) { + this.nalco = nalco; + } + + public String getStanox() { + return stanox; + } + + public void setStanox(String stanox) { + this.stanox = stanox; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getTpsDescription() { + return tpsDescription; + } + + public void setTpsDescription(String tpsDescription) { + this.tpsDescription = tpsDescription; + } + + public String getCrsCode() { + return crsCode; + } + + public void setCrsCode(String crsCode) { + this.crsCode = crsCode; + } + + public static Tiploc parseJSON(String json){ + return parseJSON(new JSONObject(json)); + } + + public static Tiploc parseJSON(JSONObject obj){ + Tiploc tiploc = new Tiploc(); + tiploc.tpsDescription = obj.optString("tps_description"); + tiploc.crsCode = obj.optString("crs_code"); + tiploc.description = obj.optString("description"); + tiploc.stanox = obj.optString("stanox"); + tiploc.tiplocCode = obj.optString("tiploc_code"); + tiploc.nalco = obj.optString("nalco"); + return tiploc; + } +} diff --git a/src/test/java/org/leolo/nrdatad/model/TiplocTest.java b/src/test/java/org/leolo/nrdatad/model/TiplocTest.java new file mode 100644 index 0000000..76ae320 --- /dev/null +++ b/src/test/java/org/leolo/nrdatad/model/TiplocTest.java @@ -0,0 +1,19 @@ +package org.leolo.nrdatad.model; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class TiplocTest { + @Test public void basicTest(){ + String json = "{\"tps_description\":\"ABERDEEN\",\"crs_code\":\"ABD\",\"description\":\"ABERDEEN\"," + + "\"stanox\":\"02071\",\"tiploc_code\":\"ABRDEEN\",\"transaction_type\":\"Create\",\"nalco\":\"897600\"}"; + Tiploc tiploc = Tiploc.parseJSON(json); + assertEquals("ABERDEEN", tiploc.getTpsDescription()); + assertEquals("ABD", tiploc.getCrsCode()); + assertEquals("ABERDEEN", tiploc.getDescription()); + assertEquals("02071", tiploc.getStanox()); + assertEquals("ABRDEEN", tiploc.getTiplocCode()); + assertEquals("897600", tiploc.getNalco()); + } +} \ No newline at end of file