Package org.apache.fop.fonts
Class FontCache
java.lang.Object
org.apache.fop.fonts.FontCache
- All Implemented Interfaces:
Serializable
Fop cache (currently only used for font info caching)
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addFont
(EmbedFontInfo fontInfo, InternalResourceResolver resourceResolver) Adds a font info to cachevoid
clear()
Clears font cacheboolean
containsFont
(String embedUrl) is this font in the cache?boolean
containsFont
(EmbedFontInfo fontInfo) is this font info in the cache?protected static String
getCacheKey
(EmbedFontInfo fontInfo) creates a key given a font info for the font mappingstatic File
getDefaultCacheFile
(boolean forWriting) Returns the default font cache file.static File
getFileFromUrls
(String[] urls) Tries to identify a File instance from an array of URLs.org.apache.fop.fonts.FontCache.CachedFontFile
getFontFile
(String embedUrl) Returns a font from the cache.getFontInfos
(String embedUrl, long lastModified) Returns the EmbedFontInfo instances belonging to a font file.static long
getLastModified
(URI uri) Retrieve the last modified date/time of a URI.boolean
cache has been updated since it was readboolean
isFailedFont
(String embedUrl, long lastModified) has this font previously failed to load?static FontCache
load()
Deprecated.static FontCache
Reads a font cache file and returns its contents.void
registerFailedFont
(String embedUrl, long lastModified) Registers a failed font with the cachevoid
removeFont
(String embedUrl) removes font from cachevoid
save()
Deprecated.usesaveTo(File)
insteadvoid
Writes the font cache to disk.
-
Constructor Details
-
FontCache
public FontCache()
-
-
Method Details
-
getDefaultCacheFile
Returns the default font cache file.- Parameters:
forWriting
- true if the user directory should be created- Returns:
- the default font cache file
-
load
Deprecated.useloadFrom(File)
insteadReads the default font cache file and returns its contents.- Returns:
- the font cache deserialized from the file (or null if no cache file exists or if it could not be read)
-
loadFrom
Reads a font cache file and returns its contents.- Parameters:
cacheFile
- the cache file- Returns:
- the font cache deserialized from the file (or null if no cache file exists or if it could not be read)
-
save
Deprecated.usesaveTo(File)
insteadWrites the font cache to disk.- Throws:
FOPException
- fop exception
-
saveTo
Writes the font cache to disk.- Parameters:
cacheFile
- the file to write to- Throws:
FOPException
- fop exception
-
getCacheKey
creates a key given a font info for the font mapping- Parameters:
fontInfo
- font info- Returns:
- font cache key
-
hasChanged
public boolean hasChanged()cache has been updated since it was read- Returns:
- if this cache has changed
-
containsFont
is this font in the cache?- Parameters:
embedUrl
- font info- Returns:
- boolean
-
containsFont
is this font info in the cache?- Parameters:
fontInfo
- font info- Returns:
- font
-
getFileFromUrls
Tries to identify a File instance from an array of URLs. If there's no file URL in the array, the method returns null.- Parameters:
urls
- array of possible font urls- Returns:
- file font file
-
addFont
Adds a font info to cache- Parameters:
fontInfo
- font info
-
getFontFile
Returns a font from the cache.- Parameters:
embedUrl
- font info- Returns:
- CachedFontFile object
-
getFontInfos
Returns the EmbedFontInfo instances belonging to a font file. If the font file was modified since it was cached the entry is removed and null is returned.- Parameters:
embedUrl
- the font URLlastModified
- the last modified date/time of the font file- Returns:
- the EmbedFontInfo instances or null if there's no cached entry or if it is outdated
-
removeFont
removes font from cache- Parameters:
embedUrl
- embed url
-
isFailedFont
has this font previously failed to load?- Parameters:
embedUrl
- embed urllastModified
- last modified- Returns:
- whether this is a failed font
-
registerFailedFont
Registers a failed font with the cache- Parameters:
embedUrl
- embed urllastModified
- time last modified
-
clear
public void clear()Clears font cache -
getLastModified
Retrieve the last modified date/time of a URI.- Parameters:
uri
- the URI- Returns:
- the last modified date/time
-
loadFrom(File)
instead