List of usage examples for com.google.gson JsonArray JsonArray
public JsonArray()
From source file:com.bios.controller.services.GetLiveBiddingTableServlet.java
/** * Handles the HTTP <code>GET</code> method to determine whether currently placed * bids will be successful at the end of the round. A json object that contains the * live bidding data relating to the bid will be created. * * @param request servlet request/* www .ja v a2 s . c o m*/ * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs * */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(true); String course_section_selected = request.getParameter("courseSectionID"); int hyphenIndex = course_section_selected.indexOf("-"); String courseSelected = course_section_selected.substring(0, hyphenIndex); String sectionSelected = course_section_selected.substring(hyphenIndex + 1); String userID = (String) session.getAttribute("username"); // Section that user has selected Section section = SectionDAO.getInstance().findSection(courseSelected, sectionSelected); // How many students have already been enrolled in the section successfully ArrayList<SectionStudent> sectionStudentList = SectionStudentDAO.getInstance() .getSectionStudentListWithID(courseSelected, sectionSelected); // Size of the class minus the already enrolled number, which essentially means vacancy int vacancy = section.getSize() - sectionStudentList.size(); // Minimum bid value that has to be shown to user, default is 10 double minBidValue = 10; // This lists the bids that are still pending approval in round 2, and contains the bids // that user has selected, and these bids are sorted from highest to lowest ArrayList<Bid> round2Bids = BidDAO.getInstance().getPendingBidsWithID(courseSelected, sectionSelected); round2Bids.sort(new BidComparator()); // This JsonObject is to be used as the reponse to the user JsonObject object = new JsonObject(); // This is to re-compute the minimum bid value if (round2Bids.size() >= vacancy && vacancy != 0) { // should this be >=? wha if vacancy==0? minBidValue = round2Bids.get(vacancy - 1).getAmount() + 1; } // We will first add in the 2 properties that have already been calculated object.addProperty("vacancy", vacancy); object.addProperty("courseSectionID", course_section_selected); object.addProperty("round2BidsSize", round2Bids.size()); if (round2Bids.size() == 0) { MinBidDAO.getInstance().drop(); MinBidDAO.getInstance().refresh(); } System.out.println("minbidvalue " + MinBidDAO.getInstance().getValue(course_section_selected)); // This allows us to store the minimum bids, and also to persist the bids such that it stores the min bid amount if (MinBidDAO.getInstance().updateMinBid(course_section_selected, minBidValue)) { // Bid was updated successfully object.addProperty("minBidValue", minBidValue); } else { object.addProperty("minBidValue", MinBidDAO.getInstance().getValue(course_section_selected)); } String prevStatus = ""; JsonArray arrayOfBids = new JsonArray(); for (int i = 0; i < round2Bids.size(); i++) { Bid bid = round2Bids.get(i); JsonObject innerObject = new JsonObject(); // If there are vacancies still if (vacancy >= round2Bids.size()) { innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Successful"); //add temp success } else if (round2Bids.size() > vacancy) { // If this bid is still within the vacancy requirements if (i <= vacancy) { // Even if they are within the vacancy requirements, we need // to check to see if there are conflicting bids, this means // we need to check if the bid right after the vacancy requirements // has an equal amount Bid firstFailedBid = round2Bids.get(vacancy); if (bid.getAmount() == firstFailedBid.getAmount()) { if (i == vacancy) { if (prevStatus.equals("Unsuccessful")) { innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Unsuccessful"); prevStatus = "Unsuccessful"; } else { innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Unsuccessful. Bid too low."); prevStatus = "Unsuccessful. Bid too low."; } } else { innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Unsuccessful"); prevStatus = "Unsuccessful"; } } else { innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Successful"); prevStatus = "Successful"; } } else if (i > vacancy) { //what if vacancy+1's bid amout innerObject.addProperty("bidPrice", bid.getAmount()); innerObject.addProperty("isSuccess", "Unsuccessful. Bid too low."); prevStatus = "Unsuccessful. Bid too low."; } } arrayOfBids.add(innerObject); } object.add("data", arrayOfBids); response.setContentType("application/json"); response.getWriter().write(object.toString()); }
From source file:com.bios.controller.services.StartRoundService.java
/** * Handles the HTTP <code>GET</code> method which starts a bidding round. It checks that the user is a verified admin * and proceeds to start the round if the round is not yet started. Subsequently, it creates a json object with the status * "success" and stores the current bidding round. However, if round 2 has already ended, it creates a json object with the * status "error" and stores the error message "round 2 ended" in a json array. Additionally, if the user is not a verified admin with a valid * token, it creates a json object with the status "error" and stores the error message in a json array "invalid username/token". * * @param request servlet request// w w w .j a va2 s .c o m * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // String token = request.getParameter("token"); JsonObject object = new JsonObject(); if (request.getParameter("token") == null) { JsonArray array = new JsonArray(); object.addProperty("status", "error"); array.add(new JsonPrimitive("missing token")); object.add("message", array); } else if (request.getParameter("token").length() == 0) { JsonArray array = new JsonArray(); object.addProperty("status", "error"); array.add(new JsonPrimitive("blank token")); object.add("message", array); } else { String token = request.getParameter("token"); try { String result = JWTUtility.verify(token, "abcdefgh12345678"); if (result.equals("admin")) { JsonArray array = new JsonArray(); ConnectionManager manager = new ConnectionManager(); if (manager.getBiddingRoundStatus().equals("started")) { // Stop the round here object.addProperty("status", "success"); object.add("round", new JsonPrimitive(manager.getBiddingRound())); } else if (manager.getBiddingRound() == 1) { BiddingRoundServlet.incrementBiddingRound("true"); object.addProperty("status", "success"); object.add("round", new JsonPrimitive(manager.getBiddingRound())); } else { object.addProperty("status", "error"); array.add(new JsonPrimitive("round 2 ended")); object.add("message", array); } } } catch (JWTException e) { // This means not an admin, or token expired JsonArray array = new JsonArray(); JsonPrimitive value = new JsonPrimitive("invalid token"); array.add(value); object.addProperty("status", "error"); object.add("message", array); } } System.out.println(object); response.setContentType( "application/json"); response.getWriter() .write(object.toString()); }
From source file:com.bios.controller.services.StopRoundService.java
/** * Handles the HTTP <code>GET</code> method which stops a bidding round. It checks that the user is a verified admin * and proceeds to stop the round if the round is started. Subsequently, it creates a json object with the status * "success". However, if a round is already stopped, it creates a json object with the status "error" and stores the error * message "round already ended" in a json array. Additionally, if the user is not a verified admin with a valid token, it * creates a json object with the status "error" and stores the error message in a json array "invalid username/token". * * @param request servlet request//www . j a v a 2 s .c om * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { JsonObject object = new JsonObject(); if (request.getParameter("token") == null) { JsonArray array = new JsonArray(); object.addProperty("status", "error"); array.add(new JsonPrimitive("missing token")); object.add("message", array); } else if (request.getParameter("token").length() == 0) { JsonArray array = new JsonArray(); object.addProperty("status", "error"); array.add(new JsonPrimitive("blank token")); object.add("message", array); } else { String token = request.getParameter("token"); try { String result = JWTUtility.verify(token, "abcdefgh12345678"); if (result.equals("admin")) { JsonArray array = new JsonArray(); ConnectionManager manager = new ConnectionManager(); if (manager.getBiddingRoundStatus().equals("started") && manager.getBiddingRound() == 1) { // Stop the round here object.addProperty("status", "success"); // RoundOneBidDAO.getInstance().drop(); // // add all round 1 pending bids into roundonebiddao // ArrayList<Bid> allBids = BidDAO.getInstance().getPendingBids(); // for (Bid bid : allBids){ // RoundOneBidDAO.getInstance().addBid(bid); // } BiddingRoundServlet.incrementBiddingRound("true"); } else if (manager.getBiddingRoundStatus().equals("started") && manager.getBiddingRound() == 2) { // Stop the round here object.addProperty("status", "success"); // RoundTwoBidDAO.getInstance().drop(); // // add all round 1 pending bids into roundonebiddao // ArrayList<Bid> allBids = BidDAO.getInstance().getPendingBids(); // for (Bid bid : allBids){ // RoundTwoBidDAO.getInstance().addBid(bid); // } BiddingRoundServlet.incrementBiddingRound("true"); } else { object.addProperty("status", "error"); array.add(new JsonPrimitive("round already ended")); object.add("message", array); } } } catch (JWTException e) { // This means not an admin, or token expired JsonArray array = new JsonArray(); JsonPrimitive value = new JsonPrimitive("invalid token"); array.add(value); object.addProperty("status", "error"); object.add("message", array); } } System.out.println(object); response.setContentType("application/json"); response.getWriter().write(object.toString()); return; }
From source file:com.bios.controller.services.StudentCalendarBidService.java
/** * Handles the HTTP <code>GET</code> method uses the userID of a student to * generates a json object with a timetable of that particular student that * consists of both the student's exams and classes. * * @param request servlet request//w ww . ja va 2 s.c o m * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String userID = request.getParameter("userID"); System.out.println(userID); ArrayList<Bid> allBids = BidDAO.getInstance().getStudentBids(userID); JsonArray arr = new JsonArray(); System.out.println(allBids.size()); for (Bid bid : allBids) { if (bid.getStatus().equals("success") || bid.getStatus().equals("pending")) { JsonObject obj = new JsonObject(); Course course = CourseDAO.getInstance().findCourse(bid.getCourseID()); Section section = SectionDAO.getInstance().findSection(bid.getCourseID(), bid.getSectionID()); DateFormat sourceFormat = new SimpleDateFormat("yyyyMMdd"); DateFormat df = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH); // Adding a Course exam object obj.add("title", new JsonPrimitive(course.getTitle())); try { Date source = sourceFormat.parse(course.getExamDate()); String target = df.format(source); System.out.println(target); System.out.println(sourceFormat.parse(course.getExamDate()).toString()); obj.add("start", new JsonPrimitive(target)); obj.add("end", new JsonPrimitive(target)); obj.add("className", new JsonPrimitive("bg-blue")); } catch (Exception e) { e.printStackTrace(); } obj.add("description", new JsonPrimitive(course.getDescription())); arr.add(obj); // Adding a Section class timetable object obj = new JsonObject(); obj.add("title", new JsonPrimitive(course.getTitle())); obj.add("start", new JsonPrimitive(section.getStart())); System.out.println(section.getStart()); obj.add("end", new JsonPrimitive(section.getEnd())); obj.add("className", new JsonPrimitive("bg-green")); obj.add("description", new JsonPrimitive(section.getCourseID())); JsonArray dow = new JsonArray(); dow.add(new JsonPrimitive(section.getDay())); obj.add("dow", dow); arr.add(obj); } } response.setContentType("application/json"); response.getWriter().write(arr.toString()); }
From source file:com.bios.controller.services.UpdateBidService.java
/** * Handles the HTTP <code>GET</code> method which updates a bid. Firstly, the token * is checked for its validity. If the token is valid, the method then goes into the * respective DAOs to look for the bid. If the bid is valid and can be deleted, the * bid is then deleted from the DAO and the database. Subsequentyly, a json object * with the status "success" will be created. If any errors occur such as an * invalid course or missing token is detected, a json object with the status "error" * will be created with a json array of the erros that caused the failure to update. * @param request servlet request// ww w .j a v a 2 s .c o m * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ConnectionManager manager = new ConnectionManager(); String requestObject = request.getParameter("r"); String token = request.getParameter("token"); ArrayList<String> errorList = new ArrayList<String>(); JsonObject reponseObject = new JsonObject(); JsonArray allErrors = new JsonArray(); if (requestObject == null) { errorList.add("missing r"); } else if (requestObject.length() == 0) { errorList.add("blank r"); } if (token == null) { errorList.add("missing token"); } else if (token.length() == 0) { errorList.add("blank token"); } else { try { String result = JWTUtility.verify(token, "abcdefgh12345678"); if (!result.equals("admin")) { errorList.add("invalid token"); } } catch (JWTException e) { // do we need this? // This means not an admin, or token expired errorList.add("invalid username/token"); } } JsonElement jelement = new JsonParser().parse(requestObject); JsonObject json = jelement.getAsJsonObject(); Bid existingBid = null; JsonElement amt = json.get("amount"); JsonElement crse = json.get("course"); JsonElement sec = json.get("section"); JsonElement user = json.get("userid"); if (amt == null) { errorList.add("missing amount"); } else if (amt.getAsString().length() == 0) { errorList.add("blank amount"); } if (crse == null) { errorList.add("missing course"); } else if (crse.getAsString().length() == 0) { errorList.add("blank course"); } if (sec == null) { errorList.add("missing section"); } else if (sec.getAsString().length() == 0) { errorList.add("blank section"); } if (user == null) { errorList.add("missing userid"); } else if (user.getAsString().length() == 0) { errorList.add("blank userid"); } if (errorList.size() > 0) { errorList.sort(new ErrorMsgComparator()); for (String s : errorList) { allErrors.add(new JsonPrimitive(s)); } reponseObject.addProperty("status", "error"); reponseObject.add("message", allErrors); response.setContentType("application/json"); response.getWriter().write(reponseObject.toString()); return; } // There may be type errors for the double here double amount = amt.getAsDouble(); String courseID = crse.getAsString(); String sectionID = sec.getAsString(); String userID = user.getAsString(); Course course = CourseDAO.getInstance().findCourse(courseID); Section section = SectionDAO.getInstance().findSection(courseID, sectionID); Student student = StudentDAO.retrieve(userID); int round = manager.getBiddingRound(); BootstrapValidator bv = new BootstrapValidator(); if (bv.parseBidAmount(amt.getAsString()) != null) { allErrors.add(new JsonPrimitive("invalid amount")); } if (course == null) { allErrors.add(new JsonPrimitive("invalid course")); } // only check if course code is valid if (course != null && section == null) { allErrors.add(new JsonPrimitive("invalid section")); } if (student == null) { allErrors.add(new JsonPrimitive("invalid userid")); } if (allErrors.size() > 0) { reponseObject.addProperty("status", "error"); reponseObject.add("message", allErrors); response.setContentType("application/json"); response.getWriter().write(reponseObject.toString()); return; } if (manager.getBiddingRoundStatus().equals("started")) { if (round == 2) { double minBidAmt = MinBidDAO.getInstance().getValue(courseID + "-" + sectionID); System.out.println(courseID + "-" + sectionID); System.out.println("UPDATE amount: " + amount); System.out.println("UPDATE min bid: " + minBidAmt); if (amount < minBidAmt) { errorList.add("bid too low"); } } else if (round == 1) { if (amount < 10) { errorList.add("bid too low"); } } existingBid = BidDAO.getInstance().getStudentBidWithCourseID(userID, courseID); //no existing bid if (existingBid == null) { if (bv.parseEDollarEnough(userID, courseID, sectionID, amt.getAsString()) != null) { errorList.add("insufficient e$"); } } else if (existingBid.getStatus().equals("pending")) { if (bv.parseEDollarEnoughExistingBid(userID, courseID, sectionID, amt.getAsString()) != null) { // Think too much alr, this line is not needed // errorList.add("insufficient e$"); } } else if (existingBid.getStatus().equals("success")) { errorList.add("course enrolled"); } if (bv.parseClassTimeTableClash(userID, courseID, sectionID) != null) { errorList.add("class timetable clash"); } if (bv.parseExamTimeTableClash(userID, courseID, sectionID) != null) { errorList.add("exam timetable clash"); } if (bv.parseIncompletePrerequisite(userID, courseID) != null) { errorList.add("incomplete prerequisites"); } if (bv.parseAlreadyComplete(userID, courseID) != null) { errorList.add("course completed"); } if (bv.parseSectionLimit(userID, courseID, sectionID) != null) { errorList.add("section limit reached"); } if (bv.parseNotOwnSchoolCourse(userID, courseID) != null) { errorList.add("not own school course"); } ArrayList<SectionStudent> sectionStudentList = SectionStudentDAO.getInstance() .getSectionStudentListWithID(courseID, sectionID); int vacancy = section.getSize() - sectionStudentList.size(); if (vacancy <= 0) { errorList.add("no vacancy"); } } else { errorList.add("round ended"); } if (errorList.size() > 0) { Collections.sort(errorList); for (String s : errorList) { allErrors.add(new JsonPrimitive(s)); } reponseObject.addProperty("status", "error"); reponseObject.add("message", allErrors); response.setContentType("application/json"); response.getWriter().write(reponseObject.toString()); return; } else { //success state Bid newBid = new Bid(userID, amount, courseID, sectionID, "pending"); if (existingBid != null) { //there is an existing bid MinBidDAO.getInstance().getMinBidList().remove(courseID + "-" + sectionID); MinBidDAO.getInstance().refresh(); BidPlacementServlet.updateCurrentBid(userID, courseID, sectionID, amount, student); } else { student.seteDollar(student.geteDollar() - amount); manager.setEDollar(userID, student.geteDollar()); BidDAO.getInstance().addBid(newBid); manager.addBid(newBid); //dk if this is needed if (round == 1) { RoundOneBidDAO.getInstance().addBid(newBid); } else if (round == 2) { RoundTwoBidDAO.getInstance().addBid(newBid); } } MinBidDAO.getInstance().refresh(); reponseObject.addProperty("status", "success"); } response.setContentType("application/json"); response.getWriter().write(reponseObject.toString()); return; }
From source file:com.bizideal.whoami.utils.cloopen.CCPRestSmsSDK.java
License:Open Source License
private HashMap<String, Object> jsonToMap(String result) { HashMap<String, Object> hashMap = new HashMap<String, Object>(); JsonParser parser = new JsonParser(); JsonObject asJsonObject = parser.parse(result).getAsJsonObject(); Set<Entry<String, JsonElement>> entrySet = asJsonObject.entrySet(); HashMap<String, Object> hashMap2 = new HashMap<String, Object>(); for (Map.Entry<String, JsonElement> m : entrySet) { if ("statusCode".equals(m.getKey()) || "statusMsg".equals(m.getKey())) hashMap.put(m.getKey(), m.getValue().getAsString()); else {/*from w ww. ja v a2 s . c o m*/ if ("SubAccount".equals(m.getKey()) || "totalCount".equals(m.getKey()) || "token".equals(m.getKey()) || "downUrl".equals(m.getKey())) { if (!"SubAccount".equals(m.getKey())) hashMap2.put(m.getKey(), m.getValue().getAsString()); else { try { if ((m.getValue().toString().trim().length() <= 2) && !m.getValue().toString().contains("[")) { hashMap2.put(m.getKey(), m.getValue().getAsString()); hashMap.put("data", hashMap2); break; } if (m.getValue().toString().contains("[]")) { hashMap2.put(m.getKey(), new JsonArray()); hashMap.put("data", hashMap2); continue; } JsonArray asJsonArray = parser.parse(m.getValue().toString()).getAsJsonArray(); ArrayList<HashMap<String, Object>> arrayList = new ArrayList<HashMap<String, Object>>(); for (JsonElement j : asJsonArray) { Set<Entry<String, JsonElement>> entrySet2 = j.getAsJsonObject().entrySet(); HashMap<String, Object> hashMap3 = new HashMap<String, Object>(); for (Map.Entry<String, JsonElement> m2 : entrySet2) { hashMap3.put(m2.getKey(), m2.getValue().getAsString()); } arrayList.add(hashMap3); } hashMap2.put("SubAccount", arrayList); } catch (Exception e) { JsonObject asJsonObject2 = parser.parse(m.getValue().toString()).getAsJsonObject(); Set<Entry<String, JsonElement>> entrySet2 = asJsonObject2.entrySet(); HashMap<String, Object> hashMap3 = new HashMap<String, Object>(); for (Map.Entry<String, JsonElement> m2 : entrySet2) { hashMap3.put(m2.getKey(), m2.getValue().getAsString()); } hashMap2.put(m.getKey(), hashMap3); hashMap.put("data", hashMap2); } } hashMap.put("data", hashMap2); } else { JsonObject asJsonObject2 = parser.parse(m.getValue().toString()).getAsJsonObject(); Set<Entry<String, JsonElement>> entrySet2 = asJsonObject2.entrySet(); HashMap<String, Object> hashMap3 = new HashMap<String, Object>(); for (Map.Entry<String, JsonElement> m2 : entrySet2) { hashMap3.put(m2.getKey(), m2.getValue().getAsString()); } if (hashMap3.size() != 0) { hashMap2.put(m.getKey(), hashMap3); } else { hashMap2.put(m.getKey(), m.getValue().getAsString()); } hashMap.put("data", hashMap2); } } } return hashMap; }
From source file:com.blackducksoftware.integration.hub.api.report.ReportRestService.java
License:Apache License
/** * Generates a new Hub report for the specified version. * * @return the Report URL//from w w w . java 2 s . c om * */ public String startGeneratingHubReport(final ProjectVersionItem version, final ReportFormatEnum reportFormat, final ReportCategoriesEnum[] categories) throws IOException, BDRestException, URISyntaxException, UnexpectedHubResponseException { if (ReportFormatEnum.UNKNOWN == reportFormat) { throw new IllegalArgumentException("Can not generate a report of format : " + reportFormat); } final JsonObject json = new JsonObject(); json.addProperty("reportFormat", reportFormat.name()); if (categories != null) { final JsonArray categoriesJson = new JsonArray(); for (final ReportCategoriesEnum category : categories) { categoriesJson.add(category.name()); } json.add("categories", categoriesJson); } final HubRequest hubRequest = new HubRequest(getRestConnection()); hubRequest.setMethod(Method.POST); hubRequest.setLimit(HubRequest.EXCLUDE_INTEGER_QUERY_PARAMETER); hubRequest.setUrl(getVersionReportLink(version)); final StringRepresentation stringRep = new StringRepresentation(getRestConnection().getGson().toJson(json)); stringRep.setMediaType(MediaType.APPLICATION_JSON); stringRep.setCharacterSet(CharacterSet.UTF_8); String location = null; try { location = hubRequest.executePost(stringRep); } catch (final ResourceDoesNotExistException ex) { throw new BDRestException("There was a problem generating a report for this Version.", ex, ex.getResource()); } return location; }
From source file:com.blackducksoftware.integration.hub.HubIntRestService.java
License:Apache License
/** * Generates a new Hub report for the specified version. * * @return the Report URL//w w w . j av a 2 s. c om * */ public String generateHubReport(final ProjectVersionItem version, final ReportFormatEnum reportFormat, final ReportCategoriesEnum[] categories) throws IOException, BDRestException, URISyntaxException, UnexpectedHubResponseException { if (ReportFormatEnum.UNKNOWN == reportFormat) { throw new IllegalArgumentException("Can not generate a report of format : " + reportFormat); } final JsonObject json = new JsonObject(); json.addProperty("reportFormat", reportFormat.name()); if (categories != null) { final JsonArray categoriesJson = new JsonArray(); for (final ReportCategoriesEnum category : categories) { categoriesJson.add(category.name()); } json.add("categories", categoriesJson); } final StringRepresentation stringRep = new StringRepresentation( hubServicesFactory.getRestConnection().getGson().toJson(json)); stringRep.setMediaType(MediaType.APPLICATION_JSON); stringRep.setCharacterSet(CharacterSet.UTF_8); String location = null; try { location = hubServicesFactory.getRestConnection().httpPostFromAbsoluteUrl(getVersionReportLink(version), stringRep); } catch (final ResourceDoesNotExistException ex) { throw new BDRestException("There was a problem generating a report for this Version.", ex, ex.getResource()); } return location; }
From source file:com.bosch.osmi.bdp.access.mock.generator.MockDataGenerator.java
License:Open Source License
private void executeMethodsOfType(Class<?> type, Object object, JsonObject parent) throws InvocationTargetException, IllegalAccessException { Method[] methods = type.getMethods(); for (Method method : methods) { LOGGER.info("Evaluate method " + method.getName()); Object result = method.invoke(object); if (result == null) { System.out.println(); throw new IllegalStateException("Return value is null. Cannot be processed."); }/* ww w . j a v a 2 s .c o m*/ if (result instanceof String) { parent.addProperty(method.getName(), (String) result); } else if (result instanceof Boolean) { parent.addProperty(method.getName(), (Boolean) result); } else if (result instanceof Collection<?>) { JsonArray entries = new JsonArray(); parent.add(method.getName(), entries); evaluateElements((Collection<?>) result, entries); } else if (result instanceof BdpEntity) { JsonObject jsonObject = new JsonObject(); parent.add(method.getName(), jsonObject); evaluate(result, jsonObject); } else { throw new IllegalStateException( "Return value not of any processable type " + result.getClass().getCanonicalName()); } } }
From source file:com.btbb.figadmin.VanillaBans.java
License:Open Source License
public static void exportBans(List<EditBan> bans) throws IOException { JsonArray mcbans = new JsonArray(); JsonArray ipbans = new JsonArray(); for (EditBan b : bans) { String created = "", expires = ""; if (b.time > 0) created = mcDateFormat.format(new Date(b.time)); if (b.endTime > 0) expires = mcDateFormat.format(new Date(b.endTime)); if (b.type == EditBan.BanType.IPBAN && b.ipAddress != null) ipbans.add(new IPBan(b.ipAddress, created, b.admin, expires, b.reason).toJson()); if (b.type == EditBan.BanType.BAN || (b.type == EditBan.BanType.IPBAN && b.ipAddress == null)) mcbans.add(new MCBan(b.uuid.toString(), b.name, created, b.admin, expires, b.reason).toJson()); }/*from ww w . java 2 s.c o m*/ GsonBuilder gsonbuilder = (new GsonBuilder()).setPrettyPrinting(); Gson b = gsonbuilder.create(); String s = b.toJson(mcbans); BufferedWriter bufferedwriter = null; try { bufferedwriter = Files.newWriter(new File("banned-players.json"), Charsets.UTF_8); bufferedwriter.write(s); } finally { IOUtils.closeQuietly(bufferedwriter); s = b.toJson(ipbans); } try { bufferedwriter = Files.newWriter(new File("banned-ips.json"), Charsets.UTF_8); bufferedwriter.write(s); } finally { IOUtils.closeQuietly(bufferedwriter); } }