123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package model.personnality;
-
- import com.github.cliftonlabs.json_simple.JsonObject;
- import com.github.cliftonlabs.json_simple.Jsonable;
-
- import java.io.IOException;
- import java.io.StringWriter;
- import java.io.Writer;
- import java.nio.charset.StandardCharsets;
-
- import static api.JsonKeys.KEY_DESCRIPTION;
- import static api.JsonKeys.KEY_NAME;
-
- public class Trait implements Jsonable {
-
- private final String fName;
- private final String fDescription;
-
- public Trait(String iName, String iDescription){
- fName = iName;
- fDescription = iDescription;
- }
-
- // ------------------------------------------------------------------
- // Jsonable Implementation
- // ------------------------------------------------------------------
- public JsonObject asJsonObject(){
- JsonObject vResult = new JsonObject();
- vResult.put(KEY_NAME, fName);
- vResult.put(KEY_DESCRIPTION, fDescription);
- return vResult;
- }
-
- @Override
- public String toJson() {
- final StringWriter writable = new StringWriter();
- try{
- this.toJson(writable);
- }catch(final IOException caught)
- {
- caught.printStackTrace();
- }
- return writable.toString();
- }
-
- @Override
- public void toJson(Writer writable) throws IOException {
-
- writable.write(new String(asJsonObject().toJson().getBytes(StandardCharsets.UTF_8), StandardCharsets.UTF_8));
- }
- }
|