All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.DefaultRequest Maven / Gradle / Ivy

/*
 * Copyright 2010-2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 * 
 *  http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws;

import java.net.URI;
import java.util.HashMap;
import java.util.Map;

/**
 * Default implementation of the {@linkplain com.amazonaws.Request} interface.
 * 

* This class is only intended for internal use inside the AWS client libraries. * Callers shouldn't ever interact directly with objects of this class. */ public class DefaultRequest implements Request { /** The resource path being requested */ private String resourcePath; /** Map of the parameters being sent as part of this request */ private Map parameters = new HashMap(); /** Map of the headers included in this request */ private Map headers = new HashMap(); /** The service endpoint to which this request should be sent */ private URI endpoint; /** The name of the service to which this request is being sent */ private String serviceName; /** * The original, user facing request object which this internal request * object is representing */ private final AmazonWebServiceRequest originalRequest; /** * Constructs a new DefaultRequest with the specified service name and the * original, user facing request object. * * @param serviceName * The name of the service to which this request is being sent. * @param originalRequest * The original, user facing, AWS request being represented by * this internal request object. */ public DefaultRequest(AmazonWebServiceRequest originalRequest, String serviceName) { this.serviceName = serviceName; this.originalRequest = originalRequest; } /** * Constructs a new DefaultRequest with the specified service name and no * specified original, user facing request object. * * @param serviceName * The name of the service to which this request is being sent. */ public DefaultRequest(String serviceName) { this(null, serviceName); } /** * Returns the original, user facing request object which this internal * request object is representing. * * @return The original, user facing request object which this request * object is representing. */ public AmazonWebServiceRequest getOriginalRequest() { return originalRequest; } /** * @see com.amazonaws.Request#addHeader(java.lang.String, java.lang.String) */ public void addHeader(String name, String value) { headers.put(name, value); } /** * @see com.amazonaws.Request#getHeaders() */ public Map getHeaders() { return headers; } /** * @see com.amazonaws.Request#setResourcePath(java.lang.String) */ public void setResourcePath(String resourcePath) { this.resourcePath = resourcePath; } /** * @see com.amazonaws.Request#getResourcePath() */ public String getResourcePath() { return resourcePath; } /** * @see com.amazonaws.Request#addParameter(java.lang.String, java.lang.String) */ public void addParameter(String name, String value) { parameters.put(name, value); } /** * @see com.amazonaws.Request#getParameters() */ public Map getParameters() { return parameters; } /** * @see com.amazonaws.Request#withParameter(java.lang.String, java.lang.String) */ public Request withParameter(String name, String value) { addParameter(name, value); return this; } /** * @see com.amazonaws.Request#setEndpoint(java.net.URI) */ public void setEndpoint(URI endpoint) { this.endpoint = endpoint; } /** * @see com.amazonaws.Request#getEndpoint() */ public URI getEndpoint() { return endpoint; } /** * @see com.amazonaws.Request#getServiceName() */ public String getServiceName() { return serviceName; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy