public class URLConnectionProxy extends java.lang.Object implements URLConnection, javax.naming.Referenceable
URLConnection
resource. Whenever a client looks up for a URLConnection an instance
of this proxy is returned. This proxy contains the reference to actual
resource and delegates the call to actual reference on behalf of the caller.
The proxy logically protects the reference to resource being held by the client, once the resource is released. This ensures that the actual reference to the resource cannot be corrupted / used once the resource is released.
ATTR_CONN_TYPE, ATTR_NAME, ATTR_URL, REST_CONN_TYPE| Modifier | Constructor and Description |
|---|---|
protected |
URLConnectionProxy(URLConnection conn)
Create an instance of this proxy with the actual resource.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Close this connection.
|
boolean |
equals(java.lang.Object connection)
Tests for the equality of another URLConnection instance with the current
instance.
|
protected void |
finalize() |
AuthenticationScheme |
getAuthenticationScheme()
Get the
AuthenticationScheme used by this connection
to authenticate against the endpoint |
java.lang.Object |
getInteraction()
Start the communication session.
|
java.lang.String |
getName()
Get the name of this URLConnection.
|
Proxy |
getProxy()
Get the proxy details for this connection.
|
javax.naming.Reference |
getReference()
Return the
Reference that describes the details of this
connection. |
int |
getTimeout()
Get the timeout set on this connection.
|
java.net.URL |
getURL()
Get the URL resource represented by this connection
|
int |
hashCode() |
void |
open()
Open the connection.
|
void |
release()
Release this connection instance back to the pool.
|
void |
setProxy(Proxy proxy)
Configure the proxy details for the URL access
|
void |
setTimeout(int timeout)
Set the timeout property for the connection.
|
java.lang.String |
toString()
Returns a String representation of this Connection.
|
protected URLConnectionProxy(URLConnection conn)
conn - The Actual reference to the URLConnection resource.public java.lang.String getName()
getName in interface URLConnectionpublic void open()
throws ConnectionException
open in interface URLConnection{@link - ConnectionException} if the connection failed to open.ConnectionExceptionpublic void setProxy(Proxy proxy)
setProxy in interface URLConnectionproxy - The Proxy details needed to access the URLpublic Proxy getProxy()
getProxy in interface URLConnectionpublic java.lang.Object getInteraction()
throws ConnectionException
open() before
starting the interaction. This is necessary to initialize and prepare the atual
physical channel for communication. The default interaction model for the
URLConnection is the HttpClient.HTTPConnection.
The HTTPConnection supports the HTTP and HTTPS protocols of
communication.getInteraction in interface URLConnectionHTTPConnection that represents the underlying
communication channel.{@link - ConnectionException} if an error occurred in starting the
interaction.ConnectionExceptionpublic AuthenticationScheme getAuthenticationScheme()
AuthenticationScheme used by this connection
to authenticate against the endpointgetAuthenticationScheme in interface URLConnectionAuthenticationScheme used by this
connection. If the connection does not use any authentication
null is returned.public java.net.URL getURL()
getURL in interface URLConnectionURL resource of this connectionpublic void setTimeout(int timeout)
setTimeout in interface URLConnectiontimeout - The timeout to be set on the connection instance.public int getTimeout()
getTimeout in interface URLConnectionpublic void close()
throws ConnectionException
open()
on the connection again. Reopening the connection will reset the state
of the interaction associated with this connection.close in interface URLConnection{@link - ConnectionException} if a failure occured in closing the
connection.ConnectionExceptionpublic void release()
throws ConnectionException
release in interface URLConnection{@link - ConnectionException} if the connection could be released to
the pool.ConnectionExceptionpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object connection)
equals in class java.lang.Objecttrue if the connection instances are the same
falseotherwise.public javax.naming.Reference getReference()
throws javax.naming.NamingException
Reference that describes the details of this
connection.getReference in interface javax.naming.Referenceablejava.naming.Reference instance describing this connectionjavax.naming.NamingException - if an error was encountered.public java.lang.String toString()
toString in class java.lang.Objectprotected void finalize()
throws java.lang.Throwable
finalize in class java.lang.Objectjava.lang.Throwable