/** * Writes a "create project" request. * * @param writer project writer. * @param project project to create. * @throws IllegalArgumentException if some project fields are not configured. * @throws JSONException if IO error occurs. */ public static void writeProject(JSONWriter writer, Project project) throws IllegalArgumentException, JSONException { /* Validate project */ if (project.getName() == null) throw new IllegalArgumentException("Project name must be set to create a new project"); if (project.getIdentifier() == null) throw new IllegalArgumentException("Project identifier must be set to create a new project"); writeProject(project, writer); }
public static void writeProject(Project project, final JSONWriter writer) throws JSONException { JsonOutput.addIfNotNull(writer, "id", project.getId()); JsonOutput.addIfNotNull(writer, "identifier", project.getIdentifier()); JsonOutput.addIfNotNull(writer, "name", project.getName()); JsonOutput.addIfNotNull(writer, "description", project.getDescription()); JsonOutput.addIfNotNull(writer, "homepage", project.getHomepage()); addIfNotNullFull(writer, "created_on", project.getCreatedOn()); addIfNotNullFull(writer, "updated_on", project.getUpdatedOn()); JsonOutput.addIfNotNull(writer, "parent_id", project.getParentId()); JsonOutput.addArrayIfNotNull(writer, "trackers", project.getTrackers(), TRACKER_WRITER); }