List of usage examples for com.amazonaws.services.sns.model DeleteTopicRequest DeleteTopicRequest
public DeleteTopicRequest(String topicArn)
From source file:com.amazon.aws.demo.anonymous.sns.SimpleNotification.java
License:Open Source License
public static void deleteTopic(String name) { DeleteTopicRequest req = new DeleteTopicRequest(name); getInstance().deleteTopic(req); }
From source file:com.amazon.aws.demo.anonymous.sns.SnsDeleteTopicList.java
License:Open Source License
protected void wireOnListClick() { getItemList().setOnItemClickListener(new OnItemClickListener() { @Override//from w w w . j a v a 2s . co m public void onItemClick(AdapterView<?> list, View view, int position, long id) { clickedTopicArn = ((TextView) view).getText().toString(); AlertDialog.Builder builder = new AlertDialog.Builder(SnsDeleteTopicList.this); builder.setMessage("Are you sure you want to delete: " + clickedTopicArn).setCancelable(false) .setPositiveButton("Yes", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { SimpleNotification.getInstance() .deleteTopic(new DeleteTopicRequest(clickedTopicArn)); startPopulateList(); } }).setNegativeButton("No", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); builder.show(); } }); }
From source file:com.amazon.aws.samplecode.travellog.aws.TravelLogSNSManager.java
License:Open Source License
/** * Deletes a previously created topic associated with the entry. * /*from w ww. j a va2 s . com*/ * @param entry the entry to be deleted */ public void deleteTopic(Entry entry) { DeleteTopicRequest request = new DeleteTopicRequest(entry.getSnsArn()); snsClient.deleteTopic(request); }
From source file:com.comcast.cmb.test.tools.CMBTutorial.java
License:Apache License
public static void main(String[] args) { try {/*from w w w .ja va 2 s . co m*/ Util.initLog4jTest(); //TODO: set user id and credentials for two distinct users // user "cqs_test_1" //BasicAWSCredentials user1Credentials = new BasicAWSCredentials("<access_key>", "<secret_key>"); BasicAWSCredentials user1Credentials = new BasicAWSCredentials("Z2DVBFRNZ2C2SSXDWS5F", "bH2UQiJkpctBaE3eaDob19fj5J9Q1FVafrZantBp"); // user "cqs_test_2" //String user2Id = "<user_id>"; String user2Id = "389653920093"; //BasicAWSCredentials user2Credentials = new BasicAWSCredentials("<access_key>", "<secret_key>"); BasicAWSCredentials user2Credentials = new BasicAWSCredentials("QL8Q1VOBCSJC5FZ2DMIU", "n6a82gyJZ04Z+Xqp7OgfqPtbbKqVc3UbuOTNrF+7"); // service urls //TODO: add service URLs //String cqsServerUrl = "http://<host>:<port>"; //String cnsServerUrl = "http://<host>:<port>"; String cqsServerUrl = "http://localhost:6059"; String cnsServerUrl = "http://localhost:6061"; // initialize service AmazonSQSClient sqs = new AmazonSQSClient(user1Credentials); sqs.setEndpoint(cqsServerUrl); AmazonSNSClient sns = new AmazonSNSClient(user2Credentials); sns.setEndpoint(cnsServerUrl); // create queue Random randomGenerator = new Random(); String queueName = QUEUE_PREFIX + randomGenerator.nextLong(); HashMap<String, String> attributeParams = new HashMap<String, String>(); CreateQueueRequest createQueueRequest = new CreateQueueRequest(queueName); createQueueRequest.setAttributes(attributeParams); String queueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); AddPermissionRequest addPermissionRequest = new AddPermissionRequest(); addPermissionRequest.setQueueUrl(queueUrl); addPermissionRequest.setActions(Arrays.asList("SendMessage")); addPermissionRequest.setLabel(UUID.randomUUID().toString()); addPermissionRequest.setAWSAccountIds(Arrays.asList(user2Id)); sqs.addPermission(addPermissionRequest); // create topic String topicName = "TSTT" + randomGenerator.nextLong(); CreateTopicRequest createTopicRequest = new CreateTopicRequest(topicName); CreateTopicResult createTopicResult = sns.createTopic(createTopicRequest); String topicArn = createTopicResult.getTopicArn(); // subscribe and confirm cqs endpoint SubscribeRequest subscribeRequest = new SubscribeRequest(); String queueArn = getArnForQueueUrl(queueUrl); subscribeRequest.setEndpoint(queueArn); subscribeRequest.setProtocol("cqs"); subscribeRequest.setTopicArn(topicArn); SubscribeResult subscribeResult = sns.subscribe(subscribeRequest); String subscriptionArn = subscribeResult.getSubscriptionArn(); if (subscriptionArn.equals("pending confirmation")) { Thread.sleep(500); ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(); receiveMessageRequest.setQueueUrl(queueUrl); receiveMessageRequest.setMaxNumberOfMessages(1); ReceiveMessageResult receiveMessageResult = sqs.receiveMessage(receiveMessageRequest); List<Message> messages = receiveMessageResult.getMessages(); if (messages != null && messages.size() == 1) { JSONObject o = new JSONObject(messages.get(0).getBody()); if (!o.has("SubscribeURL")) { throw new Exception("message is not a confirmation messsage"); } String subscriptionUrl = o.getString("SubscribeURL"); httpGet(subscriptionUrl); DeleteMessageRequest deleteMessageRequest = new DeleteMessageRequest(); deleteMessageRequest.setReceiptHandle(messages.get(0).getReceiptHandle()); deleteMessageRequest.setQueueUrl(queueUrl); sqs.deleteMessage(deleteMessageRequest); } else { throw new Exception("no confirmation message found"); } } // publish and receive message PublishRequest publishRequest = new PublishRequest(); String messageText = "quamvis sint sub aqua, sub aqua maledicere temptant"; publishRequest.setMessage(messageText); publishRequest.setSubject("unit test message"); publishRequest.setTopicArn(topicArn); sns.publish(publishRequest); Thread.sleep(500); ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(); receiveMessageRequest.setQueueUrl(queueUrl); receiveMessageRequest.setMaxNumberOfMessages(1); ReceiveMessageResult receiveMessageResult = sqs.receiveMessage(receiveMessageRequest); List<Message> messages = receiveMessageResult.getMessages(); if (messages != null && messages.size() == 1) { String messageBody = messages.get(0).getBody(); if (!messageBody.contains(messageText)) { throw new Exception("message text not found"); } DeleteMessageRequest deleteMessageRequest = new DeleteMessageRequest(); deleteMessageRequest.setReceiptHandle(messages.get(0).getReceiptHandle()); deleteMessageRequest.setQueueUrl(queueUrl); sqs.deleteMessage(deleteMessageRequest); } else { throw new Exception("no messages found"); } // subscribe and confirm http endpoint String id = randomGenerator.nextLong() + ""; String endPointUrl = CMBTestingConstants.HTTP_ENDPOINT_BASE_URL + "recv/" + id; String lastMessageUrl = CMBTestingConstants.HTTP_ENDPOINT_BASE_URL + "info/" + id + "?showLast=true"; subscribeRequest = new SubscribeRequest(); subscribeRequest.setEndpoint(endPointUrl); subscribeRequest.setProtocol("http"); subscribeRequest.setTopicArn(topicArn); subscribeResult = sns.subscribe(subscribeRequest); subscriptionArn = subscribeResult.getSubscriptionArn(); if (subscriptionArn.equals("pending confirmation")) { Thread.sleep(500); String response = httpGet(lastMessageUrl); JSONObject o = new JSONObject(response); if (!o.has("SubscribeURL")) { throw new Exception("message is not a confirmation messsage"); } String subscriptionUrl = o.getString("SubscribeURL"); response = httpGet(subscriptionUrl); } // publish and receive message publishRequest = new PublishRequest(); publishRequest.setMessage(messageText); publishRequest.setSubject("unit test message"); publishRequest.setTopicArn(topicArn); sns.publish(publishRequest); Thread.sleep(500); String response = httpGet(lastMessageUrl); if (response != null && response.length() > 0) { if (!response.contains(messageText)) { throw new Exception("message text not found"); } } else { throw new Exception("no messages found"); } // delete queue and topic DeleteTopicRequest deleteTopicRequest = new DeleteTopicRequest(topicArn); sns.deleteTopic(deleteTopicRequest); sqs.deleteQueue(new DeleteQueueRequest(queueUrl)); System.out.println("OK"); } catch (Exception ex) { ex.printStackTrace(); } }
From source file:com.comcast.cns.controller.CNSUserPageServlet.java
License:Apache License
@Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if (redirectUnauthenticatedUser(request, response)) { return;/* w w w.j ava 2s. c o m*/ } CMBControllerServlet.valueAccumulator.initializeAllCounters(); response.setContentType("text/html"); PrintWriter out = response.getWriter(); Map<?, ?> parameters = request.getParameterMap(); String userId = request.getParameter("userId"); String topicName = request.getParameter("topic"); String arn = request.getParameter("arn"); String displayName = request.getParameter("display"); String nextToken = request.getParameter("nextToken"); List<Topic> topics = new ArrayList<Topic>(); connect(request); if (parameters.containsKey("Create")) { try { CreateTopicRequest createTopicRequest = new CreateTopicRequest(topicName); CreateTopicResult createTopicResult = sns.createTopic(createTopicRequest); arn = createTopicResult.getTopicArn(); SetTopicAttributesRequest setTopicAttributesRequest = new SetTopicAttributesRequest(arn, "DisplayName", displayName); sns.setTopicAttributes(setTopicAttributesRequest); logger.debug("event=create topic_name=" + topicName + " topic_arn=" + arn + " user_id=" + userId); } catch (Exception ex) { logger.error("event=create topic_name=" + topicName + " user_id=" + userId); throw new ServletException(ex); } } else if (parameters.containsKey("Delete")) { try { DeleteTopicRequest deleteTopicRequest = new DeleteTopicRequest(arn); sns.deleteTopic(deleteTopicRequest); logger.debug("event=delete_topic topic_arn=" + arn + " user_id= " + userId); } catch (Exception ex) { logger.error("event=delete_topic topic_arn=" + arn + " user_id= " + userId, ex); throw new ServletException(ex); } } else if (parameters.containsKey("DeleteAll")) { try { ListTopicsRequest listTopicRequest = new ListTopicsRequest(); if (nextToken != null) { listTopicRequest.setNextToken(nextToken); } ListTopicsResult listTopicResult = sns.listTopics(listTopicRequest); topics = listTopicResult.getTopics(); } catch (Exception ex) { logger.error("event=list_topics user_id= " + userId, ex); throw new ServletException(ex); } for (int i = 0; topics != null && i < topics.size(); i++) { Topic t = topics.get(i); try { DeleteTopicRequest deleteTopicRequest = new DeleteTopicRequest(t.getTopicArn()); sns.deleteTopic(deleteTopicRequest); logger.debug("event=delete_topic topic_arn=" + (t != null ? t.getTopicArn() : "null") + " user_id= " + userId); } catch (Exception ex) { logger.error("event=delete_topic topic_arn=" + (t != null ? t.getTopicArn() : "null") + " user_id= " + userId, ex); } } } out.println("<html>"); header(request, out, "Topics"); out.println("<body>"); out.println("<h2>Topics</h2>"); long numTopics = 0; try { numTopics = PersistenceFactory.getUserPersistence().getNumUserTopics(userId); } catch (PersistenceException ex) { logger.warn("event=queue_count_failure", ex); } if (user != null) { out.println("<table><tr><td><b>User Name:</b></td><td>" + user.getUserName() + "</td></tr>"); out.println("<tr><td><b>User ID:</b></td><td>" + user.getUserId() + "</td></tr>"); out.println("<tr><td><b>Access Key:</b></td><td>" + user.getAccessKey() + "</td></tr>"); out.println("<tr><td><b>Access Secret:</b></td><td>" + user.getAccessSecret() + "</td>"); out.println("<tr><td><b>Topic Count</b></td><td>" + numTopics + "</td></tr></table>"); } out.println("<p><table>"); out.println("<tr><td><b>Topic Name</b></td><td><b>Topic Display Name</b></td><td></td></tr>"); out.println("<form action=\"/webui/cnsuser?userId=" + userId + "\" " + "method=POST>"); out.println( "<tr><td><input type='text' name='topic' /></td><td><input type='text' name='display'><input type='hidden' name='userId' value='" + userId + "'></td><td><input type='submit' value='Create' name='Create' /></td></tr></form></table></p>"); out.println("<p><table>"); out.println("<form action=\"/webui/cnsuser?userId=" + userId + "\" " + "method=POST>"); out.println("<tr><td><input type='hidden' name='userId' value='" + userId + "'></td><td><input type='submit' value='Delete All' name='DeleteAll' onclick=\"return confirm('Are you sure you want to delete all topics?')\" /></td></tr></form></table></p>"); ListTopicsResult listTopicResult = null; try { ListTopicsRequest listTopicRequest = new ListTopicsRequest(); if (nextToken != null) { listTopicRequest.setNextToken(nextToken); } listTopicResult = sns.listTopics(listTopicRequest); topics = listTopicResult.getTopics(); } catch (Exception ex) { logger.error("event=list_topics user_id= " + userId, ex); throw new ServletException(ex); } out.println("<p><hr width='100%' align='left' /></p>"); out.println("<p><table class = 'alternatecolortable' border='1'>"); out.println("<tr><th> </th>"); out.println("<th>Topic Arn</th>"); out.println("<th>Topic Name</th>"); out.println("<th>Topic Display Name</th>"); out.println("<th>User ID</th>"); out.println("<th>Subscriptions Pending</th>"); out.println("<th>Subscriptions Confirmed</th>"); out.println("<th> </th>"); out.println("<th> </th>"); out.println("<th> </th>"); out.println("<th> </th>"); out.println("<th> </th></tr>"); for (int i = 0; topics != null && i < topics.size(); i++) { Topic t = topics.get(i); GetTopicAttributesRequest getTopicAttributesRequest = new GetTopicAttributesRequest(t.getTopicArn()); GetTopicAttributesResult getTopicAttributesResult = sns.getTopicAttributes(getTopicAttributesRequest); Map<String, String> attributes = getTopicAttributesResult.getAttributes(); out.println("<tr>"); out.println("<form action=\"/webui/cnsuser?userId=" + userId + "\" method=POST>"); out.println("<td>" + i + "</td>"); out.println("<td>" + t.getTopicArn() + "<input type='hidden' name='arn' value=" + t.getTopicArn() + "></td>"); out.println("<td>" + Util.getNameFromTopicArn(t.getTopicArn()) + "</td>"); out.println("<td><a href='' onclick=\"window.open('/webui/cnsuser/editdisplayname?topicArn=" + t.getTopicArn() + "&userId=" + userId + "', 'EditDisplayName', 'height=300,width=700,toolbar=no')\">" + (attributes.get("DisplayName") == null ? "{unset}" : attributes.get("DisplayName")) + "</a></td>"); out.println("<td>" + user.getUserId() + "<input type='hidden' name='userId' value=" + user.getUserId() + "></td>"); out.println("<td>" + attributes.get("SubscriptionsPending") + "</td>"); out.println("<td>" + attributes.get("SubscriptionsConfirmed") + "</td>"); out.println("<td><a href='/webui/cnsuser/subscription?userId=" + userId + "&topicArn=" + t.getTopicArn() + "'>Subscriptions</a></td>"); out.println("<td><a href='/webui/cnsuser/publish?userId=" + userId + "&topicArn=" + t.getTopicArn() + "' target='_blank'>Publish</a></td>"); out.println("<td><a href='' onclick=\"window.open('/webui/cnsuser/editdeliverypolicy?topicArn=" + t.getTopicArn() + "&userId=" + userId + "', 'EditDeliveryPolicy', 'height=630,width=580,toolbar=no')\">View/Edit Topic Delivery Policy</a></td>"); out.println("<td><a href='/webui/cnsuser/permission?topicArn=" + t.getTopicArn() + "&userId=" + userId + "'>Permission</a></td>"); out.println( "<td><input type='submit' value='Delete' name='Delete' onclick=\"return confirm('Are you sure you want to delete topic " + Util.getNameFromTopicArn(t.getTopicArn()) + "?')\" /></td></form></tr>"); } out.println("</table></p>"); if (listTopicResult != null && listTopicResult.getNextToken() != null) { out.println("<p><a href='/webui/cnsuser?userId=" + userId + "&nextToken=" + response.encodeURL(listTopicResult.getNextToken()) + "'>next ></a></p>"); } out.println("<h5 style='text-align:center;'><a href='/webui'>ADMIN HOME</a></h5>"); out.println("</body></html>"); CMBControllerServlet.valueAccumulator.deleteAllCounters(); }
From source file:com.dev.appx.sns.SNSMobilePush.java
License:Open Source License
public void deleteTopic(String topicArn) throws IOException { //AmazonSNSClient snsClient = new AmazonSNSClient(new ClasspathPropertiesFileCredentialsProvider()); AmazonSNS snsClient = new AmazonSNSClient( new PropertiesCredentials(SNSMobilePush.class.getResourceAsStream("AwsCredentials.properties"))); //delete an SNS topic DeleteTopicRequest deleteTopicRequest = new DeleteTopicRequest(topicArn); snsClient.deleteTopic(deleteTopicRequest); //get request id for DeleteTopicRequest from SNS metadata System.out.println("DeleteTopicRequest - " + snsClient.getCachedResponseMetadata(deleteTopicRequest)); }
From source file:com.easarrive.aws.plugins.common.service.impl.SNSService.java
License:Open Source License
/** * {@inheritDoc}// w w w. j a va 2 s. c o m */ @Override public DeleteTopicResult deleteTopic(AmazonSNS client, SNSTopicRequest topicRequest) { if (topicRequest == null) { return null; } // delete an SNS topic DeleteTopicRequest deleteTopicRequest = new DeleteTopicRequest(topicRequest.getTopicArn()); DeleteTopicResult result = client.deleteTopic(deleteTopicRequest); return result; }
From source file:com.leverno.ysbos.archive.example.AmazonGlacierDownloadInventoryWithSQSPolling.java
License:Open Source License
private static void cleanUp() { snsClient.unsubscribe(new UnsubscribeRequest(snsSubscriptionARN)); snsClient.deleteTopic(new DeleteTopicRequest(snsTopicARN)); sqsClient.deleteQueue(new DeleteQueueRequest(sqsQueueURL)); }
From source file:net.smartcosmos.plugin.service.aws.notification.AwsNotificationService.java
License:Apache License
@Override public void deleteTopic(INotificationEndpoint notificationEndpoint) { Preconditions.checkArgument((notificationEndpoint != null), "Notification endpoint must not be null"); Preconditions.checkArgument((notificationEndpoint.getTopicArn() != null), "Notification Topic ARN must not be null"); AmazonSNS sns = new AmazonSNSClient(credentials); Region usEast1 = Region.getRegion(Regions.US_EAST_1); sns.setRegion(usEast1);//from w ww. j av a 2s.c o m try { DeleteTopicRequest request = new DeleteTopicRequest(notificationEndpoint.getTopicArn()); sns.deleteTopic(request); } finally { sns.shutdown(); } // // Event // INotificationResultObject<IAccount> nro = new NotificationResultObject<>(EntityReferenceType.Account, notificationEndpoint.getAccount(), ""); IEventService eventService = context.getServiceFactory().getEventService(notificationEndpoint.getAccount()); eventService.recordEvent(EventType.NotificationWithdrawn, notificationEndpoint.getAccount(), null, nro); }
From source file:org.transitime.maintenance.AwsGlacierInventoryRetriever.java
License:Open Source License
/** * To be called when done with this object. Cleans up notifications for when * jobs complete.//from ww w .jav a2 s.c o m */ private void cleanUp() { snsClient.unsubscribe(new UnsubscribeRequest(snsSubscriptionARN)); snsClient.deleteTopic(new DeleteTopicRequest(snsTopicARN)); sqsClient.deleteQueue(new DeleteQueueRequest(sqsQueueURL)); }