@PUT @Consumes(MediaType.APPLICATION_JSON) public Response addUpdateListItem(InputStream incomingData) { StringBuilder listBuilder = new StringBuilder(); try { BufferedReader in = new BufferedReader(new InputStreamReader(incomingData)); String line = null; while ((line = in.readLine()) != null) { listBuilder.append(line); } } catch (Exception e) { System.out.println("Error Parsing :- "); } try { JSONObject json = new JSONObject(listBuilder.toString()); Iterator<String> iterator = json.keys(); ListItem item = new ListItem( (String) json.get(iterator.next()), (String) json.get(iterator.next()), Boolean.parseBoolean((String) json.get(iterator.next()))); int index = list.indexOf(item); item = list.get(index); list.remove(index); item.setTitle((String) json.get(iterator.next())); item.setBody((String) json.get(iterator.next())); list.add(index, item); } catch (JSONException e) { e.printStackTrace(); } // return HTTP response 200 in case of success return Response.status(200).entity(listBuilder.toString()).build(); }
@DELETE @Produces(value = "text/plain") @Path("/{title}/{body}/{done}") public String delete( @PathParam("title") String title, @PathParam("body") String body, @PathParam("done") String done) { System.out.println("Incoming values : " + title + " " + body + " " + done); Boolean doneFlag = Boolean.parseBoolean(done); ListItem deleteItem = new ListItem(title, body, doneFlag); list.remove(deleteItem); return deleteItem.toString(); }
@PUT @Path("{title}/{body}/{isDone}") @Produces(value = "text/plain") @Consumes(MediaType.TEXT_PLAIN) public Response toggleStatusListItem( @PathParam("title") String title, @PathParam("body") String body, @PathParam("isDone") boolean isDone) { // Find your Account Sid and Token at twilio.com/user/account ListItem item = new ListItem(title, body, isDone); boolean done = isDone ? false : true; int index = list.indexOf(item); item.setDone(done); list.remove(index); list.add(index, item); if (isDone == Boolean.FALSE) { String ACCOUNT_SID = "AC96d0a9024203de2a4177624c789fad17"; String AUTH_TOKEN = "919a89967cc484a35a1a0cfd0555dd57"; TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN); try { // Build a filter for the MessageList List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair("Body", "Task : " + body + "is complete.")); params.add(new BasicNameValuePair("To", "+14086270378")); params.add(new BasicNameValuePair("From", "+18316847487")); MessageFactory messageFactory = client.getAccount().getMessageFactory(); Message message = messageFactory.create(params); System.out.println(message.getSid()); return Response.status(200).entity(body.toString()).build(); } catch (TwilioRestException e) { System.out.println(e.getErrorMessage()); } } return Response.status(500).entity(body.toString()).build(); }