org.apache.webdav.lib.methods
Class MoveMethod

java.lang.Object
  extended by org.apache.commons.httpclient.HttpMethodBase
      extended by org.apache.webdav.lib.methods.HttpRequestBodyMethodBase
          extended by org.apache.webdav.lib.methods.XMLResponseMethodBase
              extended by org.apache.webdav.lib.methods.MoveMethod
All Implemented Interfaces:
HttpMethod

public class MoveMethod
extends XMLResponseMethodBase

MOVE Method.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.webdav.lib.methods.XMLResponseMethodBase
XMLResponseMethodBase.OptionsResponse, XMLResponseMethodBase.Response, XMLResponseMethodBase.ResponseWithinMultistatus, XMLResponseMethodBase.SingleResponse
 
Field Summary
 
Fields inherited from class org.apache.webdav.lib.methods.XMLResponseMethodBase
builder, decodeResponseHrefs, responseURLs
 
Constructor Summary
MoveMethod()
          Method constructor.
MoveMethod(java.lang.String source)
          Method constructor.
MoveMethod(java.lang.String source, java.lang.String destination)
          Method constructor.
MoveMethod(java.lang.String source, java.lang.String destination, boolean overwrite)
          Method constructor.
 
Method Summary
 void addRequestHeaders(HttpState state, HttpConnection conn)
          Generate additional headers needed by the request.
(package private) static java.lang.String getAbsoluteDestination(HttpConnection conn, java.lang.String absolutePathOrURL)
          A client of the MoveMethod can specify a destination as either an absolute URL (possibly to a different server), or as a absolute path on the same server, but this function makes sure that the path sent to the server is always an absolute URL.
 java.lang.String getDestination()
          Destination getter.
 java.lang.String getName()
           
 boolean getOverwrite()
          Overwrite getter.
 boolean isOverwrite()
          Overwrite getter.
 void setDestination(java.lang.String destination)
          Destination setter.
 void setOverwrite(boolean overwrite)
          Overwrite setter.
 void setRequestHeader(java.lang.String headerName, java.lang.String headerValue)
          Set a header value, redirecting the special case of the Overwrite and Destination headers to setOverwrite(boolean) and setDestination(java.lang.String) as appropriate.
 
Methods inherited from class org.apache.webdav.lib.methods.XMLResponseMethodBase
convertElementToProperty, generateRequestBody, getDebug, getRequestContentLength, getResponseDocument, getResponseHashtable, getResponses, getResponseURLs, parseResponse, parseXMLResponse, readResponseBody, recycle, setDebug, setDecodeResponseHrefs, setDocument, setResponseHashtable, writeRequestBody
 
Methods inherited from class org.apache.webdav.lib.methods.HttpRequestBodyMethodBase
isRequestContentAlreadySet, readContinueCode, setRequestBody, setRequestBody, setRequestBody, setRequestBody, setRequestBody
 
Methods inherited from class org.apache.commons.httpclient.HttpMethodBase
abort, addCookieRequestHeader, addHostRequestHeader, addProxyConnectionHeader, addRequestHeader, addRequestHeader, addResponseFooter, addUserAgentRequestHeader, checkNotUsed, checkUsed, execute, generateRequestLine, getAuthenticationRealm, getContentCharSet, getDoAuthentication, getEffectiveVersion, getFollowRedirects, getHostAuthState, getHostConfiguration, getMethodRetryHandler, getParams, getPath, getProxyAuthenticationRealm, getProxyAuthState, getQueryString, getRecoverableExceptionCount, getRequestCharSet, getRequestHeader, getRequestHeaderGroup, getRequestHeaders, getRequestHeaders, getResponseBody, getResponseBodyAsStream, getResponseBodyAsString, getResponseCharSet, getResponseContentLength, getResponseFooter, getResponseFooters, getResponseHeader, getResponseHeaderGroup, getResponseHeaders, getResponseHeaders, getResponseStream, getResponseTrailerHeaderGroup, getStatusCode, getStatusLine, getStatusText, getURI, hasBeenUsed, isAborted, isConnectionCloseForced, isHttp11, isRequestSent, isStrictMode, processResponseBody, processResponseHeaders, processStatusLine, readResponse, readResponseHeaders, readStatusLine, releaseConnection, removeRequestHeader, removeRequestHeader, responseBodyConsumed, setConnectionCloseForced, setDoAuthentication, setFollowRedirects, setHostConfiguration, setHttp11, setMethodRetryHandler, setParams, setPath, setQueryString, setQueryString, setRequestHeader, setResponseStream, setStrictMode, setURI, shouldCloseConnection, validate, writeRequest, writeRequestHeaders, writeRequestLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MoveMethod

public MoveMethod()
Method constructor.


MoveMethod

public MoveMethod(java.lang.String source)
Method constructor.


MoveMethod

public MoveMethod(java.lang.String source,
                  java.lang.String destination)
Method constructor.


MoveMethod

public MoveMethod(java.lang.String source,
                  java.lang.String destination,
                  boolean overwrite)
Method constructor.

Method Detail

setRequestHeader

public void setRequestHeader(java.lang.String headerName,
                             java.lang.String headerValue)
Set a header value, redirecting the special case of the Overwrite and Destination headers to setOverwrite(boolean) and setDestination(java.lang.String) as appropriate.

Specified by:
setRequestHeader in interface HttpMethod
Overrides:
setRequestHeader in class HttpMethodBase
Parameters:
headerName - Header name
headerValue - Header value

setDestination

public void setDestination(java.lang.String destination)
Destination setter.

Parameters:
destination - New destination value

getDestination

public java.lang.String getDestination()
Destination getter.

Returns:
String destination value

setOverwrite

public void setOverwrite(boolean overwrite)
Overwrite setter.

Parameters:
overwrite - New overwrite value

isOverwrite

public boolean isOverwrite()
Overwrite getter.

Returns:
boolean Overwrite value

getOverwrite

public boolean getOverwrite()
Overwrite getter.

Returns:
boolean Overwrite value

getName

public java.lang.String getName()
Specified by:
getName in interface HttpMethod
Specified by:
getName in class HttpMethodBase

addRequestHeaders

public void addRequestHeaders(HttpState state,
                              HttpConnection conn)
                       throws java.io.IOException,
                              HttpException
Generate additional headers needed by the request.

Overrides:
addRequestHeaders in class HttpMethodBase
Parameters:
state - State token
conn - The connection being used to make the request.
Throws:
java.io.IOException
HttpException

getAbsoluteDestination

static java.lang.String getAbsoluteDestination(HttpConnection conn,
                                               java.lang.String absolutePathOrURL)
A client of the MoveMethod can specify a destination as either an absolute URL (possibly to a different server), or as a absolute path on the same server, but this function makes sure that the path sent to the server is always an absolute URL.

Note that this function will add server and port to the request - however, port is not added if it is the default port for the scheme in question.

This function is static so that it can be reused by the CopyMethod.

Parameters:
conn - The connection for the current request, in case the caller specifies an absolute path.
absolutePathOrURL - If an absolute URL, nothing done, but if an absolute path, it is converted into an absolute URL.
Returns:
An absolute URL