org.apache.xerces.util

## Class HTTPInputSource

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

-     public final class HTTPInputSource
      extends org.apache.xerces.xni.parser.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 699902 2008-09-28 21:40:49Z mrglavas $
  Author:
    Michael Glavassevich, IBM

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected boolean` | `fFollowRedirects` Preference for whether HTTP redirects should be followed.
    `protected java.util.Map` | `fHTTPRequestProperties` HTTP request properties.

    - ### Fields inherited from class org.apache.xerces.xni.parser.XMLInputSource

      `fBaseSystemId, fByteStream, fCharStream, fEncoding, fPublicId, fSystemId`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `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(org.apache.xerces.xni.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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### fFollowRedirects

          protected boolean fFollowRedirects

      Preference for whether HTTP redirects should be followed.

    - #### fHTTPRequestProperties

          protected java.util.Map fHTTPRequestProperties

      HTTP request properties.

  - ### 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(org.apache.xerces.xni.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

Copyright © 1999-2022 The Apache Software Foundation. All Rights Reserved.