org.eclipse.webdav.IContext Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.guvnor.eclipse.webdav
Show all versions of org.guvnor.eclipse.webdav
We build this plugin because eclipse no longer distributes it and Guvnor tools needs it.
package org.eclipse.webdav;
import java.util.Enumeration;
/**
* The IContext
interface provides access methods
* for most HTTP and WebDAV message header fields. Those that are
* not explicitly enumerated can be accessed using
* Context#get(String)
and Context#put(String,String)
*
. All context keys are available with
* Context#keys()
.
*
* Note: This class/interface is part of an interim API that is still under
* development and expected to change significantly before reaching stability.
* It is being made available at this early stage to solicit feedback from pioneering
* adopters on the understanding that any code that uses this API will almost
* certainly be broken (repeatedly) as the API evolves.
*
*/
public interface IContext {
// Depth directive header values.
/** Depth constant indicating apply the method to the target resource.
* @see #getDepth()
*/
public static final String DEPTH_ZERO = "0"; //$NON-NLS-1$
/** Depth constant indicating apply the method to the target resource.
* and (where the resource is a collection) its immediate members.
* @see #getDepth()
*/
public static final String DEPTH_ONE = "1"; //$NON-NLS-1$
/** Depth constant indicating apply the method to the target resource.
* and (where the resource is a collection) recursively to all
* its members.
* @see #getDepth()
*/
public static final String DEPTH_INFINITY = "infinity"; //$NON-NLS-1$
// Locking constants
/** Lock type constant indicating an exclusive lock.
* Only one exclusive lock can be granted at any time on a resource.
*/
public static final String EXCLUSIVE_LOCK = "exclusive"; //$NON-NLS-1$
/** Lock type constant indicating a shared lock.
* A resource may have many concurrent shared locks which indicate an
* intention to change the resource in some way. It is the responsibilty
* of the shared lock owners to coordinate their updates appropriately
* through other means.
*/
public static final String SHARED_LOCK = "shared"; //$NON-NLS-1$
/** Lock type constant indicating a write lock.
* Write locks allow a resource to be updated or deleted.
*/
public static final String WRITE_LOCK = "write"; //$NON-NLS-1$
/** Constant indicating an indefinite timeout period.
*/
public static final int NO_EXPIRY_LOCK = -1;
/** Constant used in the Cache-Control header indicating that clients and
* proxies MUST not cache the response of a method since it has
* non-idempotent semantics.
*/
public static final String NO_CACHE = "no-cache"; //$NON-NLS-1$
/**
* Collapse teh receiver by copying all the keys and values from the
* default context into the receiver. This effectively makes the Context
* stand-alone so that subsequent changes to shared contexts are no
* longer seen by the receiver.
*/
public void collapse();
/**
* Returns the value for the given key, or null
* if the given key has no value.
* @param key the key to look up
* @return the value for the key
*/
public String get(String key);
/**
* Returns the media types that are acceptable for a response.
* @return the value for "Accept"
key,
* or null
if that key has no value.
*/
public String getAccept();
/**
* Returns the character sets that are acceptable for a response.
* @return the value for "Accept-Charset"
key,
* or null
if that key has no value.
*/
public String getAcceptCharset();
/**
* Retruns what content-encoding values are acceptable for a response.
* @return the value for "Accept-Encoding"
key,
* or null
if that key has no value.
*/
public String getAcceptEncoding();
/**
* Returns the natural languages that are acceptable for a response.
* @return the value for "Accept-Language"
key,
* or null
if that key has no value.
*/
public String getAcceptLanguage();
/**
* Returns the range requests acceptable to a server.
* @return the value for "Accept-Ranges"
key,
* or null
if that key has no value.
*/
public String getAcceptRanges();
/**
* Returns the integer value of sender's estimate of the time since the
* response was generated, or -1 if the value is not set.
* @return the integer value for "Age"
key,
* or -1 if not set.
*/
public int getAge();
/**
* Returns the string value for the ALL_BINDINGS key.
* @return the value for "All-Bindings"
key,
* or null
if that key has no value.
*/
public String getAllBindings();
/**
* Returns the methods allowed on a resource
* @return the value for "Allow"
key,
* or null
if that key has no value.
*/
public String getAllow();
/**
* Returns the user's credentials for the realm of the resource being requested.
* @return the value for "Authorization"
key,
* or null
if that key has no value.
*/
public String getAuthorization();
/**
* Returns the cache control directives that must be obeyed.
* @return the value for "Cache-Control"
key,
* or null
if that key has no value.
*/
public String getCacheControl();
/**
* Returns the sender connection options.
* @return the value for "Connection"
key,
* or null
if that key has no value.
*/
public String getConnection();
/**
* Returns the URL string value for the CONTENT_BASE key.
* @return the value for "Content-Base"
key,
* or null
if that key has no value.
*/
public String getContentBase();
/**
* Returns what additional content encodings have been applied to the entity body.
* @return the value for "Content-Encoding"
key,
* or null
if that key has no value.
*/
public String getContentEncoding();
/**
* Returns the natural language of the intended audience for the entity body.
* @return the value for "Content-Language"
key,
* or null
if that key has no value.
*/
public String getContentLanguage();
/**
* Returns the content length in bytes of the entity body.
* @return the value for "Content-Length"
key,
* or -1 if that key has no value.
*/
public long getContentLength();
/**
* Returns the URL that locates the content.
* @return the value for "Content-Location"
key,
* or null
if that key has no value.
*/
public String getContentLocation();
/**
* Returns the string value for the CONTENT_MD5 key.
* @return the value for "Content-MD5"
key,
* or null
if that key has no value.
*/
public String getContentMD5();
/**
* Returns the string value for the CONTENT_RANGE key.
* @return the value for "Content-Range"
key,
* or null
if that key has no value.
*/
public String getContentRange();
/**
* Returns the MIME type for the response contents.
* @return the value for "Content-Type"
key,
* or null
if that key has no value.
*/
public String getContentType();
/**
* Returns the date the request was made.
* @return the value for "Date"
key,
* or null
if that key has no value.
*/
public String getDate();
/**
* Returns the DAV level supported by the server.
* [missing: what are these values]
*/
public String getDAV();
/**
* Returns the string value for the "Depth" key.
* @return one of DEPTH_ZERO
,
* DEPTH_ONE
, or DEPTH_INFINITY
* @see #DEPTH_ZERO
* @see #DEPTH_ONE
* @see #DEPTH_INFINITY
*/
public String getDepth();
/**
* Returns the destination URL for a copy or move operation.
* @return the value for "Destination"
key,
* or null
if that key has no value.
*/
public String getDestination();
/**
* Returns the entity tag for the associated entity.
* @return the value for "ETag"
key,
* or null
if that key has no value.
*/
public String getETag();
/**
* Returns the date/time after which the response should be
* considered stale.
* @return the value for "Expires"
key,
* or null
if that key has no value.
*/
public String getExpires();
/**
* Returns the string value for the FROM key.
* @return the value for "From"
key,
* or null
if that key has no value.
*/
public String getFrom();
/**
* Returns the Internet host and port of the resource being requested.
* @return the value for "Host"
key,
* or null
if that key has no value.
*/
public String getHost();
/**
* Returns the string value for the IF key.
* @return the value for "If"
key,
* or null
if that key has no value.
*/
public String getIfKey();
/**
* Returns the string value for the IF_MATCH key.
* @return the value for "If-Match"
key,
* or null
if that key has no value.
*/
public String getIfMatch();
/**
* Returns the string value for the IF_MODIFIED_SINCE key.
* @return the value for "If-Modified-Since"
key,
* or null
if that key has no value.
*/
public String getIfModifiedSince();
/**
* Returns the string value for the IF_NONE_MATCH key.
* @return the value for "If-None-Match"
key,
* or null
if that key has no value.
*/
public String getIfNoneMatch();
/**
* Returns the string value for the IF_RANGE key.
* @return the value for "If-Range"
key,
* or null
if that key has no value.
*/
public String getIfRange();
/**
* Returns the string value for the IF_UNMODIFIED_SINCE key.
* @return the value for "If-Unmodified-Since"
key,
* or null
if that key has no value.
*/
public String getIfUnmodifiedSince();
/**
* Returns the label header value.
* @return the value for "Label"
key,
* or null
if that key has no value.
*/
public String getLabel();
/**
* Returns when the resource was last modified.
* @return the value for "Last-Modified"
key,
* or null
if that key has no value.
*/
public String getLastModified();
/**
* Returns the URI of the redirect location.
* @return the value for "Location"
key,
* or null
if that key has no value.
*/
public String getLocation();
/**
* Returns the lock token for the resource, or null if it is not set.
* @return the value for "Lock-Token"
key,
* or null
if that key has no value.
*/
public String getLockToken();
/**
* Returns the integer value for the MAX_FORWARDS key.
* @return the value for "Max-Forwards"
key,
* or null
if that key has no value.
*/
public int getMaxForwards();
/**
* Returns the string value for the ORDERED key.
* @return the value for "Ordered"
key,
* or null
if that key has no value.
*/
public String getOrdered();
/**
* Returns the flag that indicates if copy or move should overwrite
* an existing destination.
* @return the value for "Overwrite"
key,
* or false
if that key has no value.
*/
public boolean getOverwrite();
/**
* Returns the boolean value for the PASSTHROUGH key.
* @return the value for "Passthrough"
key,
* or null
if that key has no value.
*/
public boolean getPassthrough();
/**
* Returns the string value for the POSITION key.
* @return the value for "Position"
key,
* or null
if that key has no value.
*/
public String getPosition();
/**
* Returns the string value for the PRAGMA key.
* @return the value for "Pragma"
key,
* or null
if that key has no value.
*/
public String getPragma();
/**
* Returns the string value for the PROXY_AUTHENTICATE key.
* @return the value for "Proxy-Authenticate"
key,
* or null
if that key has no value.
*/
public String getProxyAuthenticate();
/**
* Returns the string value for the PROXY_AUTHORIZATION key.
* @return the value for "Proxy-Authorization"
key,
* or null
if that key has no value.
*/
public String getProxyAuthorization();
/**
* Returns the string value for the PUBLIC_KEY key.
* @return the value for "Public-Key"
key,
* or null
if that key has no value.
*/
public String getPublicKey();
/**
* Returns the string value for the RANGE key.
* @return the value for "Range"
key,
* or null
if that key has no value.
*/
public String getRange();
/**
* Returns the URI string of the resource from which the request was obtained.
* @return the value for "Referer"
key,
* or null
if that key has no value.
*/
public String getReferer();
/**
* Returns the URI string for the REF_TARGET key.
* @return the value for "Ref-Target"
key,
* or null
if that key has no value.
*/
public String getRefTarget();
/**
* Returns the string value for the RESOURCE_TYPE key.
* @return the value for "Resource-Type"
key,
* or null
if that key has no value.
*/
public String getResourceType();
/**
* Returns the string value for the RETRY_AFTER key.
* @return the value for "Retry-After"
key,
* or null
if that key has no value.
*/
public String getRetryAfter();
/**
* Returns information about the software used by the origin server
* to handle the request.
* @return the value for "Server"
key,
* or null
if that key has no value.
*/
public String getServer();
/**
* Returns the URI string of the resource whose method is in process.
* @return the value for "Status-URI"
key,
* or null
if that key has no value.
*/
public String getStatusURI();
/**
* Returns the lock timeout value.
* @return the integer value for "Timeout"
key,
* where -1 means that the value was not set, and -2 means
* that the value was infinity.
*/
public int getTimeout();
/**
* Returns the string value for the TRANSFER_ENCODING key.
* @return the value for "Transfer-Encoding"
key,
* or null
if that key has no value.
*/
public String getTransferEncoding();
/**
* Returns the string value for the UPGRADE key.
* @return the value for "Upgrade"
key,
* or null
if that key has no value.
*/
public String getUpgrade();
/**
* Returns information about the user agent originating the request.
* @return the value for "User-Agent"
key,
* or null
if that key has no value.
*/
public String getUserAgent();
/**
* Returns the string value for the VARY key.
* @return the value for "Vary"
key,
* or null
if that key has no value.
*/
public String getVary();
/**
* Returns the string value for the VIA key.
* @return the value for "Via"
key,
* or null
if that key has no value.
*/
public String getVia();
/**
* Returns the string value for the WARNING key.
* @return the value for "Warning"
key,
* or null
if that key has no value.
*/
public String getWarning();
/**
* Returns the string value for the WWW_AUTHENTICATE key.
* @return the value for "WWW-Authenticate"
key,
* or null
if that key has no value.
*/
public String getWWWAuthenticate();
/**
* Returns keys of the context, as an enumeration
*
* @return an enumeration over the context keys
* (String
s).
*/
public Enumeration keys();
/**
* Adds or replaces the given key-value pair into the context.
*
* @param key the key
* @param value its associated value
*/
public void put(String key, String value);
/**
* Removes the given key from this context. Does nothing if the
* given key is not set.
*
* @param key the key to remove
*/
public void removeKey(String key);
/**
* Sets what media types are acceptable for a response.
* Sets the string value for the ACCEPT key.
*
* @param value the value for ACCEPT
*/
public void setAccept(String value);
/**
* Sets which character sets are acceptable for a response.
* Sets the string value for the ACCEPT_CHARSET key.
*
* @param value the value for ACCEPT_CHARSET
*/
public void setAcceptCharset(String value);
/**
* Sets the content-encoding values which are acceptable for a response.
* Sets the string value for the ACCEPT_ENCODING key.
*
* @param value the value for ACCEPT_ENCODING
*/
public void setAcceptEncoding(String value);
/**
* Sets which natural languages are acceptable for a response.
* Sets the string value for the ACCEPT_LANGUAGE key.
*
* @param value the value for ACCEPT_LANGUAGE
*/
public void setAcceptLanguage(String value);
/**
* Sets the range requests acceptable to a server.
* Sets the string value for the ACCEPT_RANGES key.
*
* @param value the value for ACCEPT_RANGES
*/
public void setAcceptRanges(String value);
/**
* Sets the sender's estimate of the time since the response was generated.
* Sets the int value for the AGE key. Set the value to -1 to remove the key.
*
* @param seconds the value for AGE
*/
public void setAge(int seconds);
/**
* Sets the string value for the ALL_BINDINGS key.
*
* @param value the value for ALL_BINDINGS
*/
public void setAllBindings(String value);
/**
* Sets methods allowed on a resource
* Sets the string value for the ALLOW key.
*
* @param value the value for ALLOW
*/
public void setAllow(String value);
/**
* Sets the user's credentials for the realm of the resource being requested.
* Sets the string value for the AUTHORIZATION key.
*
* @param value the value for AUTHORIZATION
*/
public void setAuthorization(String value);
/**
* Sets the cache control directives that must be obeyed.
* Sets the string value for the CACHE_CONTROL key.
*
* @param value the value for CACHE_CONTROL
*/
public void setCacheControl(String value);
/**
* Sets sender connection options.
* Sets the string value for the CONNECTION key.
*
* @param value the value for CONNECTION
*/
public void setConnection(String value);
/**
* Sets the URL string value for the CONTENT_BASE key.
*
* @param stringURL the value for CONTENT_BASE
*/
public void setContentBase(String stringURL);
/**
* Sets the additional content encodings that have been applied to the entity body.
* Sets the string value for the CONTENT_ENCODING key.
*
* @param value the value for CONTENT_ENCODING
*/
public void setContentEncoding(String value);
/**
* Sets the natural language of the intended audience for the entity body.
* Sets the string value for the CONTENT_LANGUAGE key.
*
* @param value the value for CONTENT_LANGUAGE
*/
public void setContentLanguage(String value);
/**
* Sets the content length in bytes of the entity body.
* Sets the value for the CONTENT_LENGTH key.
* Passes the value -1 to remove the key.
*
* @param value the value for CONTENT_LENGTH
*/
public void setContentLength(long value);
/**
* Sets the URL string value for the CONTENT_LOCATION key.
*
* @param stringURL the value for CONTENT_LOCATION
*/
public void setContentLocation(String stringURL);
/**
* Sets the string value for the CONTENT_MD5 key.
*
* @param value the value for CONTENT_MD5
*/
public void setContentMD5(String value);
/**
* Sets the string value for the CONTENT_RANGE key.
*
* @param value the value for CONTENT_RANGE
*/
public void setContentRange(String value);
/**
* Sets the MIME type for the response contents.
* Sets the string value for the CONTENT_TYPE key.
*
* @param value the value for CONTENT_TYPE
*/
public void setContentType(String value);
/**
* Sets the date the request was made.
* Sets the string value for the DATE key.
*
* @param value the value for DATE
*/
public void setDate(String value);
/**
* Sets the DAV level supported by the server.
* Sets the string value for the DAV key.
*
* @param value the value for DAV
*/
public void setDAV(String value);
/**
* Sets the string value for the DEPTH key.
* @param depth one of DEPTH_ZERO
,
* DEPTH_ONE
, or DEPTH_INFINITY
* @see #DEPTH_ZERO
* @see #DEPTH_ONE
* @see #DEPTH_INFINITY
*/
public void setDepth(String depth);
/**
* Sets the destination URI for a copy or move operation.
* Sets the URI value for the DESTINATION key.
*
* @param stringURL the value for DESTINATION
*/
public void setDestination(String stringURL);
/**
* Sets the entity tag for the associated entity.
* Sets the string value for the ETAG key.
*
* @param value the value for ETAG
*/
public void setETag(String value);
/**
* Sets the date/time after which the response should be considered stale.
* Sets the string value for the EXPIRES key.
*
* @param value the value for EXPIRES
*/
public void setExpires(String value);
/**
* Sets the string value for the FROM key.
*
* @param value the value for FROM
*/
public void setFrom(String value);
/**
* Sets the Internet host and port of the resource being requested.
* Sets the string value for the HOST key.
*
* @param value the value for HOST
*/
public void setHost(String value);
/**
* Sets the string value for the IF key.
*
* @param value the value for IF
*/
public void setIfKey(String value);
/**
* Sets the string value for the IF_MATCH key.
*
* @param value the value for IF_MATCH
*/
public void setIfMatch(String value);
/**
* Sets the string value for the IF_MODIFIED_SINCE key.
*
* @param value the value for IF_MODIFIED_SINCE
*/
public void setIfModifiedSince(String value);
/**
* Sets the string value for the IF_NONE_MATCH key.
*
* @param value the value for IF_NONE_MATCH
*/
public void setIfNoneMatch(String value);
/**
* Sets the string value for the IF_RANGE key.
*
* @param value the value for IF_RANGE
*/
public void setIfRange(String value);
/**
* Sets the string value for the IF_UNMODIFIED_SINCE key.
*
* @param value the value for IF_UNMODIFIED_SINCE
*/
public void setIfUnmodifiedSince(String value);
/**
* Sets when the label header value.
* Sets the string value for the LABEL key.
*
* @param value the value for LABEL
*/
public void setLabel(String value);
/**
* Sets when the resource was last modified.
* Sets the string value for the LAST_MODIFIED key.
*
* @param value the value for LAST_MODIFIED
*/
public void setLastModified(String value);
/**
* Sets the redirect location.
* Sets the URI value for the LOCATION key.
*
* @param stringURL the value for LOCATION
*/
public void setLocation(String stringURL);
/**
* Sets the lock token for the resource.
* Sets the lock token value for the LOCK_TOKEN key.
*
* @param lockToken the value for LOCK_TOKEN
*/
public void setLockToken(String lockToken);
/**
* Sets the integer value for the MAX_FORWARDS key.
*
* @param value the value for MAX_FORWARDS
*/
public void setMaxForwards(int value);
/**
* Sets the string value for the ORDERED key.
*
* @param value the value for ORDERED
*/
public void setOrdered(String value);
/**
* Sets if copy or move should overwrite an existing destination.
* Sets the boolean value for the OVERWRITE key.
*
* @param value the value for OVERWRITE
*/
public void setOverwrite(boolean value);
/**
* Sets the boolean value for the PASSTHROUGH key.
*
* @param value the value for PASSTHROUGH
*/
public void setPassthrough(boolean value);
/**
* Sets the string value for the POSITION key.
*
* @param value the value for POSITION
*/
public void setPosition(String value);
/**
* Sets the string value for the PRAGMA key.
*
* @param value the value for PRAGMA
*/
public void setPragma(String value);
/**
* Sets the string value for the PROXY_AUTHENTICATE key.
*
* @param value the value for PROXY_AUTHENTICATE
*/
public void setProxyAuthenticate(String value);
/**
* Sets the string value for the PROXY_AUTHORIZATION key.
*
* @param value the value for PROXY_AUTHORIZATION
*/
public void setProxyAuthorization(String value);
/**
* Sets the string value for the PUBLIC_KEY key.
*
* @param value the value for PUBLIC_KEY
*/
public void setPublicKey(String value);
/**
* Sets the string value for the RANGE key.
*
* @param value the value for RANGE
*/
public void setRange(String value);
/**
* Sets the URI of the resource from which the request was obtained.
* Sets the URI value for the REFERER key.
*
* @param stringURL the value for REFERER
*/
public void setReferer(String stringURL);
/**
* Sets the URI value for the REF_TARGET key.
*
* @param stringURL the value for REF_TARGET
*/
public void setRefTarget(String stringURL);
/**
* Sets the string value for the RESOURCE_TYPE key.
*
* @param value the value for RESOURCE_TYPE
*/
public void setResourceType(String value);
/**
* Sets the string value for the RETRY_AFTER key.
*
* @param value the value for RETRY_AFTER
*/
public void setRetryAfter(String value);
/**
* Sets information about the software used by the origin server
* to handle the request. Sets the string value for the SERVER key.
*
* @param value the value for SERVER
*/
public void setServer(String value);
/**
* Sets the URI of the resource whose method is in process.
* Sets the URI value for the STATUS_URI key.
*
* @param statusURI the value for STATUS_URI
*/
public void setStatusURI(String statusURI);
/**
* Sets the lock timeout value in seconds. Pass -1 to clear the
* value, pass -2 to set "Infinity". Sets the integer value for the
* TIMEOUT key.
*
* @param value the value for TIMEOUT
*/
public void setTimeout(int value);
/**
* Sets the string value for the TRANSFER_ENCODING key.
*
* @param value the value for TRANSFER_ENCODING
*/
public void setTransferEncoding(String value);
/**
* Sets the string value for the UPGRADE key.
*
* @param value the value for UPGRADE
*/
public void setUpgrade(String value);
/**
* Sets information about the user agent originating the request.
* Sets the string value for the USER_AGENT key.
*
* @param value the value for USER_AGENT
*/
public void setUserAgent(String value);
/**
* Sets the string value for the VARY key.
*
* @param value the value for VARY
*/
public void setVary(String value);
/**
* Sets the string value for the VIA key.
*
* @param value the value for VIA
*/
public void setVia(String value);
/**
* Sets the string value for the WARNING key.
*
* @param value the value for WARNING
*/
public void setWarning(String value);
/**
* Sets the string value for the WWW_AUTHENTICATE key.
*
* @param value the value for WWW_AUTHENTICATE
*/
public void setWWWAuthenticate(String value);
}