List of usage examples for com.amazonaws AmazonServiceException getStatusCode
public int getStatusCode()
From source file:org.grails.datastore.mapping.dynamodb.util.DynamoDBTemplateImpl.java
License:Apache License
private int scanCountInternal(String tableName, Map<String, Condition> filter, int attempt) { LinkedList<Map<String, AttributeValue>> items = new LinkedList<Map<String, AttributeValue>>(); try {/*www . j a va 2 s .c o m*/ ScanRequest request = new ScanRequest(tableName).withScanFilter(filter).withCount(true); ScanResult result = ddb.scan(request); int count = 0; count = count + result.getCount(); //keep repeating until we get through all matched items Key lastKeyEvaluated = null; do { lastKeyEvaluated = result.getLastEvaluatedKey(); if (lastKeyEvaluated != null) { request = new ScanRequest(tableName).withScanFilter(filter) .withExclusiveStartKey(lastKeyEvaluated).withCount(true); result = ddb.scan(request); count = count + result.getCount(); } } while (lastKeyEvaluated != null); return count; } catch (AmazonServiceException e) { if (DynamoDBUtil.AWS_ERR_CODE_RESOURCE_NOT_FOUND.equals(e.getErrorCode())) { throw new IllegalArgumentException("no such table: " + tableName, e); } else if (DynamoDBUtil.AWS_STATUS_CODE_SERVICE_UNAVAILABLE == e.getStatusCode()) { //retry after a small pause DynamoDBUtil.sleepBeforeRetry(attempt); attempt++; return scanCountInternal(tableName, filter, attempt); } else { throw new DataStoreOperationException("problem with table: " + tableName + ", filter: " + filter, e); } } }
From source file:org.gridgain.grid.spi.checkpoint.s3.GridS3CheckpointSpi.java
License:Open Source License
/** * Reads checkpoint data.//from w ww .ja v a 2s. com * * @param key Key name to read data from. * @return Checkpoint data object. * @throws GridException Thrown if an error occurs while unmarshalling. * @throws AmazonClientException If an error occurs while querying Amazon S3. */ @Nullable private GridS3CheckpointData read(String key) throws GridException, AmazonClientException { assert !F.isEmpty(key); if (log.isDebugEnabled()) log.debug("Reading data from S3 [bucket=" + bucketName + ", key=" + key + ']'); try { S3Object obj = s3.getObject(bucketName, key); InputStream in = obj.getObjectContent(); try { return marsh.unmarshal(in, U.gridClassLoader()); } finally { U.closeQuiet(in); } } catch (AmazonServiceException e) { if (e.getStatusCode() != 404) throw e; } return null; }
From source file:org.hashbang.util.AutoDiscoverQueue.java
License:Open Source License
public static boolean sendInfo(String msg) { try {//from w w w . j a v a 2 s. c om AmazonSQS sqs = init(); //"To be filled by JobTracker" sqs.sendMessage(new SendMessageRequest(QUEUE_URL, msg)); return true; } 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()); } finally { return false; } }
From source file:org.hashbang.util.AutoDiscoverQueue.java
License:Open Source License
public static String getInfo() { Message message = null;/*from w ww .j a v a 2s . c o m*/ String msg = null; try { // Receive messages AmazonSQS sqs = init(); ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(QUEUE_URL); sqs.receiveMessage(receiveMessageRequest); message = sqs.receiveMessage(receiveMessageRequest).getMessages().get(0); msg = message.getBody(); sqs.deleteMessage(new DeleteMessageRequest(QUEUE_URL, message.getReceiptHandle())); } 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()); } finally { return msg; } }
From source file:org.icgc.dcc.storage.server.repository.s3.S3DownloadService.java
License:Open Source License
private S3FetchedObject getObject(String objectId, String objectMetaKey) { String stateBucketName = bucketNamingService.getStateBucketName(objectId); try {/*from w ww .j a v a2 s . co m*/ return fetchObject(stateBucketName, objectMetaKey); } catch (AmazonServiceException e) { if (e.getStatusCode() == HttpStatus.NOT_FOUND.value()) { if (bucketNamingService.isPartitioned()) { // Try again with master bucket log.warn("Object with objectId: {} not found in {}, objectKey: {}: {}. Trying master bucket {}", objectId, stateBucketName, objectMetaKey, e, bucketNamingService.getBaseStateBucketName()); try { stateBucketName = bucketNamingService.getBaseStateBucketName(); // use base bucket name val obj = fetchObject(stateBucketName, objectMetaKey); obj.setRelocated(true); return obj; } catch (AmazonServiceException e2) { log.error("Failed to get object with objectId: {} from {}, objectKey: {}: {}", objectId, stateBucketName, objectMetaKey, e); if ((e.getStatusCode() == HttpStatus.NOT_FOUND.value()) || (!e.isRetryable())) { throw new IdNotFoundException(objectId); } else { throw new RetryableException(e); } } } else { // Not a partitioned bucket - not found is not found throw new IdNotFoundException(objectId); } } else { // some other exception rather than a 404 if (e.isRetryable()) { throw new RetryableException(e); } else { throw new IdNotFoundException(objectId); } } } }
From source file:org.jdamico.s3.components.S3Component.java
License:Apache License
public void upload(AppProperties appProperties, File uploadFile, String keyName) throws TopLevelException { AmazonS3 s3client = getS3Client(appProperties); try {//from w w w . j a v a2s. co m Utils.getInstance().handleVerboseLog(appProperties, 'i', "Uploading a new object to S3 from a file\n"); s3client.putObject(new PutObjectRequest(appProperties.getBucketnName(), keyName, uploadFile)); } catch (AmazonServiceException ase) { Utils.getInstance().handleVerboseLog(appProperties, 'e', "Caught an AmazonServiceException, which " + "means your request made it " + "to Amazon S3, but was rejected with an error response" + " for some reason."); Utils.getInstance().handleVerboseLog(appProperties, 'e', "Error Message: " + ase.getMessage()); Utils.getInstance().handleVerboseLog(appProperties, 'e', "HTTP Status Code: " + ase.getStatusCode()); Utils.getInstance().handleVerboseLog(appProperties, 'e', "AWS Error Code: " + ase.getErrorCode()); Utils.getInstance().handleVerboseLog(appProperties, 'e', "Error Type: " + ase.getErrorType()); Utils.getInstance().handleVerboseLog(appProperties, 'e', "Request ID: " + ase.getRequestId()); throw new TopLevelException(appProperties, ase); } catch (AmazonClientException ace) { throw new TopLevelException(appProperties, "Caught an AmazonClientException, which " + "means the client encountered " + "an internal error while trying to " + "communicate with S3, " + "such as not being able to access the network. Error Message: " + ace.getMessage()); } }
From source file:org.jenkinsci.plugins.appio.service.S3Service.java
License:Open Source License
/** * @param bucketName/*from www. j av a 2 s . c o m*/ * @param keyName * @param uploadFile * @return */ public String getUploadUrl(String bucketName, String keyName, File uploadFile) throws AmazonServiceException, AmazonClientException { try { s3client.putObject(new PutObjectRequest(bucketName, keyName, uploadFile) .withCannedAcl(CannedAccessControlList.PublicRead)); } catch (AmazonServiceException ase) { LOGGER.fine("AmazonServiceException"); LOGGER.fine("Error Message: " + ase.getMessage()); LOGGER.fine("HTTP Status Code: " + ase.getStatusCode()); LOGGER.fine("AWS Error Code: " + ase.getErrorCode()); LOGGER.fine("Error Type: " + ase.getErrorType()); LOGGER.fine("Request ID: " + ase.getRequestId()); throw ase; } catch (AmazonClientException ace) { LOGGER.fine("AmazonClientException"); LOGGER.fine("Error Message: " + ace.getMessage()); throw ace; } String s3PublicUrl = "https://s3.amazonaws.com/" + bucketName + "/" + keyName; LOGGER.fine("S3 public URL: " + s3PublicUrl); return s3PublicUrl; }
From source file:org.juneja.eventdemo.utils.AmazonSimpleQueueService.java
License:Open Source License
public static void main(String[] args) throws Exception { /*// w ww. ja v a 2s . c om * 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); Region usWest2 = Region.getRegion(Regions.DEFAULT_REGION); 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("TestQueue_EventDriven_2"); // String myQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); GetQueueUrlResult queueResult = sqs.getQueueUrl("TestQueue_EventDriven_2"); String myQueueUrl = queueResult.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 new text.")); // Receive messages System.out.println("Receiving messages from MyQueue.\n"); ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(myQueueUrl); List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages(); System.out.println("Number of messages : " + messages.size()); 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:org.mobicents.servlet.restcomm.amazonS3.S3AccessTool.java
License:Open Source License
public URI uploadFile(final String fileToUpload) { AWSCredentials credentials = new BasicAWSCredentials(accessKey, securityKey); AmazonS3 s3client = new AmazonS3Client(credentials); try {//from w w w . j av a2 s .c o m StringBuffer bucket = new StringBuffer(); bucket.append(bucketName); if (folder != null && !folder.isEmpty()) bucket.append("/").append(folder); URI fileUri = URI.create(fileToUpload); logger.info("File to upload to S3: " + fileUri.toString()); File file = new File(fileUri); // while (!file.exists()){} // logger.info("File exist: "+file.exists()); //First generate the Presigned URL, buy some time for the file to be written on the disk Date date = new Date(); Calendar cal = Calendar.getInstance(); cal.setTime(date); if (daysToRetainPublicUrl > 0) { cal.add(Calendar.DATE, daysToRetainPublicUrl); } else { //By default the Public URL will be valid for 180 days cal.add(Calendar.DATE, 180); } date = cal.getTime(); GeneratePresignedUrlRequest generatePresignedUrlRequestGET = new GeneratePresignedUrlRequest( bucket.toString(), file.getName()); generatePresignedUrlRequestGET.setMethod(HttpMethod.GET); generatePresignedUrlRequestGET.setExpiration(date); URL downloadUrl = s3client.generatePresignedUrl(generatePresignedUrlRequestGET); //Second upload the file to S3 // while (!file.exists()){} while (!FileUtils.waitFor(file, 30)) { } if (file.exists()) { PutObjectRequest putRequest = new PutObjectRequest(bucket.toString(), file.getName(), file); ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentType(new MimetypesFileTypeMap().getContentType(file)); putRequest.setMetadata(metadata); if (reducedRedundancy) putRequest.setStorageClass(StorageClass.ReducedRedundancy); s3client.putObject(putRequest); if (removeOriginalFile) { removeLocalFile(file); } return downloadUrl.toURI(); } else { logger.error("Timeout waiting for the recording file: " + file.getAbsolutePath()); return null; } } catch (AmazonServiceException ase) { logger.error("Caught an AmazonServiceException"); logger.error("Error Message: " + ase.getMessage()); logger.error("HTTP Status Code: " + ase.getStatusCode()); logger.error("AWS Error Code: " + ase.getErrorCode()); logger.error("Error Type: " + ase.getErrorType()); logger.error("Request ID: " + ase.getRequestId()); return null; } catch (AmazonClientException ace) { logger.error("Caught an AmazonClientException, which "); logger.error("Error Message: " + ace.getMessage()); return null; } catch (URISyntaxException e) { logger.error("URISyntaxException: " + e.getMessage()); return null; } }
From source file:org.nuxeo.aws.elastictranscoder.GenericAWSClient.java
License:Open Source License
/** * Utility method returning formatted details about the error. It the error * is not AmazonServiceException or AmazonClientException, the method just * returns <code>e.getMessage()</code> * * @param e, an AmazonServiceException or AmazonClientException * @return/* ww w. jav a2s . c o m*/ * * @since 7.1 */ public static String buildDetailedMessageFromAWSException(Exception e) { String message = ""; if (e instanceof AmazonServiceException) { AmazonServiceException ase = (AmazonServiceException) e; message = "Caught an AmazonServiceException, which " + "means your request made it " + "to Amazon S3, but was rejected with an error response" + " for some reason."; message += "\nError Message: " + ase.getMessage(); message += "\nHTTP Status Code: " + ase.getStatusCode(); message += "\nAWS Error Code: " + ase.getErrorCode(); message += "\nError Type: " + ase.getErrorType(); message += "\nRequest ID: " + ase.getRequestId(); } else if (e instanceof AmazonClientException) { AmazonClientException ace = (AmazonClientException) e; message = "Caught an AmazonClientException, which " + "means the client encountered " + "an internal error while trying to " + "communicate with S3, " + "such as not being able to access the network."; message += "\nError Message: " + ace.getMessage(); } else { message = e.getMessage(); } return message; }