org.knopflerfish.framework
Class URLStreamHandlerWrapper

java.lang.Object
  extended by java.net.URLStreamHandler
      extended by org.knopflerfish.framework.URLStreamHandlerWrapper
All Implemented Interfaces:
URLStreamHandlerSetter

public class URLStreamHandlerWrapper
extends java.net.URLStreamHandler
implements URLStreamHandlerSetter

Wrapper which delegates an URL protocol to OSGi URLStreamHandlerServices.

Each instance of URLStreamHandlerWrapper tracks URLStreamHandlerServices for a named protocol and selects the best from all available services.


Method Summary
 boolean equals(java.net.URL u1, java.net.URL u2)
           
protected  int getDefaultPort()
           
protected  java.net.InetAddress getHostAddress(java.net.URL u)
           
protected  int hashCode(java.net.URL u)
           
protected  boolean hostsEqual(java.net.URL u1, java.net.URL u2)
           
protected  java.net.URLConnection openConnection(java.net.URL u)
           
protected  void parseURL(java.net.URL u, java.lang.String spec, int start, int limit)
           
protected  boolean sameFile(java.net.URL u1, java.net.URL u2)
           
 void setURL(java.net.URL u, java.lang.String protocol, java.lang.String host, int port, java.lang.String file, java.lang.String ref)
          This method is deprecated, but wrap it in the same way as JSDK1.4 wraps it.
 void setURL(java.net.URL u, java.lang.String protocol, java.lang.String host, int port, java.lang.String authority, java.lang.String userInfo, java.lang.String path, java.lang.String query, java.lang.String ref)
           
protected  java.lang.String toExternalForm(java.net.URL u)
           
 java.lang.String toString()
           
 
Methods inherited from class java.net.URLStreamHandler
openConnection
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

equals

public boolean equals(java.net.URL u1,
                      java.net.URL u2)
Overrides:
equals in class java.net.URLStreamHandler

getDefaultPort

protected int getDefaultPort()
Overrides:
getDefaultPort in class java.net.URLStreamHandler

getHostAddress

protected java.net.InetAddress getHostAddress(java.net.URL u)
Overrides:
getHostAddress in class java.net.URLStreamHandler

hashCode

protected int hashCode(java.net.URL u)
Overrides:
hashCode in class java.net.URLStreamHandler

hostsEqual

protected boolean hostsEqual(java.net.URL u1,
                             java.net.URL u2)
Overrides:
hostsEqual in class java.net.URLStreamHandler

openConnection

protected java.net.URLConnection openConnection(java.net.URL u)
                                         throws java.io.IOException
Specified by:
openConnection in class java.net.URLStreamHandler
Throws:
java.io.IOException

parseURL

protected void parseURL(java.net.URL u,
                        java.lang.String spec,
                        int start,
                        int limit)
Overrides:
parseURL in class java.net.URLStreamHandler

sameFile

protected boolean sameFile(java.net.URL u1,
                           java.net.URL u2)
Overrides:
sameFile in class java.net.URLStreamHandler

setURL

public void setURL(java.net.URL u,
                   java.lang.String protocol,
                   java.lang.String host,
                   int port,
                   java.lang.String file,
                   java.lang.String ref)
This method is deprecated, but wrap it in the same way as JSDK1.4 wraps it.

Specified by:
setURL in interface URLStreamHandlerSetter
Overrides:
setURL in class java.net.URLStreamHandler
See Also:
"java.net.URLStreamHandler.setURL(URL,String,String,int,String,String)"

setURL

public void setURL(java.net.URL u,
                   java.lang.String protocol,
                   java.lang.String host,
                   int port,
                   java.lang.String authority,
                   java.lang.String userInfo,
                   java.lang.String path,
                   java.lang.String query,
                   java.lang.String ref)
Specified by:
setURL in interface URLStreamHandlerSetter
Overrides:
setURL in class java.net.URLStreamHandler
See Also:
"java.net.URLStreamHandler.setURL(URL,String,String,int,String,String,String,String)"

toExternalForm

protected java.lang.String toExternalForm(java.net.URL u)
Overrides:
toExternalForm in class java.net.URLStreamHandler

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object