| Adding URL Support

## Making the Implementation Available

> The JNDI looks for URL context factories by examining the `Context.URL_PKG_PREFIXES` (`"java.naming.factory.url.pkgs"`) environment property. This property contains a colon-separated list of package prefixes of the class names for the URL context factories. The prefix `"com.sun.jndi.url"` is always appended to the possibly empty list of package prefixes.

> In the `foo` URL example, the factory's fully qualified class name is `tut.foo.fooURLContextFactory`. Therefore, to include this factory in the list of URL context factories that the JNDI knows about, you set the `Context.URL_PKG_PREFIXES` property as follows:

> >     java.naming.factory.url.pkgs=tut

> The JNDI looks for a URL context factory based on its URL scheme id. Suppose that the JNDI is looking for a factory for the `ldap` URL scheme. It would look for the following classes:

> >     tut.ldap.ldapURLContextFactory
> >     com.sun.jndi.url.ldap.ldapURLContextFactory

> Similarly, with the same property setting, the JNDI would look for the following classes for the `foo` URL scheme:

> >     tut.foo.fooURLContextFactory
> >     com.sun.jndi.url.foo.fooURLContextFactory

> From this ordered list of class names, the JNDI will instantiate each class in turn and invoke `getObjectInstance()` on it until one class returns a non-`null` answer. The non-`null` answer becomes the URL context implementation that will be used for that URL scheme.

> As a service provider developer, you typically package the components of your service provider (the context implementation for the naming/directory, URL context factory, and URL context implementation) into an archive (JAR) file. To make the URL context factory automatically available to any program that uses this JAR file, you should include in it a `jndi.properties` file that contains a setting for the `Context.URL_PKG_PREFIXES` property, as shown in the earlier example. See the Environment Properties lesson for more information on how the JNDI reads and merges environment properties from different sources.

| Adding URL Support