The ContentHandlerFactory Interface
A ContentHandlerFactory defines the rules for
where ContentHandler classes are stored. Create a
class that implements ContentHandlerFactory, and
give this class a createContentHandler( ) method
that knows how to instantiate your ContentHandler.
The createContentHandler( ) method should return
null if it can’t find a
ContentHandler appropriate for a MIME type;
null signals Java to look for
ContentHandler classes in the default locations.
When your application starts, call the
URLConnection’s
setContentHandlerFactory( ) method to set the
ContentHandlerFactory. This method may be called
only once in the lifetime of an application.
The createContentHandler( ) Method
Just as the
createURLStreamHandler( ) method of the
URLStreamHandlerFactory interface was responsible
for finding and loading the appropriate protocol handler, so too the
createContentHandler( ) method of the
ContentHandlerFactory interface is responsible for
finding and loading the appropriate ContentHandler
given a MIME type:
public abstract ContentHandler createContentHandler(String mimeType)
This method should be called only by the getContent( ) method of a URLConnection object. For
instance, Example 17.7 is a
ContentHandlerFactory that knows how to find the
right handler for the text/tab-separated-values content handler of
Example 17.1:
Example 17-7. TabFactory
package com.macfaq.net.www.content; import java.net.*; public class TabFactory implements ContentHandlerFactory { public ContentHandler ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access