|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.net.URLConnection
public abstract class URLConnection
The URLConnection class is responsible for establishing a connection to an
URL for a given protocol. The correct URLConnection subclass to call is
determined by URLStreamHandler.openConnection().
| Nested Class Summary | |
|---|---|
(package private) static class |
URLConnection.DefaultContentHandler
|
| Field Summary | |
|---|---|
protected boolean |
allowUserInteraction
|
protected boolean |
connected
|
(package private) static Hashtable<String,Object> |
contentHandlers
Cache for storing Content handler |
(package private) ContentHandler |
defaultHandler
|
protected boolean |
doInput
|
protected boolean |
doOutput
|
protected long |
ifModifiedSince
|
protected URL |
url
|
protected boolean |
useCaches
|
| Constructor Summary | |
|---|---|
protected |
URLConnection(URL url)
Creates a URLConnection pointing to the resource specified by the url |
| Method Summary | |
|---|---|
void |
addRequestProperty(String field,
String newValue)
Adds the given request property. |
abstract void |
connect()
Establishes the connection to the resource specified by this URL with this method, along with other
options that can only be set before this connection is made. |
boolean |
getAllowUserInteraction()
Returns the value of allowUserInteraction which indicates
if this connection allows user interaction |
int |
getConnectTimeout()
Returns a timeout of connection by milliseconds |
Object |
getContent()
Returns the object pointed to by this URL. |
Object |
getContent(Class[] types)
Returns the object pointed to by this URL. |
String |
getContentEncoding()
Returns the Content encoding type of the response body, null if no such field is found in the header response. |
int |
getContentLength()
Returns the length of the content or body in the response header in bytes. |
String |
getContentType()
Returns the type of the content. |
long |
getDate()
Returns the date in milliseconds since epoch when this response header was created, or 0 if the field Date is not found in the
header. |
static boolean |
getDefaultAllowUserInteraction()
Returns whether this connection allow user interaction by default. |
static String |
getDefaultRequestProperty(String field)
Deprecated. Use getRequestProperty(java.lang.String) |
boolean |
getDefaultUseCaches()
Returns whether this connection use caches by default. |
boolean |
getDoInput()
Returns whether this connection supports input. |
boolean |
getDoOutput()
Returns whether this connection supports output. |
long |
getExpiration()
Returns the date in milliseconds since epoch when this response header expires or 0 if the field Expires is not found in the
header. |
static FileNameMap |
getFileNameMap()
Returns the MIME table of this URL connection. |
String |
getHeaderField(int pos)
Returns the value of the field at position pos |
String |
getHeaderField(String key)
Returns the value of the field corresponding to the key
Returns null if there is no such field. |
long |
getHeaderFieldDate(String field,
long defaultValue)
Returns the date value in the form of milliseconds since epoch corresponding to the field field. |
int |
getHeaderFieldInt(String field,
int defaultValue)
Returns the integer value of the specified field. |
String |
getHeaderFieldKey(int posn)
Returns the name of the field at position specified by posn,
null if there are fewer than posn fields. |
Map<String,List<String>> |
getHeaderFields()
Provides an unmodifiable map of the connection header values. |
long |
getIfModifiedSince()
Returns the value of ifModifiedSince of this connection in
milliseconds since epoch |
InputStream |
getInputStream()
Creates an InputStream for reading from this URL Connection. |
long |
getLastModified()
Returns the value of the field Last-Modified in the
response header, 0 if no such field exists |
OutputStream |
getOutputStream()
Creates an OutputStream for writing to this URL Connection. |
Permission |
getPermission()
Returns the permissions necessary to make the connection. |
int |
getReadTimeout()
Returns a timeout of reading by milliseconds |
Map<String,List<String>> |
getRequestProperties()
Provides an unmodifiable map of the request properties. |
String |
getRequestProperty(String field)
Returns the value corresponding to the field in the request Header, null if no such field exists. |
URL |
getURL()
Returns the URL of this connection |
boolean |
getUseCaches()
Returns whether this connection uses caches |
static String |
guessContentTypeFromName(String url)
Determines the MIME type of the file specified by the string URL, using the filename extension. |
static String |
guessContentTypeFromStream(InputStream is)
Examines the bytes of the input stream and returns the MIME type, null if no content type can be deduced. |
void |
setAllowUserInteraction(boolean newValue)
Sets the flag indicating whether this connection allows user interaction This can only be called prior to connection establishment. |
void |
setConnectTimeout(int timeout)
Sets a timeout for connection to perform non-block. |
static void |
setContentHandlerFactory(ContentHandlerFactory contentFactory)
Sets the current content handler factory to be contentFactory. |
static void |
setDefaultAllowUserInteraction(boolean allows)
Set whether user interaction is allowed by default. |
static void |
setDefaultRequestProperty(String field,
String value)
Deprecated. Use getRequestProperty(java.lang.String) |
void |
setDefaultUseCaches(boolean newValue)
Set whether caches are used by default. |
void |
setDoInput(boolean newValue)
Sets whether this URLConnection allows input. |
void |
setDoOutput(boolean newValue)
Sets whether this URLConnection allows output. |
static void |
setFileNameMap(FileNameMap map)
With permission from the security manager, this method sets the map to be the MIME Table of this URL connection. |
void |
setIfModifiedSince(long newValue)
Sets the header field ifModifiedSince. |
void |
setReadTimeout(int timeout)
Sets a timeout for reading to perform non-block. |
void |
setRequestProperty(String field,
String newValue)
Sets the value of the request header field field to
newValue Only the current URL Connection is affected. |
void |
setUseCaches(boolean newValue)
Sets the flag indicating if this connection uses caches. |
String |
toString()
Returns the name of the class of the URLConnection |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected URL url
ContentHandler defaultHandler
protected long ifModifiedSince
protected boolean useCaches
protected boolean connected
protected boolean doOutput
protected boolean doInput
protected boolean allowUserInteraction
static Hashtable<String,Object> contentHandlers
| Constructor Detail |
|---|
protected URLConnection(URL url)
url
| Method Detail |
|---|
public abstract void connect()
throws IOException
URL with this method, along with other
options that can only be set before this connection is made.
IOException - If an error occurs while connectingIOException,
URLStreamHandlerpublic boolean getAllowUserInteraction()
allowUserInteraction which indicates
if this connection allows user interaction
getDefaultRequestProperty(java.lang.String),
setDefaultRequestProperty(java.lang.String, java.lang.String),
allowUserInteraction
public Object getContent()
throws IOException
URL. It first
attempts to get the content type from getContentType(),
which looks for the response header field "Content-Type". If none is
found, it will guess the content type from the filename extension. If
that fails, it will guess by inspecting the stream.
IOException - if an IO error occurredURLConnection.DefaultContentHandler,
ContentHandlerFactory,
IOException,
setContentHandlerFactory(java.net.ContentHandlerFactory)
public Object getContent(Class[] types)
throws IOException
URL. It first
attempts to get the content type from getContentType(),
which looks for the response header field "Content-Type". If none is
found, it will guess the content type from the filename extension. If
that fails, it will guess by inspecting the stream.
types - The list of acceptable content types
IOException - If an error occurred obtaining the content.public String getContentEncoding()
getContentType()public int getContentLength()
Content-Length cannot be found in the
response header.
getContentType()public String getContentType()
null if there's
no such field.
guessContentTypeFromName(java.lang.String),
guessContentTypeFromStream(java.io.InputStream)public long getDate()
Date is not found in the
header.
getExpiration(),
getLastModified(),
Datepublic static boolean getDefaultAllowUserInteraction()
defaultAllowUserInteractiongetAllowUserInteraction(),
setDefaultAllowUserInteraction(boolean),
setAllowUserInteraction(boolean),
allowUserInteraction@Deprecated public static String getDefaultRequestProperty(String field)
getRequestProperty(java.lang.String)
field,
null if there's no such field.
field - the field to get the request property for
public boolean getDefaultUseCaches()
getUseCaches(),
setDefaultUseCaches(boolean),
setUseCaches(boolean),
useCachespublic boolean getDoInput()
setDoInput(boolean),
doInputpublic boolean getDoOutput()
setDoOutput(boolean),
doOutputpublic long getExpiration()
Expires is not found in the
header.
getHeaderField(int),
getHeaderField(String),
getHeaderFieldDate(String, long),
getHeaderFieldInt(String, int),
getHeaderFieldKey(int)public static FileNameMap getFileNameMap()
public String getHeaderField(int pos)
pos.
Returns null if there are fewer than pos fields
in the response header.
- Parameters:
pos - the position of the field
- Returns:
- The value of the field
- See Also:
getHeaderFieldDate(java.lang.String, long),
getHeaderFieldInt(java.lang.String, int),
getHeaderFieldKey(int)
public Map<String,List<String>> getHeaderFields()
public Map<String,List<String>> getRequestProperties()
public void addRequestProperty(String field,
String newValue)
field - the request property field namenewValue - the property value
IllegalStateException - -
if connection already established
NullPointerException - -
if field is nullpublic String getHeaderField(String key)
key
Returns null if there is no such field.
key - the name of the header field
getHeaderFieldDate(java.lang.String, long),
getHeaderFieldInt(java.lang.String, int),
getHeaderFieldKey(int)
public long getHeaderFieldDate(String field,
long defaultValue)
field. Returns
defaultValue if no such field can be found in the response
header.
field - the field in questiondefaultValue - the default value if no field is found
ifModifiedSince,
setIfModifiedSince(long)
public int getHeaderFieldInt(String field,
int defaultValue)
defaultValue if no such field exists.
field - the field to returndefaultValue - to be returned if field> does not exist
public String getHeaderFieldKey(int posn)
posn,
null if there are fewer than posn fields.
posn - the position to look for; the first field being 0
getHeaderFieldDate(java.lang.String, long),
getHeaderFieldInt(java.lang.String, int),
getHeaderField(int),
getHeaderField(String),
getHeaderFieldDate(String, long),
getHeaderFieldInt(String, int),
getHeaderFieldKey(int)public long getIfModifiedSince()
ifModifiedSince of this connection in
milliseconds since epoch
ifModifiedSince,
setIfModifiedSince(long)
public InputStream getInputStream()
throws IOException
IOException - If an InputStream could not be createdgetContent(),
getContent(Class[]),
getOutputStream(),
InputStream,
IOExceptionpublic long getLastModified()
Last-Modified in the
response header, 0 if no such field exists
Date,
getDate(),
getExpiration()
public OutputStream getOutputStream()
throws IOException
IOException - If an OutputStream could not be createdgetContent(),
getContent(Class[]),
getInputStream(),
IOException
public Permission getPermission()
throws IOException
By default, this methods returns AllPermission.
Subclasses should override this and return the appropriate permission
object.
IOException - if an IO exception occurs during the creation of the
permission object.public String getRequestProperty(String field)
field - the field to get the property for
IllegalStateException - -
if connection already establishedgetDefaultRequestProperty(java.lang.String),
setDefaultRequestProperty(java.lang.String, java.lang.String),
setRequestProperty(java.lang.String, java.lang.String)public URL getURL()
URL of this connection
URL,
URLConnection(URL)public boolean getUseCaches()
public static String guessContentTypeFromName(String url)
string URL, using the filename extension. Any fragment
identifier is removed before processing.
url - the MIME type of the file.
FileNameMap,
FileNameMap.getContentTypeFor(String),
getContentType(),
guessContentTypeFromStream(java.io.InputStream)
public static String guessContentTypeFromStream(InputStream is)
throws IOException
is - the input stream for the URL
IOException - If an IO error occurspublic void setAllowUserInteraction(boolean newValue)
newValue - the value of the flag to be set
IllegalStateException - if this method attempts to change the flag after a connection
has been establishedpublic static void setContentHandlerFactory(ContentHandlerFactory contentFactory)
contentFactory. It can only do so with the permission of
the security manager. The ContentFactory can only be specified once
during the lifetime of an application.
contentFactory - the factory
Error - if a ContentFactory has been created before SecurityException
if the security manager does not allow this actionURLConnection.DefaultContentHandler,
ContentHandlerFactory,
SecurityException,
SecurityManager.checkSetFactory()public static void setDefaultAllowUserInteraction(boolean allows)
allows - allow user interaction
@Deprecated
public static void setDefaultRequestProperty(String field,
String value)
getRequestProperty(java.lang.String)
field in the default request header with the
value value
field - the request header field to be setvalue - the new valuepublic void setDefaultUseCaches(boolean newValue)
newValue - the value of the flag to be setgetDefaultUseCaches(),
getUseCaches(),
setUseCaches(boolean),
useCachespublic void setDoInput(boolean newValue)
newValue - boolean
IllegalAccessError - Exception thrown when this method attempts to change the
value after connecteddoInput,
getDoInput(),
setDoInput(boolean),
IllegalAccessErrorpublic void setDoOutput(boolean newValue)
newValue - boolean
IllegalAccessError - Exception thrown when this method attempts to change the
value after connecteddoOutput,
getDoOutput(),
setDoOutput(boolean),
IllegalAccessErrorpublic static void setFileNameMap(FileNameMap map)
map to be the MIME Table of this URL connection.
map - the MIME table to be set.public void setIfModifiedSince(long newValue)
ifModifiedSince.
newValue - number of milliseconds since epoch
IllegalStateException - if already connected.
public void setRequestProperty(String field,
String newValue)
field to
newValue Only the current URL Connection is affected. It
can only be called before the connection is made
field - the fieldnewValue - the field's new value
IllegalStateException - -
if connection already established
NullPointerException - -
if field is nullgetDefaultRequestProperty(java.lang.String),
setDefaultRequestProperty(java.lang.String, java.lang.String),
getRequestProperty(java.lang.String)public void setUseCaches(boolean newValue)
newValue - the value of the flag to be set
IllegalStateException - Exception thrown when this method attempts to change the
value after connectedgetDefaultUseCaches(),
setDefaultUseCaches(boolean),
getUseCaches(),
useCachespublic void setConnectTimeout(int timeout)
timeout - timeout for connection in milliseconds.
IllegalArgumentException - if timeout is less than zero.public int getConnectTimeout()
public void setReadTimeout(int timeout)
timeout - timeout for reading in milliseconds.
IllegalArgumentException - if timeout is less than zero.public int getReadTimeout()
public String toString()
URLConnection
toString in class ObjectURLConnectiongetURL(),
URLConnection(URL)
|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||