Package org.opencms.file.history
Class CmsHistoryResourceHandler
- java.lang.Object
-
- org.opencms.file.history.CmsHistoryResourceHandler
-
- All Implemented Interfaces:
I_CmsResourceInit
public class CmsHistoryResourceHandler extends java.lang.Object implements I_CmsResourceInit
Resource init handler that loads historical versions of resources.- Since:
- 6.9.1
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ATTRIBUTE_NAME
Constant for the historical version request attribute name.static java.lang.String
HISTORY_HANDLER
The historical version handler path.static java.lang.String
PARAM_VERSION
Request parameter name for the version number.static int
PROJECT_OFFLINE_VERSION
Constant for the offline project version.-
Fields inherited from interface org.opencms.main.I_CmsResourceInit
ATTR_ALTERNATIVE_CMS_OBJECT
-
-
Constructor Summary
Constructors Constructor Description CmsHistoryResourceHandler()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static I_CmsHistoryResource
getHistoryResource(javax.servlet.ServletRequest req)
Returns the historical version of a resource, if the given request is displaying a history version.static java.lang.String
getHistoryResourceURI(java.lang.String uri, javax.servlet.ServletRequest req)
Appends theversion
parameter to the URI if needed.static CmsResource
getResourceWithHistory(CmsObject cms, java.lang.String resourceUri)
Returns the correct resource for the given URI, taken into account historical versions marked by theversion
parameter.CmsResource
initResource(CmsResource resource, CmsObject cms, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)
Possibility to modify or change the CmsFile with the CmsObject.static boolean
isHistoryRequest(javax.servlet.ServletRequest req)
Returnstrue
if the given request is displaying an historical version.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opencms.main.I_CmsResourceInit
getConfiguration, initParameters
-
-
-
-
Field Detail
-
ATTRIBUTE_NAME
public static final java.lang.String ATTRIBUTE_NAME
Constant for the historical version request attribute name.- See Also:
- Constant Field Values
-
HISTORY_HANDLER
public static final java.lang.String HISTORY_HANDLER
The historical version handler path.- See Also:
- Constant Field Values
-
PARAM_VERSION
public static final java.lang.String PARAM_VERSION
Request parameter name for the version number.- See Also:
- Constant Field Values
-
PROJECT_OFFLINE_VERSION
public static final int PROJECT_OFFLINE_VERSION
Constant for the offline project version.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CmsHistoryResourceHandler
public CmsHistoryResourceHandler()
-
-
Method Detail
-
getHistoryResource
public static I_CmsHistoryResource getHistoryResource(javax.servlet.ServletRequest req)
Returns the historical version of a resource, if the given request is displaying a history version.- Parameters:
req
- the request to check- Returns:
- the historical resource if the given request is displaying an historical version
-
getHistoryResourceURI
public static java.lang.String getHistoryResourceURI(java.lang.String uri, javax.servlet.ServletRequest req)
Appends theversion
parameter to the URI if needed.- Parameters:
uri
- the resource URIreq
- the current request- Returns:
- the same URI, with additional parameters in case of a historical request
-
getResourceWithHistory
public static CmsResource getResourceWithHistory(CmsObject cms, java.lang.String resourceUri) throws CmsException
Returns the correct resource for the given URI, taken into account historical versions marked by theversion
parameter.- Parameters:
cms
- the current CMS contextresourceUri
- the resource URI- Returns:
- the resource, which can be an instance of
I_CmsHistoryResource
- Throws:
CmsException
- if something goes wrong
-
isHistoryRequest
public static boolean isHistoryRequest(javax.servlet.ServletRequest req)
Returnstrue
if the given request is displaying an historical version.- Parameters:
req
- the request to check- Returns:
true
if the given request is displaying a historical version
-
initResource
public CmsResource initResource(CmsResource resource, CmsObject cms, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res) throws CmsResourceInitException
Description copied from interface:I_CmsResourceInit
Possibility to modify or change the CmsFile with the CmsObject.Caution: reading parameters from the request, destroys special characters in all parameters, because the encoding for the request was not set yet.
- Specified by:
initResource
in interfaceI_CmsResourceInit
- Parameters:
resource
- the requested filecms
- the current CmsObjectreq
- the current requestres
- the current response- Returns:
- a resource in the OpenCms VFS
- Throws:
CmsResourceInitException
- if other implementations of the interface should not be executed- See Also:
I_CmsResourceInit.initResource(org.opencms.file.CmsResource, org.opencms.file.CmsObject, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
-
-