|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjodd.lagarto.adapter.htmlstapler.HtmlStaplerBundlesManager
public class HtmlStaplerBundlesManager
HTML resources bundles manager.
| Nested Class Summary | |
|---|---|
static class |
HtmlStaplerBundlesManager.Strategy
|
| Field Summary | |
|---|---|
protected java.util.Map<java.lang.String,java.lang.String> |
actionBundles
|
protected int |
bundleCount
|
protected java.lang.String |
bundleFilenamePrefix
|
protected java.lang.String |
bundleFolder
|
protected java.lang.String |
contextPath
|
protected boolean |
downloadLocal
|
protected java.lang.String |
localAddressAndPort
|
protected java.lang.String |
localFilesEncoding
|
protected java.util.Map<java.lang.String,java.lang.String> |
mirrors
|
protected boolean |
sortResources
|
protected java.lang.String |
staplerServletPath
|
protected HtmlStaplerBundlesManager.Strategy |
strategy
|
protected java.lang.String |
webRoot
|
| Constructor Summary | |
|---|---|
HtmlStaplerBundlesManager(javax.servlet.ServletContext servletContext,
HtmlStaplerBundlesManager.Strategy strategy)
Creates new instance, initialize it and stores it in servlet context. |
|
| Method Summary | |
|---|---|
protected void |
createBundle(java.lang.String contextPath,
java.lang.String actionPath,
java.lang.String bundleId,
java.util.List<java.lang.String> sources)
Creates bundle file by loading resource files content. |
protected java.io.File |
createBundleFile(java.lang.String bundleId)
Creates bundle file. |
protected java.lang.String |
createDigest(java.lang.String source)
Creates digest i.e. bundle id from given string. |
protected java.lang.String |
fixCssRelativeUrls(java.lang.String content,
java.lang.String src)
Returns the content with all relative URLs fixed. |
protected java.lang.String |
fixRelativeUrl(java.lang.String url,
java.lang.String offsetPath)
For a given URL (optionally quoted), produces CSS URL where relative paths are fixed and prefixed with offsetPath. |
java.lang.String |
getBundleFilenamePrefix()
Returns prefix of all bundle file names. |
java.lang.String |
getBundleFolder()
Returns bundles folder. |
static HtmlStaplerBundlesManager |
getBundlesManager(javax.servlet.http.HttpServletRequest servletRequest)
Returns bundles manager. |
static HtmlStaplerBundlesManager |
getBundlesManager(javax.servlet.ServletContext servletContext)
Returns bundles manager from servlet context. |
java.lang.String |
getLocalAddressAndPort()
Returns local address and port for downloading local resources. |
java.lang.String |
getLocalFilesEncoding()
Returns local files encoding. |
java.lang.String |
getStaplerServletPath()
Returns HtmlStaplerServlet servlet path. |
HtmlStaplerBundlesManager.Strategy |
getStrategy()
Returns current strategy. |
java.lang.String |
getWebRoot()
Returns current web root. |
protected boolean |
isCssResource(java.lang.String src)
Returns true if resource is CSS, so the
CSS urls can be fixed. |
boolean |
isDownloadLocal()
Returns true if local resource files are downloaded
and not loaded from file system. |
protected boolean |
isExternalResource(java.lang.String link)
Returns true if resource link has to be downloaded. |
boolean |
isSortResources()
Returns true if resources are sorted before
bundle id (a digest) is created. |
java.io.File |
lookupBundleFile(java.lang.String bundleId)
Lookups for bundle file. |
java.lang.String |
lookupBundleId(java.lang.String actionPath)
Lookups for a bundle id for a given action. |
java.io.File |
lookupGzipBundleFile(java.io.File file)
Locates gzipped version of bundle file. |
protected java.lang.String |
onResourceContent(java.lang.String content)
Invoked before resource content is stored in the bundle. |
java.lang.String |
registerBundle(java.lang.String contextPath,
java.lang.String actionPath,
java.lang.String tempBundleId,
java.lang.String bundleContentType,
java.util.List<java.lang.String> sources)
Registers new bundle that consist of provided list of source paths. |
java.lang.String |
registerNewBundleId()
Registers new, temporary bundle id for given action path. |
void |
reset()
Clears all settings and removes all created bundle files from file system. |
protected java.lang.String |
resolveRealActionPath(java.lang.String actionPath)
Resolves real action path for given one. |
void |
setBundleFilenamePrefix(java.lang.String bundleFilenamePrefix)
Sets the prefix of bundle file names stored on disk. |
void |
setBundleFolder(java.lang.String bundleFolder)
Sets bundle folder. |
void |
setDownloadLocal(boolean downloadLocal)
Sets if local resource files should be downloaded or loaded from file system. |
void |
setLocalAddressAndPort(java.lang.String localAddressAndPort)
Specifies local address and port for downloading local resources. |
void |
setLocalFilesEncoding(java.lang.String localFilesEncoding)
Sets local files encoding. |
void |
setSortResources(boolean sortResources)
Sets the resources sorting before bundle id (i.e. a digest) is created. |
void |
setStaplerServletPath(java.lang.String staplerServletPath)
Sets registered path for HtmlStaplerServlet as registered in web.xml. |
void |
setWebRoot(java.lang.String webRoot)
Sets web root, i.e. real path to the exploded files. |
BundleAction |
start(javax.servlet.http.HttpServletRequest servletRequest,
java.lang.String bundleName)
Starts bundle usage by creating new BundleAction. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected int bundleCount
protected java.util.Map<java.lang.String,java.lang.String> actionBundles
protected java.util.Map<java.lang.String,java.lang.String> mirrors
protected java.lang.String localFilesEncoding
protected java.lang.String webRoot
protected java.lang.String bundleFolder
protected java.lang.String staplerServletPath
protected java.lang.String bundleFilenamePrefix
protected java.lang.String localAddressAndPort
protected boolean downloadLocal
protected boolean sortResources
protected final java.lang.String contextPath
protected final HtmlStaplerBundlesManager.Strategy strategy
| Constructor Detail |
|---|
public HtmlStaplerBundlesManager(javax.servlet.ServletContext servletContext,
HtmlStaplerBundlesManager.Strategy strategy)
| Method Detail |
|---|
public static HtmlStaplerBundlesManager getBundlesManager(javax.servlet.http.HttpServletRequest servletRequest)
public static HtmlStaplerBundlesManager getBundlesManager(javax.servlet.ServletContext servletContext)
public BundleAction start(javax.servlet.http.HttpServletRequest servletRequest,
java.lang.String bundleName)
BundleAction.
public HtmlStaplerBundlesManager.Strategy getStrategy()
strategy.
public boolean isSortResources()
true if resources are sorted before
bundle id (a digest) is created. When sorting is enabled,
two pages will share the same bundle even if they list
resources in different order.
public void setSortResources(boolean sortResources)
public java.lang.String getWebRoot()
public void setWebRoot(java.lang.String webRoot)
public java.lang.String getBundleFolder()
public void setBundleFolder(java.lang.String bundleFolder)
public java.lang.String getStaplerServletPath()
HtmlStaplerServlet servlet path.
Must be the same as in web.xml.
public void setStaplerServletPath(java.lang.String staplerServletPath)
HtmlStaplerServlet as registered in web.xml.
public java.lang.String getBundleFilenamePrefix()
public void setBundleFilenamePrefix(java.lang.String bundleFilenamePrefix)
public java.lang.String getLocalFilesEncoding()
public void setLocalFilesEncoding(java.lang.String localFilesEncoding)
public java.lang.String getLocalAddressAndPort()
public void setLocalAddressAndPort(java.lang.String localAddressAndPort)
public boolean isDownloadLocal()
true if local resource files are downloaded
and not loaded from file system.
public void setDownloadLocal(boolean downloadLocal)
protected java.io.File createBundleFile(java.lang.String bundleId)
public java.io.File lookupBundleFile(java.lang.String bundleId)
public java.io.File lookupGzipBundleFile(java.io.File file)
throws java.io.IOException
java.io.IOExceptionpublic java.lang.String lookupBundleId(java.lang.String actionPath)
null if action still has no bundle.
Returns an empty string if action has an empty bundle.
public java.lang.String registerNewBundleId()
public java.lang.String registerBundle(java.lang.String contextPath,
java.lang.String actionPath,
java.lang.String tempBundleId,
java.lang.String bundleContentType,
java.util.List<java.lang.String> sources)
protected java.lang.String createDigest(java.lang.String source)
protected void createBundle(java.lang.String contextPath,
java.lang.String actionPath,
java.lang.String bundleId,
java.util.List<java.lang.String> sources)
throws java.io.IOException
java.io.IOExceptionprotected boolean isExternalResource(java.lang.String link)
true if resource link has to be downloaded.
By default, if resource link starts with "http://" or with "https://"
it will be considered as external resource.
protected java.lang.String onResourceContent(java.lang.String content)
protected java.lang.String resolveRealActionPath(java.lang.String actionPath)
public void reset()
protected boolean isCssResource(java.lang.String src)
true if resource is CSS, so the
CSS urls can be fixed.
protected java.lang.String fixCssRelativeUrls(java.lang.String content,
java.lang.String src)
protected java.lang.String fixRelativeUrl(java.lang.String url,
java.lang.String offsetPath)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||