List of usage examples for com.amazonaws.services.sqs.model CreateQueueRequest CreateQueueRequest
public CreateQueueRequest(String queueName)
From source file:aws.sample.SimpleQueueServiceSample.java
License:Open Source License
public static void main(String[] args) throws Exception { /*// ww w. j av a 2 s . c o m * Important: Be sure to fill in your AWS access credentials in the AwsCredentials.properties file before you try to run this sample. http://aws.amazon.com/security-credentials */ AmazonSQS sqs = new AmazonSQSClient(new PropertiesCredentials( SimpleQueueServiceSample.class.getResourceAsStream("/AwsCredentials.properties"))); System.out.println("==========================================="); System.out.println("Getting Started with Amazon SQS"); System.out.println("===========================================\n"); try { // Create a queue System.out.println("Creating a new SQS queue called MyQueue.\n"); CreateQueueRequest createQueueRequest = new CreateQueueRequest("MyQueue"); String myQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); // List queues System.out.println("Listing all queues in your account.\n"); for (String queueUrl : sqs.listQueues().getQueueUrls()) { System.out.println(" QueueUrl: " + queueUrl); } System.out.println(); // Send a message System.out.println("Sending a message to MyQueue.\n"); sqs.sendMessage(new SendMessageRequest(myQueueUrl, "This is my message text.")); // Receive messages System.out.println("Receiving messages from MyQueue.\n"); ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(myQueueUrl); List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages(); for (Message message : messages) { System.out.println(" Message"); System.out.println(" MessageId: " + message.getMessageId()); System.out.println(" ReceiptHandle: " + message.getReceiptHandle()); System.out.println(" MD5OfBody: " + message.getMD5OfBody()); System.out.println(" Body: " + message.getBody()); for (Entry<String, String> entry : message.getAttributes().entrySet()) { System.out.println(" Attribute"); System.out.println(" Name: " + entry.getKey()); System.out.println(" Value: " + entry.getValue()); } } System.out.println(); // Delete a message System.out.println("Deleting a message.\n"); String messageRecieptHandle = messages.get(0).getReceiptHandle(); sqs.deleteMessage(new DeleteMessageRequest(myQueueUrl, messageRecieptHandle)); // Delete a queue System.out.println("Deleting the test queue.\n"); // sqs.deleteQueue(new DeleteQueueRequest(myQueueUrl)); } catch (AmazonServiceException ase) { System.out.println("Caught an AmazonServiceException, which means your request made it " + "to Amazon SQS, but was rejected with an error response for some reason."); System.out.println("Error Message: " + ase.getMessage()); System.out.println("HTTP Status Code: " + ase.getStatusCode()); System.out.println("AWS Error Code: " + ase.getErrorCode()); System.out.println("Error Type: " + ase.getErrorType()); System.out.println("Request ID: " + ase.getRequestId()); } catch (AmazonClientException ace) { System.out.println("Caught an AmazonClientException, which means the client encountered " + "a serious internal problem while trying to communicate with SQS, such as not " + "being able to access the network."); System.out.println("Error Message: " + ace.getMessage()); } }
From source file:awslabs.lab31.StudentCode.java
License:Open Source License
/** * Create an SQS queue using the queue name provided and return the URL for the new queue. Hint: Use the * createQueue() method of the client object. The URL is in the response. * /*from w ww . j a va 2 s. c o m*/ * @param sqsClient The SQS Client object. * @param queueName The name of the queue to create. * @return The URL of the newly created queue. */ @Override public String createQueue(AmazonSQSClient sqsClient, String queueName) { CreateQueueRequest queueRequest = new CreateQueueRequest(queueName); return sqsClient.createQueue(queueRequest).getQueueUrl(); }
From source file:br.com.surittec.suricdi.sqs.jms.SQSListenerHolder.java
License:Open Source License
private void checkQueue() throws JMSException { if (sqsListener.createQueue()) { AmazonSQS amazonSQS = ((SQSConnection) ((PooledConnection) connection).getConnection()) .getAmazonSQSClient();/*from ww w. j av a 2 s. c o m*/ try { amazonSQS.getQueueUrl(queue); } catch (QueueDoesNotExistException e) { CreateQueueRequest createQueueRequest = new CreateQueueRequest(queue); createQueueRequest.addAttributesEntry("DelaySeconds", String.valueOf(sqsListener.delaySeconds())); createQueueRequest.addAttributesEntry("MaximumMessageSize", String.valueOf(sqsListener.maximumMessageSize())); createQueueRequest.addAttributesEntry("MessageRetentionPeriod", String.valueOf(sqsListener.messageRetentionPeriod())); createQueueRequest.addAttributesEntry("ReceiveMessageWaitTimeSeconds", String.valueOf(sqsListener.receiveMessageWaitTimeSeconds())); createQueueRequest.addAttributesEntry("VisibilityTimeout", String.valueOf(sqsListener.visibilityTimeout())); amazonSQS.createQueue(createQueueRequest); } } }
From source file:Cloud.Tweets.SimpleQueueServiceSample.java
License:Open Source License
public AmazonSQS createSQSs() { System.out.println("helloooooooooooo"); AWSCredentials credentials;//from w w w . j ava 2 s.c o m try { credentials = new PropertiesCredentials( SimpleQueueServiceSample.class.getResourceAsStream("AwsCredentials.Properties")); System.out.println("hello"); //credentials = new ProfileCredentialsProvider("~/.aws/AwsCredentials.Properties").getCredentials(); } catch (Exception e) { throw new AmazonClientException("Cannot load the credentials from the credential profiles file. " + "Please make sure that your credentials file is at the correct " + "location (/Users/daniel/.aws/credentials), and is in valid format.", e); } AmazonSQS sqs = new AmazonSQSClient(credentials); System.out.println(sqs.toString()); Region usWest2 = Region.getRegion(Regions.US_WEST_2); sqs.setRegion(usWest2); System.out.println("==========================================="); System.out.println("Getting Started with Amazon SQS"); System.out.println("===========================================\n"); // Create a queue System.out.println("Creating a new SQS queue called MyQueue.\n"); CreateQueueRequest createQueueRequest = new CreateQueueRequest("MyQueue"); myQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); // List queues System.out.println("Listing all queues in your account.\n"); for (String queueUrl : sqs.listQueues().getQueueUrls()) { System.out.println(" QueueUrl: " + queueUrl); } System.out.println(); return sqs; }
From source file:com.amazon.aws.demo.anonymous.sqs.SimpleQueue.java
License:Open Source License
public static CreateQueueResult createQueue(String queueName) { CreateQueueRequest req = new CreateQueueRequest(queueName); return getInstance().createQueue(req); }
From source file:com.boundary.aws.sqs.Sample.java
License:Open Source License
public static void main(String[] args) throws Exception { String queueName = "boundary-sqs-demo-queue"; /*//from w ww. ja v a2s . c om * The ProfileCredentialsProvider will return your [default] credential * profile by reading from the credentials file located at * (HOME/.aws/credentials). */ AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider("default").getCredentials(); } catch (Exception e) { throw new AmazonClientException("Cannot load the credentials from the credential profiles file. ", e); } AmazonSQS sqs = new AmazonSQSClient(credentials); Region usWest2 = Region.getRegion(Regions.US_WEST_2); sqs.setRegion(usWest2); try { // Create a queue System.out.printf("Creating queue: %s.\n", queueName); CreateQueueRequest createQueueRequest = new CreateQueueRequest(queueName); String myQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); int messageCount = 100; // Send a messages for (int count = 1; count <= messageCount; count++) { System.out.printf("Sending message %3d to %s.\n", count, queueName); sqs.sendMessage(new SendMessageRequest(myQueueUrl, new Date() + ": This is my message text.")); } for (int count = 1; count <= messageCount; count++) { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(myQueueUrl); List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages(); for (Message msg : messages) { System.out.printf("Received message: %s queue: %s body: %s\n", msg.getMessageId(), queueName, msg.getBody()); System.out.printf("Deleting message: %s queue: %s\n", msg.getMessageId(), queueName); String messageRecieptHandle = msg.getReceiptHandle(); sqs.deleteMessage(new DeleteMessageRequest(myQueueUrl, messageRecieptHandle)); } } System.out.printf("Deleting queue: %s\n", queueName); sqs.deleteQueue(new DeleteQueueRequest(myQueueUrl)); } catch (AmazonServiceException ase) { System.out.println("Caught an AmazonServiceException, which means your request made it " + "to Amazon SQS, but was rejected with an error response for some reason."); System.out.println("Error Message: " + ase.getMessage()); System.out.println("HTTP Status Code: " + ase.getStatusCode()); System.out.println("AWS Error Code: " + ase.getErrorCode()); System.out.println("Error Type: " + ase.getErrorType()); System.out.println("Request ID: " + ase.getRequestId()); } catch (AmazonClientException ace) { System.out.println("Caught an AmazonClientException, which means the client encountered " + "a serious internal problem while trying to communicate with SQS, such as not " + "being able to access the network."); System.out.println("Error Message: " + ace.getMessage()); } sqs.shutdown(); }
From source file:com.clicktravel.infrastructure.messaging.aws.sqs.DefaultSqsQueueResourceFactory.java
License:Apache License
private String createAwsSqsQueue(final String name) { logger.info("Creating SQS queue: " + name); final Map<String, String> attributes = new HashMap<>(); attributes.put(SQS_VISIBILITY_TIMEOUT_ATTRIBUTE, SQS_VISIBILITY_TIMEOUT_VALUE); final CreateQueueRequest createQueueRequest = new CreateQueueRequest(name).withAttributes(attributes); return amazonSqsClient.createQueue(createQueueRequest).getQueueUrl(); }
From source file:com.comcast.cmb.common.controller.AdminServletBase.java
License:Apache License
protected String httpPOST(String baseUrl, String urlString, AWSCredentials awsCredentials) { URL url;/*from ww w .j a v a 2 s . c o m*/ HttpURLConnection conn; BufferedReader br; String line; String doc = ""; try { String urlPost = urlString.substring(0, urlString.indexOf("?")); url = new URL(urlPost); conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); CreateQueueRequest createQueueRequest = new CreateQueueRequest("test"); Request<CreateQueueRequest> request = new CreateQueueRequestMarshaller().marshall(createQueueRequest); //set parameters from url String parameterString = urlString.substring(urlString.indexOf("?") + 1); String[] parameterArray = parameterString.split("&"); Map<String, String> requestParameters = new HashMap<String, String>(); for (int i = 0; i < parameterArray.length; i++) { requestParameters.put(parameterArray[i].substring(0, parameterArray[i].indexOf("=")), parameterArray[i].substring(parameterArray[i].indexOf("=") + 1)); } request.setParameters(requestParameters); //get endpoint from url URI uri = new URI(baseUrl); request.setEndpoint(uri); String resourcePath = urlString.substring(baseUrl.length(), urlString.indexOf("?")); request.setResourcePath(resourcePath); AWS4Signer aws4Signer = new AWS4Signer(); String host = uri.getHost(); aws4Signer.setServiceName(host); aws4Signer.sign(request, awsCredentials); //set headers for real request for (Entry<String, String> entry : request.getHeaders().entrySet()) { conn.setRequestProperty(entry.getKey(), entry.getValue()); } // Send post request conn.setDoOutput(true); DataOutputStream wr = new DataOutputStream(conn.getOutputStream()); StringBuffer bodyStringBuffer = new StringBuffer(); for (Entry<String, String> entry : requestParameters.entrySet()) { bodyStringBuffer.append(entry.getKey() + "=" + entry.getValue() + "&"); } String bodyString = ""; if (bodyStringBuffer.length() > 0) { bodyString = bodyStringBuffer.substring(0, bodyStringBuffer.length() - 1); } wr.writeBytes(bodyString); wr.flush(); wr.close(); br = new BufferedReader(new InputStreamReader(conn.getInputStream())); while ((line = br.readLine()) != null) { doc += line; } br.close(); logger.info("event=http_get url=" + urlString); } catch (Exception ex) { logger.error("event=http_get url=" + urlString, ex); } return doc; }
From source file:com.comcast.cmb.test.tools.CMBTutorial.java
License:Apache License
public static void main(String[] args) { try {/* www. j a v a2s . c o 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.tools.CQSHandler.java
License:Apache License
public static synchronized void ensureQueuesExist(String queueNamePrefix, int numShards) { for (int i = 0; i < numShards; i++) { GetQueueUrlRequest getQueueUrlRequest = new GetQueueUrlRequest(queueNamePrefix + i); try {//from ww w . ja v a 2 s .c om sqs.getQueueUrl(getQueueUrlRequest); } catch (AmazonServiceException ex) { if (ex.getStatusCode() == 400) { CreateQueueRequest createQueueRequest = new CreateQueueRequest(queueNamePrefix + i); Map<String, String> attributes = new HashMap<String, String>(); if (queueNamePrefix .startsWith(CMBProperties.getInstance().getCNSEndpointPublishQueueNamePrefix())) { attributes.put("VisibilityTimeout", CMBProperties.getInstance().getCNSEndpointPublishJobVisibilityTimeout() + ""); } else { attributes.put("VisibilityTimeout", CMBProperties.getInstance().getCNSPublishJobVisibilityTimeout() + ""); } createQueueRequest.setAttributes(attributes); CreateQueueResult createQueueResponse = sqs.createQueue(createQueueRequest); if (createQueueResponse.getQueueUrl() == null) { throw new IllegalStateException("Could not create queue with name " + queueNamePrefix + i); } logger.info("event=created_missing_queue name=" + queueNamePrefix + i + " url=" + createQueueResponse.getQueueUrl()); } else { throw ex; } } } }