org.apache.xerces.util
Class HTTPInputSource

java.lang.Object
  extended by org.apache.xerces.xni.parser.XMLInputSource
      extended by org.apache.xerces.util.HTTPInputSource

public final class HTTPInputSource
extends XMLInputSource

This class represents an input source for an XML resource retrievable over HTTP. In addition to the properties provided by an XMLInputSource an HTTP input source also has HTTP request properties and a preference whether HTTP redirects will be followed. Note that these properties will only be used if reading this input source will induce an HTTP connection.

Version:
$Id: HTTPInputSource.java 447241 2006-09-18 05:12:57Z mrglavas $
Author:
Michael Glavassevich, IBM

Constructor Summary
HTTPInputSource(java.lang.String publicId, java.lang.String systemId, java.lang.String baseSystemId)
          Constructs an input source from just the public and system identifiers, leaving resolution of the entity and opening of the input stream up to the caller.
HTTPInputSource(java.lang.String publicId, java.lang.String systemId, java.lang.String baseSystemId, java.io.InputStream byteStream, java.lang.String encoding)
          Constructs an input source from a byte stream.
HTTPInputSource(java.lang.String publicId, java.lang.String systemId, java.lang.String baseSystemId, java.io.Reader charStream, java.lang.String encoding)
          Constructs an input source from a character stream.
HTTPInputSource(XMLResourceIdentifier resourceIdentifier)
          Constructs an input source from a XMLResourceIdentifier object, leaving resolution of the entity and opening of the input stream up to the caller.
 
Method Summary
 boolean getFollowHTTPRedirects()
          Returns the preference whether HTTP redirects should be followed.
 java.util.Iterator getHTTPRequestProperties()
          Returns an iterator for the request properties this input source contains.
 java.lang.String getHTTPRequestProperty(java.lang.String key)
          Returns the value of the request property associated with the given property name.
 void setFollowHTTPRedirects(boolean followRedirects)
          Sets the preference whether HTTP redirects should be followed.
 void setHTTPRequestProperty(java.lang.String key, java.lang.String value)
          Sets the value of the request property associated with the given property name.
 
Methods inherited from class org.apache.xerces.xni.parser.XMLInputSource
getBaseSystemId, getByteStream, getCharacterStream, getEncoding, getPublicId, getSystemId, setBaseSystemId, setByteStream, setCharacterStream, setEncoding, setPublicId, setSystemId
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HTTPInputSource

public HTTPInputSource(java.lang.String publicId,
                       java.lang.String systemId,
                       java.lang.String baseSystemId)
Constructs an input source from just the public and system identifiers, leaving resolution of the entity and opening of the input stream up to the caller.

Parameters:
publicId - The public identifier, if known.
systemId - The system identifier. This value should always be set, if possible, and can be relative or absolute. If the system identifier is relative, then the base system identifier should be set.
baseSystemId - The base system identifier. This value should always be set to the fully expanded URI of the base system identifier, if possible.

HTTPInputSource

public HTTPInputSource(XMLResourceIdentifier resourceIdentifier)
Constructs an input source from a XMLResourceIdentifier object, leaving resolution of the entity and opening of the input stream up to the caller.

Parameters:
resourceIdentifier - the XMLResourceIdentifier containing the information

HTTPInputSource

public HTTPInputSource(java.lang.String publicId,
                       java.lang.String systemId,
                       java.lang.String baseSystemId,
                       java.io.InputStream byteStream,
                       java.lang.String encoding)
Constructs an input source from a byte stream.

Parameters:
publicId - The public identifier, if known.
systemId - The system identifier. This value should always be set, if possible, and can be relative or absolute. If the system identifier is relative, then the base system identifier should be set.
baseSystemId - The base system identifier. This value should always be set to the fully expanded URI of the base system identifier, if possible.
byteStream - The byte stream.
encoding - The encoding of the byte stream, if known.

HTTPInputSource

public HTTPInputSource(java.lang.String publicId,
                       java.lang.String systemId,
                       java.lang.String baseSystemId,
                       java.io.Reader charStream,
                       java.lang.String encoding)
Constructs an input source from a character stream.

Parameters:
publicId - The public identifier, if known.
systemId - The system identifier. This value should always be set, if possible, and can be relative or absolute. If the system identifier is relative, then the base system identifier should be set.
baseSystemId - The base system identifier. This value should always be set to the fully expanded URI of the base system identifier, if possible.
charStream - The character stream.
encoding - The original encoding of the byte stream used by the reader, if known.
Method Detail

getFollowHTTPRedirects

public boolean getFollowHTTPRedirects()
Returns the preference whether HTTP redirects should be followed. By default HTTP redirects will be followed.


setFollowHTTPRedirects

public void setFollowHTTPRedirects(boolean followRedirects)
Sets the preference whether HTTP redirects should be followed. By default HTTP redirects will be followed.


getHTTPRequestProperty

public java.lang.String getHTTPRequestProperty(java.lang.String key)
Returns the value of the request property associated with the given property name.

Parameters:
key - the name of the request property
Returns:
the value of the request property or null if this property has not been set

getHTTPRequestProperties

public java.util.Iterator getHTTPRequestProperties()
Returns an iterator for the request properties this input source contains. Each object returned by the iterator is an instance of java.util.Map.Entry where each key and value are a pair of strings corresponding to the name and value of a request property.

Returns:
an iterator for the request properties this input source contains

setHTTPRequestProperty

public void setHTTPRequestProperty(java.lang.String key,
                                   java.lang.String value)
Sets the value of the request property associated with the given property name.

Parameters:
key - the name of the request property
value - the value of the request property