Java tutorial
/* * * Copyright (c) 2015 SERENA Software, Inc. All Rights Reserved. * * This software is proprietary information of SERENA Software, Inc. * Use is subject to license terms. * */ package com.serena.rlc.provider.jira.domain; import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.xml.bind.annotation.XmlRootElement; import java.util.ArrayList; import java.util.List; /** * * @author klee */ @XmlRootElement public class Project extends JiraObject { private static final long serialVersionUID = 1L; private final static Logger logger = LoggerFactory.getLogger(Project.class); private String key; public String getKey() { return key; } public void setKey(String key) { this.key = key; } public static Project parseSingle(String options) { JSONParser parser = new JSONParser(); try { Object parsedObject = parser.parse(options); JSONObject jsonObject = (JSONObject) parsedObject; Project project = parseSingle(jsonObject); return project; } catch (ParseException e) { logger.error("Error while parsing input JSON - " + options, e); } return null; } public static List<Project> parse(String options) { List<Project> list = new ArrayList<>(); JSONParser parser = new JSONParser(); try { Object parsedObject = parser.parse(options); JSONArray array = (JSONArray) parsedObject; for (Object object : array) { Project obj = new Project(); JSONObject jsonObject = (JSONObject) object; obj.setId((String) jsonObject.get("id")); obj.setName((String) jsonObject.get("name")); obj.setKey((String) jsonObject.get("key")); list.add(obj); } } catch (ParseException e) { logger.error("Error while parsing input JSON - " + options, e); } return list; } public static Project parseSingle(JSONObject jsonObject) { Project obj = new Project(); if (jsonObject != null) { obj.setId((String) jsonObject.get("id")); obj.setName((String) jsonObject.get("name")); obj.setKey((String) jsonObject.get("key")); } return obj; } }