Example usage for javax.json Json createObjectBuilder

List of usage examples for javax.json Json createObjectBuilder

Introduction

In this page you can find the example usage for javax.json Json createObjectBuilder.

Prototype

public static JsonObjectBuilder createObjectBuilder() 

Source Link

Document

Creates a JSON object builder

Usage

From source file:org.kuali.student.ap.coursesearch.service.impl.CourseDetailsViewHelperServiceImpl.java

/**
 * @see org.kuali.student.ap.coursesearch.service.CourseDetailsViewHelperService#createAddSectionEvent(String, String, String, String, java.util.List, javax.json.JsonObjectBuilder)
 *///from  w  w w.ja  va2 s .c  o  m
@Override
public JsonObjectBuilder createAddSectionEvent(String termId, String courseOfferingCode,
        String courseOfferingId, String formatOfferingId, List<ActivityOfferingDetailsWrapper> activities,
        JsonObjectBuilder eventList) {
    JsonObjectBuilder addEvent = Json.createObjectBuilder();
    addEvent.add("courseOfferingId", courseOfferingId);
    addEvent.add("termId", termId.replace(".", "-"));
    addEvent.add("courseOfferingCode", courseOfferingCode);
    addEvent.add("formatOfferingId", formatOfferingId);
    addEvent.add("uid", UUID.randomUUID().toString());

    // Create json array of activity to add and add it to event
    String regGroupCode = "";
    JsonArrayBuilder activityEvents = Json.createArrayBuilder();
    for (ActivityOfferingDetailsWrapper activity : activities) {
        JsonObjectBuilder activityEvent = Json.createObjectBuilder();
        String instructor = "";
        String days = "";
        String time = "";
        String location = "";
        String classUrl = "";

        // activities in the reg group will have the same reg group code.
        regGroupCode = activity.getRegGroupCode();

        // if activity value is null use empty string
        if (activity.getInstructorName() != null)
            instructor = activity.getInstructorName();
        if (activity.getDays() != null)
            days = activity.getDays();
        if (activity.getTime() != null)
            time = activity.getTime();
        if (activity.getLocation() != null)
            location = activity.getLocation();
        if (activity.getClassUrl() != null)
            classUrl = activity.getClassUrl();

        // Add data to json for activity
        activityEvent.add("activityOfferingId", activity.getActivityOfferingId());
        activityEvent.add("activityFormatName", activity.getActivityFormatName());
        activityEvent.add("activityOfferingCode", activity.getActivityOfferingCode());

        activityEvent.add("instructor", instructor);
        activityEvent.add("days", days);
        activityEvent.add("time", time);
        activityEvent.add("location", location);
        activityEvent.add("currentEnrollment", activity.getCurrentEnrollment());
        activityEvent.add("maxEnrollment", activity.getMaxEnrollment());
        activityEvent.add("honors", activity.isHonors());
        activityEvent.add("classUrl", classUrl);
        JsonArrayBuilder jsonArrayBuilder = Json.createArrayBuilder();

        activityEvent.add("activityOfferingRequisites", activity.isHasActivityOfferingRequisites());
        activityEvents.add(activityEvent);
    }
    addEvent.add("activities", activityEvents);
    addEvent.add("regGroupCode", regGroupCode);

    eventList.add("COURSE_SECTION_ADDED", addEvent);
    return eventList;
}

From source file:org.hyperledger.fabric_ca.sdk.HFCAClient.java

/**
 * Generate certificate revocation list.
 *
 * @param registrar     admin user configured in CA-server
 * @param revokedBefore Restrict certificates returned to revoked before this date if not null.
 * @param revokedAfter  Restrict certificates returned to revoked after this date if not null.
 * @param expireBefore  Restrict certificates returned to expired before this date if not null.
 * @param expireAfter   Restrict certificates returned to expired after this date if not null.
 * @throws InvalidArgumentException/*ww w  .  j  av a 2s .  c o  m*/
 */

public String generateCRL(User registrar, Date revokedBefore, Date revokedAfter, Date expireBefore,
        Date expireAfter) throws InvalidArgumentException, GenerateCRLException {

    if (cryptoSuite == null) {
        throw new InvalidArgumentException("Crypto primitives not set.");
    }

    if (registrar == null) {
        throw new InvalidArgumentException("registrar is not set");
    }

    try {
        setUpSSL();

        //---------------------------------------
        JsonObjectBuilder factory = Json.createObjectBuilder();
        if (revokedBefore != null) {
            factory.add("revokedBefore", Util.dateToString(revokedBefore));
        }
        if (revokedAfter != null) {
            factory.add("revokedAfter", Util.dateToString(revokedAfter));
        }
        if (expireBefore != null) {
            factory.add("expireBefore", Util.dateToString(expireBefore));
        }
        if (expireAfter != null) {
            factory.add("expireAfter", Util.dateToString(expireAfter));
        }
        if (caName != null) {
            factory.add(HFCAClient.FABRIC_CA_REQPROP, caName);
        }

        JsonObject jsonObject = factory.build();

        StringWriter stringWriter = new StringWriter();
        JsonWriter jsonWriter = Json.createWriter(new PrintWriter(stringWriter));
        jsonWriter.writeObject(jsonObject);
        jsonWriter.close();
        String body = stringWriter.toString();

        //---------------------------------------

        // send revoke request
        JsonObject ret = httpPost(url + HFCA_GENCRL, body, registrar);

        return ret.getString("CRL");

    } catch (Exception e) {
        logger.error(e.getMessage(), e);
        throw new GenerateCRLException(e.getMessage(), e);
    }
}

From source file:csg.files.CSGFiles.java

public void saveProjectsData(AppDataComponent courseData, AppDataComponent projectData, String filePath)
        throws IOException {

    CourseData courseDataManager = (CourseData) courseData;
    ProjectData projectDataManager = (ProjectData) projectData;

    ObservableList<Student> students = projectDataManager.getStudents();

    JsonArrayBuilder studentArrayBuilder = Json.createArrayBuilder();
    JsonArrayBuilder teamArrayBuilder = Json.createArrayBuilder();
    ObservableList<Team> teams = projectDataManager.getTeams();

    for (Team team : teams) {
        for (Student student : students) {
            if (student.getTeam().equals(team.getName())) {
                studentArrayBuilder.add(student.getFirstName() + " " + student.getLastName());
            }//  www. j  ava 2 s. c  om
        }
        JsonArray studentArray = studentArrayBuilder.build();
        JsonObject teamsJson = Json.createObjectBuilder().add(JSON_NAME, team.getName())
                .add(JSON_STUDENTS, studentArray).add(JSON_LINK, team.getLink()).build();
        teamArrayBuilder.add(teamsJson);
    }
    JsonArray teamArray = teamArrayBuilder.build();

    CSGWorkspace workspace = (CSGWorkspace) app.getWorkspaceComponent();
    JsonArrayBuilder courseJsonBuilder = Json.createArrayBuilder();
    JsonObject coursesJson = Json.createObjectBuilder()
            .add(JSON_SEMESTER, courseDataManager.getSemester() + " " + courseDataManager.getYear())
            .add(JSON_PROJECTS, teamArray).build();
    courseJsonBuilder.add(coursesJson);

    JsonArray courseJsonArr = courseJsonBuilder.build();

    JsonObject dataManagerJSO = Json.createObjectBuilder().add(JSON_WORK, courseJsonArr).build();

    // AND NOW OUTPUT IT TO A JSON FILE WITH PRETTY PRINTING
    Map<String, Object> properties = new HashMap<>(1);
    properties.put(JsonGenerator.PRETTY_PRINTING, true);
    JsonWriterFactory writerFactory = Json.createWriterFactory(properties);
    StringWriter sw = new StringWriter();
    JsonWriter jsonWriter = writerFactory.createWriter(sw);
    jsonWriter.writeObject(dataManagerJSO);
    jsonWriter.close();

    // INIT THE WRITER
    OutputStream os = new FileOutputStream(filePath);
    JsonWriter jsonFileWriter = Json.createWriter(os);
    jsonFileWriter.writeObject(dataManagerJSO);
    String prettyPrinted = sw.toString();
    PrintWriter pw = new PrintWriter(filePath);
    pw.write(prettyPrinted);
    pw.close();
}

From source file:org.kuali.student.ap.coursesearch.service.impl.CourseDetailsViewHelperServiceImpl.java

/**
 * @see org.kuali.student.ap.coursesearch.service.CourseDetailsViewHelperService#createFilterValidRegGroupsEvent
 */// w w  w. ja va  2  s .  c  o  m
@Override
public JsonObjectBuilder createFilterValidRegGroupsEvent(String termId, String courseOfferingCode,
        String formatOfferingId, List<String> regGroups, JsonObjectBuilder eventList,
        Map<Object, Object> additionalRestrictions) {
    JsonObjectBuilder filterEvent = Json.createObjectBuilder();
    filterEvent.add("termId", termId.replace(".", "-"));
    filterEvent.add("courseOfferingCode", courseOfferingCode);
    filterEvent.add("formatOfferingId", formatOfferingId);

    // Deconstruct reg groups into list of AO and FO ids
    List<String> validFormatOfferings = new ArrayList<String>();
    List<String> validActivities = new ArrayList<String>();

    boolean singleRegGroupIdentified = false;
    for (String id : regGroups) {
        List<String> activityIds = new ArrayList<>();
        List<String> formatIds = new ArrayList<>();
        try {
            SearchRequestInfo request = new SearchRequestInfo(
                    CourseSearchConstants.KSAP_COURSE_SEARCH_AO_IDS_BY_OFFERED_REG_GROUP_ID_KEY);
            request.addParam(CourseSearchConstants.SearchParameters.REG_GROUP_ID, id);
            List<SearchResultRowInfo> rows = KsapFrameworkServiceLocator.getSearchService()
                    .search(request, KsapFrameworkServiceLocator.getContext().getContextInfo()).getRows();
            boolean hasSelectedActivities = false;
            for (SearchResultRowInfo row : rows) {
                String activityId = KsapHelperUtil.getCellValue(row,
                        CourseSearchConstants.SearchResultColumns.ACTIVITY_OFFERING_ID);
                activityIds.add(activityId);

                //Determine if any activities of a single reg group have been selected
                if (regGroups.size() == 1 && additionalRestrictions != null
                        && additionalRestrictions.get("selectedActivities") != null
                        && ((List<String>) additionalRestrictions.get("selectedActivities"))
                                .contains(activityId))
                    singleRegGroupIdentified = true;
            }

            request = new SearchRequestInfo(
                    CourseSearchConstants.KSAP_COURSE_SEARCH_FO_IDS_BY_OFFERED_REG_GROUP_ID_KEY);
            request.addParam(CourseSearchConstants.SearchParameters.REG_GROUP_ID, id);
            rows = KsapFrameworkServiceLocator.getSearchService()
                    .search(request, KsapFrameworkServiceLocator.getContext().getContextInfo()).getRows();
            for (SearchResultRowInfo row : rows) {
                formatIds.add(KsapHelperUtil.getCellValue(row,
                        CourseSearchConstants.SearchResultColumns.FORMAT_OFFERING_ID));
            }
        } catch (InvalidParameterException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (MissingParameterException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (OperationFailedException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (PermissionDeniedException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        }
        if (activityIds != null && !activityIds.isEmpty()) {
            validActivities.addAll(activityIds);
        }
        if (formatIds != null && !formatIds.isEmpty()) {
            validFormatOfferings.addAll(formatIds);
        }
    }

    //Send single regGroupId identified (i.e. selected) event
    if (singleRegGroupIdentified) {
        try {
            filterEvent.add("regGroupId", KSCollectionUtils.getRequiredZeroElement(regGroups));
        } catch (OperationFailedException e) {
            throw new IllegalArgumentException("Failure retrieving registration group", e);
        }
    } else {
        filterEvent.add("regGroupId", "");
    }

    // Create json array of valid activity ids and add it to event
    JsonArrayBuilder activities = Json.createArrayBuilder();
    for (String activity : validActivities) {
        activities.add(activity);

    }
    filterEvent.add("activities", activities);

    // Create json array of valid format ids and add it to event
    JsonArrayBuilder formats = Json.createArrayBuilder();
    for (String format : validFormatOfferings) {
        formats.add(format);

    }
    filterEvent.add("formatOfferings", formats);

    eventList.add("FILTER_COURSE_OFFERING", filterEvent);
    return eventList;
}

From source file:io.hops.hopsworks.api.jobs.JobService.java

/**
 * Get all the jobs in this project that have a running execution. The return
 * value is a JSON object, where each job
 * id is a key and the corresponding boolean indicates whether the job is
 * running or not./*from ww w.j a va 2s  . co  m*/
 * <p/>
 * @param sc
 * @param req
 * @return
 */
@GET
@Path("/running")
@Produces(MediaType.APPLICATION_JSON)
@AllowedProjectRoles({ AllowedProjectRoles.DATA_OWNER, AllowedProjectRoles.DATA_SCIENTIST })
public Response getConfigurationTemplate(@Context SecurityContext sc, @Context HttpServletRequest req) {
    List<Jobs> running = jobFacade.getRunningJobs(project);
    List<Jobs> allJobs = jobFacade.findForProject(project);
    JsonObjectBuilder builder = Json.createObjectBuilder();
    for (Jobs desc : allJobs) {
        try {
            List<Execution> jobExecutions = exeFacade.findForJob(desc);
            if (jobExecutions != null && jobExecutions.isEmpty() == false) {
                Execution execution = jobExecutions.get(0);
                builder.add(desc.getId().toString(),
                        Json.createObjectBuilder().add("running", false)
                                .add("state", execution.getState().toString())
                                .add("finalStatus", execution.getFinalStatus().toString())
                                .add("progress", execution.getProgress())
                                .add("duration", execution.getExecutionDuration())
                                .add("submissiontime", execution.getSubmissionTime().toString()));
            }
        } catch (ArrayIndexOutOfBoundsException e) {
            LOGGER.log(Level.WARNING, "No execution was found: {0}", e.getMessage());
        }
    }
    for (Jobs desc : running) {
        try {
            Execution execution = exeFacade.findForJob(desc).get(0);
            long executiontime = System.currentTimeMillis() - execution.getSubmissionTime().getTime();
            //not given appId (not submited yet)
            if (execution.getAppId() == null && executiontime > 60000l * 5) {
                exeFacade.updateState(execution, JobState.INITIALIZATION_FAILED);
                exeFacade.updateFinalStatus(execution, JobFinalStatus.FAILED);
                continue;
            }

            String trackingUrl = appAttemptStateFacade.findTrackingUrlByAppId(execution.getAppId());
            builder.add(desc.getId().toString(), Json.createObjectBuilder().add("running", true)
                    .add("state", execution.getState().toString())
                    .add("finalStatus", execution.getFinalStatus().toString())
                    .add("progress", execution.getProgress()).add("duration", execution.getExecutionDuration())
                    .add("submissiontime", execution.getSubmissionTime().toString()).add("url", trackingUrl));
        } catch (ArrayIndexOutOfBoundsException e) {
            LOGGER.log(Level.WARNING, "No execution was found: {0}", e.getMessage());
        }
    }
    return noCacheResponse.getNoCacheResponseBuilder(Response.Status.OK).entity(builder.build()).build();
}

From source file:io.hops.hopsworks.api.jobs.JobService.java

/**
 * Get the log information related to a job. The return value is a JSON
 * object, with format logset=[{"time":"JOB
 * EXECUTION TIME"}, {"log":"INFORMATION LOG"}, {"err":"ERROR LOG"}]
 * <p>/*from ww w. j  a  va  2s .c om*/
 * @param jobId
 * @param sc
 * @param req
 * @return
 */
@GET
@Path("/{jobId}/showlog")
@Produces(MediaType.APPLICATION_JSON)
@AllowedProjectRoles({ AllowedProjectRoles.DATA_OWNER, AllowedProjectRoles.DATA_SCIENTIST })
public Response getLogInformation(@PathParam("jobId") int jobId, @Context SecurityContext sc,
        @Context HttpServletRequest req) {

    JsonObjectBuilder builder = Json.createObjectBuilder();
    JsonArrayBuilder arrayBuilder = Json.createArrayBuilder();
    List<Execution> executionHistory = exeFacade.findbyProjectAndJobId(project, jobId);
    JsonObjectBuilder arrayObjectBuilder;
    if (executionHistory != null && !executionHistory.isEmpty()) {
        for (Execution e : executionHistory) {
            arrayObjectBuilder = Json.createObjectBuilder();
            arrayObjectBuilder.add("jobId", e.getJob().getId());
            arrayObjectBuilder.add("appId", e.getAppId() == null ? "" : e.getAppId());
            arrayObjectBuilder.add("time", e.getSubmissionTime().toString());
            arrayBuilder.add(arrayObjectBuilder);
        }
    } else {
        arrayObjectBuilder = Json.createObjectBuilder();
        arrayObjectBuilder.add("jobId", "");
        arrayObjectBuilder.add("appId", "");
        arrayObjectBuilder.add("time", "Not available");
        arrayObjectBuilder.add("log", "No log available");
        arrayObjectBuilder.add("err", "No log available");
        arrayBuilder.add(arrayObjectBuilder);
    }
    builder.add("logset", arrayBuilder);

    return noCacheResponse.getNoCacheResponseBuilder(Response.Status.OK).entity(builder.build()).build();
}

From source file:org.btc4j.daemon.BtcJsonRpcHttpClient.java

public String jsonError(String id, int code, String message) {
    JsonObjectBuilder builder = Json.createObjectBuilder().add(JSONRPC_REALM, JSONRPC_VERSION)
            .addNull(JSONRPC_RESULT);/*from  w  w w  . j ava  2s  .  c  o m*/
    JsonObject error = Json.createObjectBuilder().add(JSONRPC_CODE, code).add(JSONRPC_MESSAGE, message)
            .addNull(JSONRPC_DATA).build();
    builder.add(JSONRPC_ERROR, error).add(JSONRPC_ID, id);
    return String.valueOf(builder.build());
}

From source file:org.kuali.student.ap.coursesearch.service.impl.CourseDetailsViewHelperServiceImpl.java

/**
 * @see org.kuali.student.ap.coursesearch.service.CourseDetailsViewHelperService#createFilterValidRegGroupsForRemovalEvent(String, String, String, java.util.List, javax.json.JsonObjectBuilder)
 *//*from  ww w  .  j  a  v  a 2s  .c o  m*/
@Override
public JsonObjectBuilder createFilterValidRegGroupsForRemovalEvent(String termId, String courseOfferingCode,
        String formatOfferingId, List<String> regGroupIds, JsonObjectBuilder eventList) {
    JsonObjectBuilder filterEvent = Json.createObjectBuilder();
    filterEvent.add("termId", termId.replace(".", "-"));
    filterEvent.add("courseOfferingCode", courseOfferingCode);
    filterEvent.add("formatOfferingId", formatOfferingId);

    // Deconstruct reg groups into list of AO and FO ids
    List<String> validActivities = new ArrayList<String>();
    for (String id : regGroupIds) {
        List<String> activityIds = new ArrayList<>();
        try {
            SearchRequestInfo request = new SearchRequestInfo(
                    CourseSearchConstants.KSAP_COURSE_SEARCH_AO_IDS_BY_OFFERED_REG_GROUP_ID_KEY);
            request.addParam(CourseSearchConstants.SearchParameters.REG_GROUP_ID, id);
            List<SearchResultRowInfo> rows = KsapFrameworkServiceLocator.getSearchService()
                    .search(request, KsapFrameworkServiceLocator.getContext().getContextInfo()).getRows();
            for (SearchResultRowInfo row : rows) {
                activityIds.add(KsapHelperUtil.getCellValue(row,
                        CourseSearchConstants.SearchResultColumns.ACTIVITY_OFFERING_ID));
            }
        } catch (InvalidParameterException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (MissingParameterException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (OperationFailedException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        } catch (PermissionDeniedException e) {
            throw new IllegalArgumentException("Lui Service lookup error", e);
        }
        if (activityIds != null && !activityIds.isEmpty()) {
            validActivities.addAll(activityIds);
        }
    }

    // Create json array of valid activity ids and add it to event
    JsonArrayBuilder activities = Json.createArrayBuilder();
    for (String activity : validActivities) {
        activities.add(activity);

    }
    filterEvent.add("activities", activities);

    eventList.add("FILTER_COURSE_OFFERING_FOR_REMOVAL", filterEvent);
    return eventList;
}

From source file:io.bibleget.BibleGetDB.java

public boolean renewMetaData() {
    if (instance.connect()) {
        try {// w  ww .  ja  va2  s . com
            DatabaseMetaData dbMeta;
            dbMeta = instance.conn.getMetaData();
            try (ResultSet rs3 = dbMeta.getTables(null, null, "METADATA", null)) {
                if (rs3.next()) {
                    //System.out.println("Table METADATA exists...");
                    try (Statement stmt = instance.conn.createStatement()) {
                        HTTPCaller myHTTPCaller = new HTTPCaller();
                        String myResponse;
                        myResponse = myHTTPCaller.getMetaData("biblebooks");
                        if (myResponse != null) {
                            JsonReader jsonReader = Json.createReader(new StringReader(myResponse));
                            JsonObject json = jsonReader.readObject();
                            JsonArray arrayJson = json.getJsonArray("results");
                            if (arrayJson != null) {
                                ListIterator pIterator = arrayJson.listIterator();
                                while (pIterator.hasNext()) {
                                    try (Statement stmt1 = instance.conn.createStatement()) {
                                        int index = pIterator.nextIndex();
                                        JsonArray currentJson = (JsonArray) pIterator.next();
                                        String biblebooks_str = currentJson.toString(); //.replaceAll("\"", "\\\\\"");
                                        //System.out.println("BibleGetDB line 267: BIBLEBOOKS"+Integer.toString(index)+"='"+biblebooks_str+"'");
                                        String stmt_str = "UPDATE METADATA SET BIBLEBOOKS"
                                                + Integer.toString(index) + "='" + biblebooks_str
                                                + "' WHERE ID=0";
                                        //System.out.println("executing update: "+stmt_str);
                                        int update = stmt1.executeUpdate(stmt_str);
                                        //System.out.println("executeUpdate resulted in: "+Integer.toString(update));
                                        stmt1.close();
                                    }
                                }
                            }

                            arrayJson = json.getJsonArray("languages");
                            if (arrayJson != null) {
                                try (Statement stmt2 = instance.conn.createStatement()) {
                                    String languages_str = arrayJson.toString(); //.replaceAll("\"", "\\\\\"");
                                    String stmt_str = "UPDATE METADATA SET LANGUAGES='" + languages_str
                                            + "' WHERE ID=0";
                                    int update = stmt2.executeUpdate(stmt_str);
                                    stmt2.close();
                                }
                            }
                        }

                        myResponse = myHTTPCaller.getMetaData("bibleversions");
                        if (myResponse != null) {
                            JsonReader jsonReader = Json.createReader(new StringReader(myResponse));
                            JsonObject json = jsonReader.readObject();
                            JsonObject objJson = json.getJsonObject("validversions_fullname");
                            if (objJson != null) {
                                String bibleversions_str = objJson.toString(); //.replaceAll("\"", "\\\\\"");
                                try (Statement stmt3 = instance.conn.createStatement()) {
                                    String stmt_str = "UPDATE METADATA SET VERSIONS='" + bibleversions_str
                                            + "' WHERE ID=0";
                                    int update = stmt3.executeUpdate(stmt_str);
                                    stmt3.close();
                                }

                                Set<String> versionsabbrev = objJson.keySet();
                                if (!versionsabbrev.isEmpty()) {
                                    String versionsabbrev_str = "";
                                    for (String s : versionsabbrev) {
                                        versionsabbrev_str += ("".equals(versionsabbrev_str) ? "" : ",") + s;
                                    }

                                    myResponse = myHTTPCaller
                                            .getMetaData("versionindex&versions=" + versionsabbrev_str);
                                    if (myResponse != null) {
                                        jsonReader = Json.createReader(new StringReader(myResponse));
                                        json = jsonReader.readObject();
                                        objJson = json.getJsonObject("indexes");
                                        if (objJson != null) {
                                            for (String name : objJson.keySet()) {
                                                JsonObjectBuilder tempBld = Json.createObjectBuilder();
                                                JsonObject book_num = objJson.getJsonObject(name);
                                                tempBld.add("book_num", book_num.getJsonArray("book_num"));
                                                tempBld.add("chapter_limit",
                                                        book_num.getJsonArray("chapter_limit"));
                                                tempBld.add("verse_limit",
                                                        book_num.getJsonArray("verse_limit"));
                                                JsonObject temp = tempBld.build();
                                                String versionindex_str = temp.toString(); //.replaceAll("\"", "\\\\\"");
                                                //add new column to METADATA table name+"IDX" VARCHAR(5000)
                                                //update METADATA table SET name+"IDX" = versionindex_str
                                                try (ResultSet rs1 = dbMeta.getColumns(null, null, "METADATA",
                                                        name + "IDX")) {
                                                    boolean updateFlag = false;
                                                    if (rs1.next()) {
                                                        //column already exists
                                                        updateFlag = true;
                                                    } else {
                                                        try (Statement stmt4 = instance.conn
                                                                .createStatement()) {
                                                            String sql = "ALTER TABLE METADATA ADD COLUMN "
                                                                    + name + "IDX VARCHAR(5000)";
                                                            boolean colAdded = stmt4.execute(sql);
                                                            if (colAdded == false) {
                                                                int count = stmt4.getUpdateCount();
                                                                if (count == -1) {
                                                                    //System.out.println("The result is a ResultSet object or there are no more results.");
                                                                } else if (count == 0) {
                                                                    //0 rows affected
                                                                    updateFlag = true;
                                                                }
                                                            }
                                                            stmt4.close();
                                                        }
                                                    }
                                                    if (updateFlag) {
                                                        try (Statement stmt5 = instance.conn
                                                                .createStatement()) {
                                                            String sql1 = "UPDATE METADATA SET " + name
                                                                    + "IDX='" + versionindex_str
                                                                    + "' WHERE ID=0";
                                                            boolean rowsUpdated = stmt5.execute(sql1);
                                                            stmt5.close();
                                                        }
                                                    }
                                                }
                                            }

                                        }
                                    }

                                }

                            }
                        }

                        stmt.close();
                    }
                }
                rs3.close();
            }
            instance.disconnect();
        } catch (SQLException ex) {
            Logger.getLogger(BibleGetDB.class.getName()).log(Level.SEVERE, null, ex);
            return false;
        }
        return true;
    }
    return false;
}

From source file:io.hops.hopsworks.api.jobs.JobService.java

@GET
@Path("/getLog/{appId}/{type}")
@Produces(MediaType.APPLICATION_JSON)/*from  w w  w. j a v  a 2s  .  c o  m*/
@AllowedProjectRoles({ AllowedProjectRoles.DATA_OWNER, AllowedProjectRoles.DATA_SCIENTIST })
public Response getLog(@PathParam("appId") String appId, @PathParam("type") String type) throws JobException {
    if (Strings.isNullOrEmpty(appId)) {
        throw new IllegalArgumentException("appId cannot be null or empty.");
    }
    Execution execution = exeFacade.findByAppId(appId);
    if (execution == null) {
        throw new JobException(RESTCodes.JobErrorCode.JOB_EXECUTION_NOT_FOUND, Level.FINE, "AppId: " + appId);
    }
    if (!execution.getState().isFinalState()) {
        throw new JobException(RESTCodes.JobErrorCode.JOB_EXECUTION_INVALID_STATE, Level.FINE,
                "Job still running.");
    }
    if (!execution.getJob().getProject().equals(this.project)) {
        throw new JobException(RESTCodes.JobErrorCode.JOB_ACCESS_ERROR, Level.FINE,
                "Requested execution does not belong to a job of project: " + project.getName());
    }

    JsonObjectBuilder arrayObjectBuilder = Json.createObjectBuilder();
    DistributedFileSystemOps dfso = null;
    try {
        dfso = dfs.getDfsOps();
        readLog(execution, type, dfso, arrayObjectBuilder);

    } catch (IOException ex) {
        Logger.getLogger(JobService.class.getName()).log(Level.SEVERE, null, ex);
    } finally {
        if (dfso != null) {
            dfso.close();
        }
    }

    return noCacheResponse.getNoCacheResponseBuilder(Response.Status.OK).entity(arrayObjectBuilder.build())
            .build();
}