0

I am trying to create a pay load for this body and will do a POST.

{
    "location": {
        "lat": -38.383494,
        "lng": 33.427362
    },
    "accuracy": 50,
    "name": "Frontline house Seattle",
    "phone_number": "(1) 952 893 3937",
    "address": "29, side layout, cohen 09",
    "types": [
        "shoe park",
        "shop"
    ],
    "website": "http://google.com",
    "language": "French-EN"
}

These are the 3 classes I have created

@Getter
@Setter
public class Payload {
    private Location location;
    private int accuracy;
    private String name;
    private String phone_number;
    private String address;
    private List<Types> types;
    private String website;
    private String language;
}

@Getter
@Setter
public class Location {
    private double lat;
    private double lng;
}

@Setter
@Getter
public class Types {
    private String zero;
    private String one;
}

This below will be will be use to do the post

 @Test
    public void createAddress(){
        Location location = new Location(); // Location Class
        location.setLat(-38.383494);
        location.setLng(33.427362);

       Types[] type = new Types[2]; // Type Class


        Payload payload = new Payload();
        payload.setLocation(location); // This is how we will set the Location type class in Payload
        payload.setAccuracy(50);
        payload.setName("Frontline house");
        payload.setPhone_number("(1) 952 893 3937");
        payload.setAddress("29, side layout, cohen 09");
        payload.setTypes();

}

Problem: I am not sure how do I set value for Types to create this payload.I also have a feeling I have declared Types incorrectly. In that class I have declared 2 String variables.

Thanks in advance for your suggestion.

1 Answer 1

1

You don't have to create a seperate class for types, since it's a list just declare it as a list of strings

@Setter @Getter private List<String> types;

The getters and setters for these would be

public List<String> getTypes() { return types; } public void setTypes(List<String> types) { this.types = types; }

In your test

List<String> myList =new ArrayList<String>();
    myList.add("shoe park");
    myList.add("shop");

    payload.setTypes(myList);
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.