Class CmsResourceWrapperXmlPage
- All Implemented Interfaces:
I_CmsResourceWrapper
Every resource of type "xmlpage" becomes a folder with the same name. That folder contains the locales of the xml page as folders too. In the locale folder there are the elements for that locale as files. The files have the names of the elements with the extension "html". Additionaly there is a file in the root folder of that xml page that contains the controlcode of the xml page. This file has the name "controlcode.xml".
- Since:
- 6.5.6
-
Field Summary
Fields inherited from class org.opencms.file.wrapper.A_CmsResourceWrapper
m_isWrappedResource
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionaddResourcesToFolder
(CmsObject cms, String resourcename, CmsResourceFilter filter) Here it is possible to add additional (virtual) child resources to those already existing in the VFS.boolean
copyResource
(CmsObject cms, String source, String destination, CmsResource.CmsResourceCopyMode siblingMode) Copies a resource.createResource
(CmsObject cms, String resourcename, int type, byte[] content, List<CmsProperty> properties) Creates a new resource of the given resource type with the provided content and properties.boolean
deleteResource
(CmsObject cms, String resourcename, CmsResource.CmsResourceDeleteMode siblingMode) Deletes a resource given its name.getLock
(CmsObject cms, CmsResource resource) Returns the lock for the resource.protected String
getUriStyleSheet
(CmsObject cms, CmsResource res) Returns the OpenCms VFS uri of the style sheet of the resource.protected String
getUriTemplate
(CmsObject cms, CmsResource res) Returns the OpenCms VFS uri of the template of the resource.boolean
isWrappedResource
(CmsObject cms, CmsResource res) Is called to check if the given resource is handled by this wrapper.boolean
lockResource
(CmsObject cms, String resourcename, boolean temporary) Locks a resource.boolean
moveResource
(CmsObject cms, String source, String destination) Moves a resource to the given destination.protected String
prepareContent
(String content, CmsObject cms, CmsResource xmlPage, String path) Prepare the content of a xml page before returning.readFile
(CmsObject cms, String resourcename, CmsResourceFilter filter) Reads a file resource (including it's binary content) from the VFS, using the specified resource filter.readResource
(CmsObject cms, String resourcename, CmsResourceFilter filter) Reads a resource from the VFS, using the specified resource filter.restoreLink
(CmsObject cms, String uri) Returns the link to a existing resource in the VFS for the uri.rewriteLink
(CmsObject cms, CmsResource res) Returns the link how it is for the resource after using this resource wrapper.boolean
unlockResource
(CmsObject cms, String resourcename) Unlocks a resource.wrapResource
(CmsObject cms, CmsResource res) Changes the given resource based on the implementation of this wrapper.Writes a resource, including it's content.Methods inherited from class org.opencms.file.wrapper.A_CmsResourceWrapper
configure
-
Constructor Details
-
CmsResourceWrapperXmlPage
public CmsResourceWrapperXmlPage()
-
-
Method Details
-
addResourcesToFolder
public List<CmsResource> addResourcesToFolder(CmsObject cms, String resourcename, CmsResourceFilter filter) throws CmsException Description copied from interface:I_CmsResourceWrapper
Here it is possible to add additional (virtual) child resources to those already existing in the VFS.- Specified by:
addResourcesToFolder
in interfaceI_CmsResourceWrapper
- Overrides:
addResourcesToFolder
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextresourcename
- the full path of the resource where to add the child resources forfilter
- the resource filter to use- Returns:
- a list of all additionaly child
sCmsResource
- Throws:
CmsException
- if something goes wrong- See Also:
-
copyResource
public boolean copyResource(CmsObject cms, String source, String destination, CmsResource.CmsResourceCopyMode siblingMode) throws CmsException, CmsIllegalArgumentException Description copied from interface:I_CmsResourceWrapper
Copies a resource.First should be a check if the source and/or the destination are handled by this resource wrapper.
It is possible that the path in the source or in the destination are virtual paths and so has to be translated into valid paths existing in the VFS to copy the resource.
- Specified by:
copyResource
in interfaceI_CmsResourceWrapper
- Overrides:
copyResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjectsource
- the name of the resource to copydestination
- the name of the copy destination with complete pathsiblingMode
- indicates how to handle siblings during copy- Returns:
- true if the copy action was handled by this resource wrapper otherwise false
- Throws:
CmsException
- if something goes wrongCmsIllegalArgumentException
- if thedestination
argument is null or of length 0- See Also:
-
createResource
public CmsResource createResource(CmsObject cms, String resourcename, int type, byte[] content, List<CmsProperty> properties) throws CmsException, CmsIllegalArgumentException Description copied from interface:I_CmsResourceWrapper
Creates a new resource of the given resource type with the provided content and properties.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to create the resource.
- Specified by:
createResource
in interfaceI_CmsResourceWrapper
- Overrides:
createResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjectresourcename
- the name of the resource to create (full path)type
- the type of the resource to createcontent
- the content for the new resourceproperties
- the properties for the new resource- Returns:
- the created resource or null if not handled by this resource wrapper
- Throws:
CmsException
- if something goes wrongCmsIllegalArgumentException
- if thesource
argument is null or of length 0- See Also:
-
deleteResource
public boolean deleteResource(CmsObject cms, String resourcename, CmsResource.CmsResourceDeleteMode siblingMode) throws CmsException Description copied from interface:I_CmsResourceWrapper
Deletes a resource given its name.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to delete the resource.
- Specified by:
deleteResource
in interfaceI_CmsResourceWrapper
- Overrides:
deleteResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjectresourcename
- the name of the resource to deletesiblingMode
- indicates how to handle siblings of the deleted resource- Returns:
- true if the delete action was handled by this resource wrapper otherwise false
- Throws:
CmsException
- if something goes wrong- See Also:
-
getLock
Description copied from interface:I_CmsResourceWrapper
Returns the lock for the resource.First should be a check if the resource is handled by this resource wrapper.
It is possible that the path in the resource is a virtual path and so has to be translated into a valid path existing in the VFS to get the lock for the resource.
- Specified by:
getLock
in interfaceI_CmsResourceWrapper
- Overrides:
getLock
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjectresource
- the resource to check the lock for- Returns:
- the lock state of the resource or null if the action couldn't be handled by this resource wrapper
- Throws:
CmsException
- if something goes wrong- See Also:
-
isWrappedResource
Description copied from interface:I_CmsResourceWrapper
Is called to check if the given resource is handled by this wrapper.- Parameters:
cms
- the initialized CmsObjectres
- the resource to check- Returns:
- true if the resource will be handled by the wrapper otherwise false
- See Also:
-
lockResource
public boolean lockResource(CmsObject cms, String resourcename, boolean temporary) throws CmsException Description copied from interface:I_CmsResourceWrapper
Locks a resource.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to lock the resource.
- Specified by:
lockResource
in interfaceI_CmsResourceWrapper
- Overrides:
lockResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextresourcename
- the name of the resource to lock (full path)temporary
- true if the resource should only be locked temporarily- Returns:
- true if this request could be handled by this wrapper or false if not
- Throws:
CmsException
- if something goes wrong- See Also:
-
moveResource
public boolean moveResource(CmsObject cms, String source, String destination) throws CmsException, CmsIllegalArgumentException Description copied from interface:I_CmsResourceWrapper
Moves a resource to the given destination.First should be a check if the source and/or the destination are handled by this resource wrapper.
It is possible that the path in the source or in the destination are virtual paths and so has to be translated into valid paths existing in the VFS to move the resource.
- Specified by:
moveResource
in interfaceI_CmsResourceWrapper
- Overrides:
moveResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the current cms contextsource
- the name of the resource to movedestination
- the destination resource name- Returns:
- true if the move action was handled by this resource wrapper otherwise false
- Throws:
CmsException
- if something goes wrongCmsIllegalArgumentException
- if thesource
argument is null or of length 0- See Also:
-
readFile
public CmsFile readFile(CmsObject cms, String resourcename, CmsResourceFilter filter) throws CmsException Description copied from interface:I_CmsResourceWrapper
Reads a file resource (including it's binary content) from the VFS, using the specified resource filter.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to read the resource.
- Specified by:
readFile
in interfaceI_CmsResourceWrapper
- Overrides:
readFile
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextresourcename
- the name of the resource to read (full path)filter
- the resource filter to use while reading- Returns:
- the file resource that was read or null if it could not be handled by this resource wrapper
- Throws:
CmsException
- if the file resource could not be read for any reason- See Also:
-
readResource
public CmsResource readResource(CmsObject cms, String resourcename, CmsResourceFilter filter) throws CmsException Description copied from interface:I_CmsResourceWrapper
Reads a resource from the VFS, using the specified resource filter.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to read the resource.
- Specified by:
readResource
in interfaceI_CmsResourceWrapper
- Overrides:
readResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextresourcename
- The name of the resource to read (full path)filter
- the resource filter to use while reading- Returns:
- the resource that was read or null if it could not be handled by this resource wrapper
- Throws:
CmsException
- if the resource could not be read for any reason- See Also:
-
restoreLink
Description copied from interface:I_CmsResourceWrapper
Returns the link to a existing resource in the VFS for the uri.Turns the virtual path into a real path to a resource in the VFS.
- Specified by:
restoreLink
in interfaceI_CmsResourceWrapper
- Overrides:
restoreLink
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjecturi
- the (virtual) uri to be restored- Returns:
- the uri where to find the resource in the VFS or null if the wrapper is not responsible
- See Also:
-
rewriteLink
Description copied from interface:I_CmsResourceWrapper
Returns the link how it is for the resource after using this resource wrapper.For example: in the VFS: "/sites/default/index.html" and this resource wrapper adds the extension "jsp" then link returned should be "/sites/default/index.html.jsp".
- Specified by:
rewriteLink
in interfaceI_CmsResourceWrapper
- Overrides:
rewriteLink
in classA_CmsResourceWrapper
- Parameters:
cms
- the initialized CmsObjectres
- the resource where to rewrite the path- Returns:
- the rewritten path or null if the wrapper is not responsible
- See Also:
-
unlockResource
Description copied from interface:I_CmsResourceWrapper
Unlocks a resource.First should be a check if the resourcename is handled by this resource wrapper.
It is possible that the path in the resourcename is a virtual path and so has to be translated into a valid path existing in the VFS to unlock the resource.
- Specified by:
unlockResource
in interfaceI_CmsResourceWrapper
- Overrides:
unlockResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextresourcename
- the name of the resource to unlock (full path)- Returns:
- true if this request could be handled by this wrapper of false if not
- Throws:
CmsException
- if something goes wrong- See Also:
-
wrapResource
Description copied from interface:I_CmsResourceWrapper
Changes the given resource based on the implementation of this wrapper.For example, some resource types like
CmsResourceTypeJsp
just get a.jsp
extension, while other types likeCmsResourceTypeXmlPage
are "exploded" into a folder / file structure.- Specified by:
wrapResource
in interfaceI_CmsResourceWrapper
- Overrides:
wrapResource
in classA_CmsResourceWrapper
- Parameters:
cms
- the current users OpenCms contextres
- the resource to wrap- Returns:
- a wrapped
CmsResource
object ornull
to not change the resource - See Also:
-
writeFile
Description copied from interface:I_CmsResourceWrapper
Writes a resource, including it's content.First should be a check if the resource is handled by this resource wrapper.
It is possible that the path in the resource is a virtual path and so has to be translated into a valid path existing in the VFS to write the resource.
- Specified by:
writeFile
in interfaceI_CmsResourceWrapper
- Overrides:
writeFile
in classA_CmsResourceWrapper
- Parameters:
cms
- the current cms contextresource
- the resource to apply this operation to- Returns:
- the written resource or null if the action could not be handled by this resource wrapper
- Throws:
CmsException
- if something goes wrong- See Also:
-
getUriStyleSheet
Returns the OpenCms VFS uri of the style sheet of the resource.- Parameters:
cms
- the initialized CmsObjectres
- the resource where to read the style sheet for- Returns:
- the OpenCms VFS uri of the style sheet of resource
-
getUriTemplate
Returns the OpenCms VFS uri of the template of the resource.- Parameters:
cms
- the initialized CmsObjectres
- the resource where to read the template for- Returns:
- the OpenCms VFS uri of the template of the resource
-
prepareContent
Prepare the content of a xml page before returning.Mainly adds the basic html structure and the css style sheet.
- Parameters:
content
- the origin content of the xml page elementcms
- the initialized CmsObjectxmlPage
- the xml page resourcepath
- the full path to set as the title in the html head- Returns:
- the prepared content with the added html structure
-