org.xhtmlrenderer.context
Class StylesheetFactoryImpl

java.lang.Object
  extended by org.xhtmlrenderer.context.StylesheetFactoryImpl
All Implemented Interfaces:
StylesheetFactory

public class StylesheetFactoryImpl
extends Object
implements StylesheetFactory

A Factory class for Cascading Style Sheets. Sheets are parsed using a single parser instance for all sheets. Sheets are cached by URI using a LRU test, but timestamp of file is not checked.

Author:
Torbjoern Gannholm

Constructor Summary
StylesheetFactoryImpl(UserAgentCallback userAgentCallback)
           
 
Method Summary
 boolean containsStylesheet(Object key)
           
 void flushCachedStylesheets()
           
 Stylesheet getCachedStylesheet(Object key)
          Returns a cached sheet by its key; null if no entry for that key.
 Stylesheet getStylesheet(StylesheetInfo info)
          Returns a cached sheet by its key; loads and caches it if not in cache; null if not able to load
 Stylesheet parse(Reader reader, StylesheetInfo info)
           
 Ruleset parseStyleDeclaration(int origin, String styleDeclaration)
           
 void putStylesheet(Object key, Stylesheet sheet)
          Adds a stylesheet to the factory cache.
 Object removeCachedStylesheet(Object key)
          Removes a cached sheet by its key.
 void setSupportCMYKColors(boolean b)
           
 void setUserAgentCallback(UserAgentCallback userAgent)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StylesheetFactoryImpl

public StylesheetFactoryImpl(UserAgentCallback userAgentCallback)
Method Detail

parse

public Stylesheet parse(Reader reader,
                        StylesheetInfo info)
Specified by:
parse in interface StylesheetFactory

parseStyleDeclaration

public Ruleset parseStyleDeclaration(int origin,
                                     String styleDeclaration)
Specified by:
parseStyleDeclaration in interface StylesheetFactory

putStylesheet

public void putStylesheet(Object key,
                          Stylesheet sheet)
Adds a stylesheet to the factory cache. Will overwrite older entry for same key.

Parameters:
key - Key to use to reference sheet later; must be unique in factory.
sheet - The sheet to cache.

containsStylesheet

public boolean containsStylesheet(Object key)
Parameters:
key -
Returns:
true if a Stylesheet with this key has been put in the cache. Note that the Stylesheet may be null.

getCachedStylesheet

public Stylesheet getCachedStylesheet(Object key)
Returns a cached sheet by its key; null if no entry for that key.

Parameters:
key - The key for this sheet; same as key passed to putStylesheet();
Returns:
The stylesheet

removeCachedStylesheet

public Object removeCachedStylesheet(Object key)
Removes a cached sheet by its key.

Parameters:
key - The key for this sheet; same as key passed to putStylesheet();

flushCachedStylesheets

public void flushCachedStylesheets()

getStylesheet

public Stylesheet getStylesheet(StylesheetInfo info)
Returns a cached sheet by its key; loads and caches it if not in cache; null if not able to load

Specified by:
getStylesheet in interface StylesheetFactory
Parameters:
info - The StylesheetInfo for this sheet
Returns:
The stylesheet

setUserAgentCallback

public void setUserAgentCallback(UserAgentCallback userAgent)

setSupportCMYKColors

public void setSupportCMYKColors(boolean b)


Copyright © 2012. All Rights Reserved.