Package org.osgi.service.url

# Interface URLStreamHandlerService

All Known Implementing Classes:
  `AbstractURLStreamHandlerService`

@ConsumerType public interface URLStreamHandlerService
Service interface with public versions of the protected `java.net.URLStreamHandler` methods.

The important differences between this interface and the `URLStreamHandler` class are that the `setURL` method is absent and the `parseURL` method takes a `URLStreamHandlerSetter` object as the first argument. Classes implementing this interface must call the `setURL` method on the `URLStreamHandlerSetter` object received in the `parseURL` method instead of `URLStreamHandler.setURL` to avoid a `SecurityException`.

Author:
  $Id: 810d8718f5ad689981fbb2c22886ad2695f17297 $
See Also:
  - `AbstractURLStreamHandlerService`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(URL u1, URL u2)`
`int`
`getDefaultPort()`
`InetAddress`
`getHostAddress(URL u)`
`int`
`hashCode(URL u)`
`boolean`
`hostsEqual(URL u1, URL u2)`
`URLConnection`
`openConnection(URL u)`
`void`
`parseURL(URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit)`
Parse a URL.
`boolean`
`sameFile(URL u1, URL u2)`
`String`
`toExternalForm(URL u)`

## Method Details

### openConnection

URLConnection openConnection(URL u) throws IOException

Throws:
  `IOException`
See Also:
  - "java.net.URLStreamHandler.openConnection"

### parseURL

void parseURL(URLStreamHandlerSetter realHandler, URL u, String spec, int start, int limit)
Parse a URL. This method is called by the `URLStreamHandler` proxy, instead of `java.net.URLStreamHandler.parseURL`, passing a `URLStreamHandlerSetter` object.

Parameters:
  `realHandler` - The object on which `setURL` must be invoked for this URL.
See Also:
  - "java.net.URLStreamHandler.parseURL"

### toExternalForm

String toExternalForm(URL u)

See Also:
  - "java.net.URLStreamHandler.toExternalForm"

### equals

boolean equals(URL u1, URL u2)

See Also:
  - "java.net.URLStreamHandler.equals(URL, URL)"

### getDefaultPort

int getDefaultPort()

See Also:
  - "java.net.URLStreamHandler.getDefaultPort"

### getHostAddress

InetAddress getHostAddress(URL u)

See Also:
  - "java.net.URLStreamHandler.getHostAddress"

### hashCode

int hashCode(URL u)

See Also:
  - "java.net.URLStreamHandler.hashCode(URL)"

### hostsEqual

boolean hostsEqual(URL u1, URL u2)

See Also:
  - "java.net.URLStreamHandler.hostsEqual"

### sameFile

boolean sameFile(URL u1, URL u2)

See Also:
  - "java.net.URLStreamHandler.sameFile"