0

I am trying to find a generic solution in GSON for my project. This JSON has been problematic for me...

I have a class System

public class System{
   String systemid;
   String systemname;
   //getter and setter
}

Rest service sends data in one of two below format, now for the second format I am handling it in a generic way as shown in last, can someone please help me to handle both the formats in a generic way in one piece of code, I am stuck on this from past two days now...

[
{
    "atypes": [
        {
            "systemid": "123",
            "systemname": "abc"
        },
        {
            "systemid": "456",
            "systemname": "def"
        },
        {
            "systemid": "789",
            "systemname": "ghi"
        },
        {
            "id": "0123",
            "name": "klm"
        },
        {
            "systemid": "4567",
            "systemname": "nop"
        }
    ]
}

]

Or the second format

[
        {
            "systemid": "123",
            "systemname": "abc"
        },
        {
            "systemid": "456",
            "systemname": "def"
        },
        {
            "systemid": "789",
            "systemname": "ghi"
        },
        {
            "id": "0123",
            "name": "klm"
        },
        {
            "systemid": "4567",
            "systemname": "nop"
        }
]

Now I am handling the last JSON array in the below method, I want to handle both the code in one piece of generic code.

String data = client.executeCommand(Command.GET, new GenericUrl(URL), null);
    System[] tList1 = JsonUtil.jsonArrayToObjectArray(data, System[].class);

which calls a generic piece of code

public static <T> T[] jsonArrayToObjectArray(String data, Class<T[]> tClass) throws Exception {

    return new Gson().fromJson(data, tClass);

}

Please if someone can help me...

Edit: This is different from identifying Json object and json array as here both are json array.

nikhilgupta86
  • 472
  • 3
  • 15
  • Possible duplicate of [Determine whether JSON is a JSONObject or JSONArray](https://stackoverflow.com/questions/6118708/determine-whether-json-is-a-jsonobject-or-jsonarray) – alea Aug 04 '19 at 11:01
  • Not a duplicate of this article, I know how to differentiate between JSONArray and JSON Object. Here the situation is different, both are a JSON array. – nikhilgupta86 Aug 04 '19 at 11:18

0 Answers0