List of usage examples for com.amazonaws.services.sqs.model Message getReceiptHandle
public String getReceiptHandle()
An identifier associated with the act of receiving the message.
From source file:com.smoketurner.pipeline.application.core.AmazonSQSIterator.java
License:Apache License
/** * Delete a message from the SQS queue//from w w w . j a va2 s .c o m * * @param messageHandle * Message handle to delete * @return true if the delete was successful, otherwise false */ public boolean deleteMessage(@Nullable final Message message) { if (message == null) { return false; } try { LOGGER.debug("Deleting message from SQS: {}", message.getMessageId()); deleteRequests.inc(); client.deleteMessage(queueUrl, message.getReceiptHandle()); return true; } catch (Exception e) { LOGGER.error("Failed to delete message: " + message.getMessageId(), e); } return false; }
From source file:com.springboot.jms.AWSJmsSendAndReceive.java
License:Open Source License
public static void testAWSQueue() throws Exception { /*// w w w .ja v a 2 s. c o m * The ProfileCredentialsProvider will return your [default] * credential profile by reading from the credentials file located at * (~/.aws/credentials). */ /* AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().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 (~/.aws/credentials), and is in valid format.", e); } AmazonSQS sqs = new AmazonSQSClient(credentials);*/ AmazonSQS sqs = new AmazonSQSClient(new BasicAWSCredentials("", "")); Region usWest2 = Region.getRegion(Regions.US_EAST_1); sqs.setRegion(usWest2); 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("PetQueue"); String myQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl();*/ String myQueueUrl = "https://sqs.us-east-1.amazonaws.com/918558451804/PetQueue"; // 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 messageReceiptHandle = messages.get(0).getReceiptHandle(); sqs.deleteMessage(new DeleteMessageRequest(myQueueUrl, messageReceiptHandle)); /* // 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:com.streamsets.pipeline.origin.sqs.SampleSource.java
License:Apache License
/** * {@inheritDoc}/*w ww. j av a 2 s. com*/ */ @Override public String produce(String lastSourceOffset, int maxBatchSize, BatchMaker batchMaker) throws StageException { // Offsets can vary depending on the data source. Here we use an integer as an example only. long nextSourceOffset = 0; if (lastSourceOffset != null) { nextSourceOffset = Long.parseLong(lastSourceOffset); } int numRecords = 0; // TODO: As the developer, implement your logic that reads from a data source in this method. // Create records and add to batch. Records must have a string id. This can include the source offset // or other metadata to help uniquely identify the record itself. AWSSQSUtil awssqsUtil = new AWSSQSUtil(getAccessKey(), getSecreteKey(), getQueueName(), getEndPoint()); String queuName = awssqsUtil.getQueueName(); String queueUrl = awssqsUtil.getQueueUrl(queuName); //maximum number of meesage that can be retrieve in one request int maxMessagCount = 10; List<Message> messages = awssqsUtil.getMessagesFromQueue(queueUrl, maxMessagCount); for (Message message : messages) { Record record = getContext().createRecord("messageId::" + message.getMessageId()); Map<String, Field> map = new HashMap<>(); map.put("receipt_handle", Field.create(message.getReceiptHandle())); map.put("md5_of_body", Field.create(message.getMD5OfBody())); map.put("body", Field.create(message.getBody())); JSONObject attributeJson = new JSONObject(); for (Map.Entry<String, String> entry : message.getAttributes().entrySet()) { attributeJson.put(entry.getKey(), entry.getValue()); } map.put("attribute_list", Field.create(attributeJson.toString())); record.set(Field.create(map)); batchMaker.addRecord(record); ++nextSourceOffset; ++numRecords; if (getDeleteFlag()) { awssqsUtil.deleteMessageFromQueue(queueUrl, message); } } return String.valueOf(nextSourceOffset); }
From source file:com.threewks.thundr.deferred.provider.SqsQueueProvider.java
License:Apache License
@Override public List<String> receive() { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(queueUrl); List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages(); List<String> received = new ArrayList<String>(); for (Message message : messages) { received.add(message.getBody()); // Delete message once read off queue sqs.deleteMessage(new DeleteMessageRequest(queueUrl, message.getReceiptHandle())); }/* w w w . j av a2 s .c om*/ return received; }
From source file:com.twitter.services.SQS.java
License:Open Source License
public static void deleteMessage(Message message) { // Delete a message DeleteMessageRequest deleteMessageRequest = new DeleteMessageRequest(myQueueUrl, message.getReceiptHandle()); sqs.deleteMessage(deleteMessageRequest); logger.info("successfully delete" + deleteMessageRequest.toString()); }
From source file:com.zhang.aws.sqs.SimpleQueueServiceSample.java
License:Open Source License
public static void main(String[] args) throws Exception { AWSCredentials credentials = null;/* w w w . j ava 2 s .c om*/ try { credentials = CredentialsUtil.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 (~/.aws/credentials), and is in valid format.", e); } AmazonSQS sqs = new AmazonSQSClient(credentials); Region usWest2 = Region.getRegion(Regions.AP_SOUTHEAST_1); sqs.setRegion(usWest2); 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:doug.iotdemo.analyzer.Analyzer.java
License:Open Source License
void run() throws IOException, MqttException { System.out.println("Doing initial scan"); doInitialScan();/*from ww w . j a v a 2s .c o m*/ System.out.println("Done"); String url = AmazonUtils.getTimeQueueURL(); AmazonSQS sqs = new AmazonSQSClient(); while (true) { ReceiveMessageResult msgResult = sqs.receiveMessage(url); for (Message msg : msgResult.getMessages()) { JsonObject request = new JsonParser().parse(msg.getBody()).getAsJsonObject(); String sensor = request.get("sensor").getAsString(); long time = request.get("time").getAsLong(); addTime(sensor, time); saveSensor(sensor); sqs.deleteMessage(url, msg.getReceiptHandle()); } } }
From source file:edu.iit.sqs.ReceivingQueue.java
/** * *///from w w w. j a v a 2 s . co m public void printMessages() { for (int i = 0; i < RECQUEUENAMES.length; i++) { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(RECQUEUENAMES[i]); 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 (Map.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(); } }
From source file:edu.iit.sqs.SendQueue.java
/** * *//*www .j a v a 2 s . c om*/ public void printMessages() { for (int i = 0; i < SENDQUEUENAMES.length; i++) { ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(SENDQUEUENAMES[i]); 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(); } }
From source file:edu.iit.sqs.SendQueue.java
/** * * @param message//from w ww. j av a 2 s .com */ public void deleteMessage(Message message, String queue) { String messageRecieptHandle = message.getReceiptHandle(); sqs.deleteMessage(new DeleteMessageRequest(queue, messageRecieptHandle)); }