@Override public String marshall(String resourcePath, String paramName, String pathValue) { assertStringNotEmpty(pathValue, paramName); return resourcePath.replace(String.format("{%s+}", paramName), trimLeadingSlash(pathValue)); }
public GetIamAuthTokenRequest(String hostname, int port, String userName) { this.hostname = assertStringNotEmpty(hostname, "hostname"); this.port = assertIsPositive(port, "port"); this.userName = assertStringNotEmpty(userName, "userName"); }
@Override public String marshall(String resourcePath, String paramName, String pathValue) { assertStringNotEmpty(pathValue, paramName); return resourcePath.replace(String.format("{%s}", paramName), SdkHttpUtils.urlEncode(pathValue, false)); }
/** * Parse the process output to retrieve the credentials. */ private AWSCredentials credentials(JsonNode credentialsJson) { String accessKeyId = getText(credentialsJson, "AccessKeyId"); String secretAccessKey = getText(credentialsJson, "SecretAccessKey"); String sessionToken = getText(credentialsJson, "SessionToken"); ValidationUtils.assertStringNotEmpty(accessKeyId, "AccessKeyId"); ValidationUtils.assertStringNotEmpty(accessKeyId, "SecretAccessKey"); if (sessionToken != null) { return new BasicSessionCredentials(accessKeyId, secretAccessKey, sessionToken); } else { return new BasicAWSCredentials(accessKeyId, secretAccessKey); } }
private static SignerProvider createSignerProvider(String region) { AWS4Signer signer = new AWS4Signer(); signer.setRegionName(assertStringNotEmpty(region, "region")); signer.setServiceName(SERVICE_NAME); return new StaticSignerProvider(signer); }
@Override public GetBucketInventoryConfigurationResult getBucketInventoryConfiguration( GetBucketInventoryConfigurationRequest getBucketInventoryConfigurationRequest) throws AmazonServiceException, SdkClientException { getBucketInventoryConfigurationRequest = beforeClientExecution(getBucketInventoryConfigurationRequest); rejectNull(getBucketInventoryConfigurationRequest, "The request cannot be null"); String bucketName = assertStringNotEmpty(getBucketInventoryConfigurationRequest.getBucketName(), "BucketName"); String id = assertStringNotEmpty(getBucketInventoryConfigurationRequest.getId(), "Inventory id"); Request<GetBucketInventoryConfigurationRequest> request = createRequest(bucketName, null, getBucketInventoryConfigurationRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetBucketInventoryConfiguration"); request.addParameter("inventory", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.GetBucketInventoryConfigurationUnmarshaller(), bucketName, null); }
@Override public DeleteBucketMetricsConfigurationResult deleteBucketMetricsConfiguration( DeleteBucketMetricsConfigurationRequest deleteBucketMetricsConfigurationRequest) throws AmazonServiceException, SdkClientException { deleteBucketMetricsConfigurationRequest = beforeClientExecution(deleteBucketMetricsConfigurationRequest); rejectNull(deleteBucketMetricsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(deleteBucketMetricsConfigurationRequest.getBucketName(), "BucketName"); final String id = assertStringNotEmpty(deleteBucketMetricsConfigurationRequest.getId(), "Metrics Id"); Request<DeleteBucketMetricsConfigurationRequest> request = createRequest(bucketName, null, deleteBucketMetricsConfigurationRequest, HttpMethodName.DELETE); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteBucketMetricsConfiguration"); request.addParameter("metrics", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.DeleteBucketMetricsConfigurationUnmarshaller(), bucketName, null); }
@Override public DeleteBucketInventoryConfigurationResult deleteBucketInventoryConfiguration( DeleteBucketInventoryConfigurationRequest deleteBucketInventoryConfigurationRequest) throws AmazonServiceException, SdkClientException { deleteBucketInventoryConfigurationRequest = beforeClientExecution(deleteBucketInventoryConfigurationRequest); rejectNull(deleteBucketInventoryConfigurationRequest, "The request cannot be null"); String bucketName = assertStringNotEmpty(deleteBucketInventoryConfigurationRequest.getBucketName(), "BucketName"); String id = assertStringNotEmpty(deleteBucketInventoryConfigurationRequest.getId(), "Inventory id"); Request<DeleteBucketInventoryConfigurationRequest> request = createRequest(bucketName, null, deleteBucketInventoryConfigurationRequest, HttpMethodName.DELETE); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteBucketInventoryConfiguration"); request.addParameter("inventory", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.DeleteBucketInventoryConfigurationUnmarshaller(), bucketName, null); }
@Override public GetBucketMetricsConfigurationResult getBucketMetricsConfiguration( GetBucketMetricsConfigurationRequest getBucketMetricsConfigurationRequest) throws AmazonServiceException, SdkClientException { getBucketMetricsConfigurationRequest = beforeClientExecution(getBucketMetricsConfigurationRequest); rejectNull(getBucketMetricsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(getBucketMetricsConfigurationRequest.getBucketName(), "BucketName"); final String id = assertStringNotEmpty(getBucketMetricsConfigurationRequest.getId(), "Metrics Id"); Request<GetBucketMetricsConfigurationRequest> request = createRequest(bucketName, null, getBucketMetricsConfigurationRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetBucketMetricsConfiguration"); request.addParameter("metrics", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.GetBucketMetricsConfigurationUnmarshaller(), bucketName, null); }
@Override public DeleteBucketAnalyticsConfigurationResult deleteBucketAnalyticsConfiguration( DeleteBucketAnalyticsConfigurationRequest deleteBucketAnalyticsConfigurationRequest) throws AmazonServiceException, SdkClientException { deleteBucketAnalyticsConfigurationRequest = beforeClientExecution(deleteBucketAnalyticsConfigurationRequest); rejectNull(deleteBucketAnalyticsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty( deleteBucketAnalyticsConfigurationRequest.getBucketName(), "BucketName"); final String id = assertStringNotEmpty( deleteBucketAnalyticsConfigurationRequest.getId(), "Analytics Id"); Request<DeleteBucketAnalyticsConfigurationRequest> request = createRequest(bucketName, null, deleteBucketAnalyticsConfigurationRequest, HttpMethodName.DELETE); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteBucketAnalyticsConfiguration"); request.addParameter("analytics", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.DeleteBucketAnalyticsConfigurationUnmarshaller(), bucketName, null); }
@Override public GetBucketAnalyticsConfigurationResult getBucketAnalyticsConfiguration( GetBucketAnalyticsConfigurationRequest getBucketAnalyticsConfigurationRequest) throws AmazonServiceException, SdkClientException { getBucketAnalyticsConfigurationRequest = beforeClientExecution(getBucketAnalyticsConfigurationRequest); rejectNull(getBucketAnalyticsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty( getBucketAnalyticsConfigurationRequest.getBucketName(), "BucketName"); final String id = assertStringNotEmpty( getBucketAnalyticsConfigurationRequest.getId(), "Analytics Id"); Request<GetBucketAnalyticsConfigurationRequest> request = createRequest(bucketName, null, getBucketAnalyticsConfigurationRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetBucketAnalyticsConfiguration"); request.addParameter("analytics", null); request.addParameter("id", id); return invoke(request, new Unmarshallers.GetBucketAnalyticsConfigurationUnmarshaller(), bucketName, null); }
@Override public ListBucketInventoryConfigurationsResult listBucketInventoryConfigurations(ListBucketInventoryConfigurationsRequest listBucketInventoryConfigurationsRequest) throws AmazonServiceException, SdkClientException { listBucketInventoryConfigurationsRequest = beforeClientExecution(listBucketInventoryConfigurationsRequest); rejectNull(listBucketInventoryConfigurationsRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(listBucketInventoryConfigurationsRequest.getBucketName(), "BucketName"); Request<ListBucketInventoryConfigurationsRequest> request = createRequest(bucketName, null, listBucketInventoryConfigurationsRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListBucketInventoryConfigurations"); request.addParameter("inventory", null); addParameterIfNotNull(request, "continuation-token", listBucketInventoryConfigurationsRequest.getContinuationToken()); return invoke(request, new Unmarshallers.ListBucketInventoryConfigurationsUnmarshaller(), bucketName, null); }
@Override public DeleteObjectTaggingResult deleteObjectTagging(DeleteObjectTaggingRequest deleteObjectTaggingRequest) { deleteObjectTaggingRequest = beforeClientExecution(deleteObjectTaggingRequest); rejectNull(deleteObjectTaggingRequest, "The request parameter must be specified when delete the object tags"); String bucketName = assertStringNotEmpty(deleteObjectTaggingRequest.getBucketName(), "BucketName"); String key = assertStringNotEmpty(deleteObjectTaggingRequest.getKey(), "Key"); Request<DeleteObjectTaggingRequest> request = createRequest(bucketName, key, deleteObjectTaggingRequest, HttpMethodName.DELETE); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteObjectTagging"); request.addParameter("tagging", null); addParameterIfNotNull(request, "versionId", deleteObjectTaggingRequest.getVersionId()); ResponseHeaderHandlerChain<DeleteObjectTaggingResult> handlerChain = new ResponseHeaderHandlerChain<DeleteObjectTaggingResult>( new Unmarshallers.DeleteObjectTaggingResponseUnmarshaller(), new DeleteObjectTaggingHeaderHandler() ); return invoke(request, handlerChain, bucketName, key); }
@Override public ListBucketMetricsConfigurationsResult listBucketMetricsConfigurations( ListBucketMetricsConfigurationsRequest listBucketMetricsConfigurationsRequest) throws AmazonServiceException, SdkClientException { listBucketMetricsConfigurationsRequest = beforeClientExecution(listBucketMetricsConfigurationsRequest); rejectNull(listBucketMetricsConfigurationsRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(listBucketMetricsConfigurationsRequest.getBucketName(), "BucketName"); Request<ListBucketMetricsConfigurationsRequest> request = createRequest(bucketName, null, listBucketMetricsConfigurationsRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListBucketMetricsConfigurations"); request.addParameter("metrics", null); addParameterIfNotNull(request, "continuation-token", listBucketMetricsConfigurationsRequest.getContinuationToken()); return invoke(request, new Unmarshallers.ListBucketMetricsConfigurationsUnmarshaller(), bucketName, null); }
@Override public ListBucketAnalyticsConfigurationsResult listBucketAnalyticsConfigurations( ListBucketAnalyticsConfigurationsRequest listBucketAnalyticsConfigurationsRequest) throws AmazonServiceException, SdkClientException { listBucketAnalyticsConfigurationsRequest = beforeClientExecution(listBucketAnalyticsConfigurationsRequest); rejectNull(listBucketAnalyticsConfigurationsRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty( listBucketAnalyticsConfigurationsRequest.getBucketName(), "BucketName"); Request<ListBucketAnalyticsConfigurationsRequest> request = createRequest(bucketName, null, listBucketAnalyticsConfigurationsRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListBucketAnalyticsConfigurations"); request.addParameter("analytics", null); addParameterIfNotNull(request, "continuation-token", listBucketAnalyticsConfigurationsRequest.getContinuationToken()); return invoke(request, new Unmarshallers.ListBucketAnalyticsConfigurationUnmarshaller(), bucketName, null); }
@Override public SetBucketInventoryConfigurationResult setBucketInventoryConfiguration( SetBucketInventoryConfigurationRequest setBucketInventoryConfigurationRequest) throws AmazonServiceException, SdkClientException { setBucketInventoryConfigurationRequest = beforeClientExecution(setBucketInventoryConfigurationRequest); rejectNull(setBucketInventoryConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(setBucketInventoryConfigurationRequest.getBucketName(), "BucketName"); final InventoryConfiguration inventoryConfiguration = assertNotNull(setBucketInventoryConfigurationRequest.getInventoryConfiguration(), "InventoryConfiguration"); final String id = assertNotNull(inventoryConfiguration.getId(), "Inventory id"); Request<SetBucketInventoryConfigurationRequest> request = createRequest(bucketName, null, setBucketInventoryConfigurationRequest, HttpMethodName.PUT); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutBucketInventoryConfiguration"); request.addParameter("inventory", null); request.addParameter("id", id); final byte[] bytes = bucketConfigurationXmlFactory.convertToXmlByteArray(inventoryConfiguration); request.addHeader("Content-Length", String.valueOf(bytes.length)); request.addHeader("Content-Type", "application/xml"); request.setContent(new ByteArrayInputStream(bytes)); return invoke(request, new Unmarshallers.SetBucketInventoryConfigurationUnmarshaller(), bucketName, null); }
@Override public SetBucketAnalyticsConfigurationResult setBucketAnalyticsConfiguration( SetBucketAnalyticsConfigurationRequest setBucketAnalyticsConfigurationRequest) throws AmazonServiceException, SdkClientException { setBucketAnalyticsConfigurationRequest = beforeClientExecution(setBucketAnalyticsConfigurationRequest); rejectNull(setBucketAnalyticsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty( setBucketAnalyticsConfigurationRequest.getBucketName(), "BucketName"); final AnalyticsConfiguration analyticsConfiguration = assertNotNull( setBucketAnalyticsConfigurationRequest.getAnalyticsConfiguration(), "Analytics Configuration"); final String id = assertNotNull(analyticsConfiguration.getId(), "Analytics Id"); Request<SetBucketAnalyticsConfigurationRequest> request = createRequest(bucketName, null, setBucketAnalyticsConfigurationRequest, HttpMethodName.PUT); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutBucketAnalyticsConfiguration"); request.addParameter("analytics", null); request.addParameter("id", id); byte[] bytes = bucketConfigurationXmlFactory.convertToXmlByteArray(analyticsConfiguration); request.addHeader("Content-Length", String.valueOf(bytes.length)); request.addHeader("Content-Type", "application/xml"); request.setContent(new ByteArrayInputStream(bytes)); return invoke(request, new Unmarshallers.SetBucketAnalyticsConfigurationUnmarshaller(), bucketName, null); }
@Override public SetBucketMetricsConfigurationResult setBucketMetricsConfiguration( SetBucketMetricsConfigurationRequest setBucketMetricsConfigurationRequest) throws AmazonServiceException, SdkClientException { setBucketMetricsConfigurationRequest = beforeClientExecution(setBucketMetricsConfigurationRequest); new SetBucketMetricsConfigurationRequest(); rejectNull(setBucketMetricsConfigurationRequest, "The request cannot be null"); final String bucketName = assertStringNotEmpty(setBucketMetricsConfigurationRequest.getBucketName(), "BucketName"); final MetricsConfiguration metricsConfiguration = assertNotNull( setBucketMetricsConfigurationRequest.getMetricsConfiguration(), "Metrics Configuration"); final String id = assertNotNull(metricsConfiguration.getId(), "Metrics Id"); Request<SetBucketMetricsConfigurationRequest> request = createRequest(bucketName, null, setBucketMetricsConfigurationRequest, HttpMethodName.PUT); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutBucketMetricsConfiguration"); request.addParameter("metrics", null); request.addParameter("id", id); byte[] bytes = bucketConfigurationXmlFactory.convertToXmlByteArray(metricsConfiguration); request.addHeader("Content-Length", String.valueOf(bytes.length)); request.addHeader("Content-Type", "application/xml"); request.setContent(new ByteArrayInputStream(bytes)); return invoke(request, new Unmarshallers.SetBucketMetricsConfigurationUnmarshaller(), bucketName, null); }
@Override public GetObjectTaggingResult getObjectTagging(GetObjectTaggingRequest getObjectTaggingRequest) { getObjectTaggingRequest = beforeClientExecution(getObjectTaggingRequest); rejectNull(getObjectTaggingRequest, "The request parameter must be specified when getting the object tags"); String bucketName = assertStringNotEmpty(getObjectTaggingRequest.getBucketName(), "BucketName"); String key = assertNotNull(getObjectTaggingRequest.getKey(), "Key"); Request<GetObjectTaggingRequest> request = createRequest(bucketName, key, getObjectTaggingRequest, HttpMethodName.GET); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetObjectTagging"); request.addParameter("tagging", null); addParameterIfNotNull(request, "versionId", getObjectTaggingRequest.getVersionId()); ResponseHeaderHandlerChain<GetObjectTaggingResult> handlerChain = new ResponseHeaderHandlerChain<GetObjectTaggingResult>( new Unmarshallers.GetObjectTaggingResponseUnmarshaller(), new GetObjectTaggingResponseHeaderHandler() ); return invoke(request, handlerChain, bucketName, key); }
@Override public SetObjectTaggingResult setObjectTagging(SetObjectTaggingRequest setObjectTaggingRequest) { setObjectTaggingRequest = beforeClientExecution(setObjectTaggingRequest); rejectNull(setObjectTaggingRequest, "The request parameter must be specified setting the object tags"); String bucketName = assertStringNotEmpty(setObjectTaggingRequest.getBucketName(), "BucketName"); String key = assertNotNull(setObjectTaggingRequest.getKey(), "Key"); ObjectTagging tagging = assertNotNull(setObjectTaggingRequest.getTagging(), "ObjectTagging"); Request<SetObjectTaggingRequest> request = createRequest(bucketName, key, setObjectTaggingRequest, HttpMethodName.PUT); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutObjectTagging"); request.addParameter("tagging", null); addParameterIfNotNull(request, "versionId", setObjectTaggingRequest.getVersionId()); byte[] content = new ObjectTaggingXmlFactory().convertToXmlByteArray(tagging); setContent(request, content, "application/xml", true); ResponseHeaderHandlerChain<SetObjectTaggingResult> handlerChain = new ResponseHeaderHandlerChain<SetObjectTaggingResult>( new Unmarshallers.SetObjectTaggingResponseUnmarshaller(), new SetObjectTaggingResponseHeaderHandler() ); return invoke(request, handlerChain, bucketName, key); }