org.opencms.workplace.explorer
Class CmsResourceUtil

java.lang.Object
  extended by org.opencms.workplace.explorer.CmsResourceUtil

public final class CmsResourceUtil
extends java.lang.Object

Provides CmsResource utility functions.

This class provides in java all resource information used by the explorer view, mostly generated in javascript (see explorer.js)

Since:
6.0.0
Version:
$Revision: 1.16 $
Author:
Michael Moossen

Nested Class Summary
static class CmsResourceUtil.CmsResourceProjectState
          Enumeration class for defining the resource project state.
 
Field Summary
static int LAYOUTSTYLE_AFTEREXPIRE
          Layout style for resources after expire date.
static int LAYOUTSTYLE_BEFORERELEASE
          Layout style for resources before release date.
static int LAYOUTSTYLE_INRANGE
          Layout style for resources after release date and before expire date.
static org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_CURRENT
          Constant that signalizes that all path operations will be based on the current site.
static org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_MATCHING
          Constant that signalizes that all path operations will be based on the best matching site.
static org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_ROOT
          Constant that signalizes that all path operations will be based on the root path.
static CmsResourceUtil.CmsResourceProjectState STATE_LOCKED_FOR_PUBLISHING
          Constant for the project state locked for publishing.
static CmsResourceUtil.CmsResourceProjectState STATE_MODIFIED_IN_CURRENT_PROJECT
          Constant for the project state locked in current project.
static CmsResourceUtil.CmsResourceProjectState STATE_MODIFIED_IN_OTHER_PROJECT
          Constant for the project state locked in other project.
 
Constructor Summary
CmsResourceUtil(CmsObject cms)
          Creates a new CmsResourceUtil object.
CmsResourceUtil(CmsObject cms, CmsResource resource)
          Creates a new CmsResourceUtil object.
CmsResourceUtil(CmsResource resource)
          Creates a new CmsResourceUtil object.
 
Method Summary
 int getAbbrevLength()
          Returns the path abbreviation length.
 CmsObject getCms()
          Returns the cms context.
 java.lang.String getDateExpired()
          Returns the formatted date of expiration.
 java.lang.String getDateReleased()
          Returns the formatted date of release.
 java.lang.String getFullPath()
          Returns the path of the current resource, taking into account just the site mode.
 java.lang.String getIconPathExplorer()
          Returns the resource icon path displayed in the explorer view for the given resource.
 java.lang.String getIconPathLock()
          Returns the lock icon path for the given resource.
 java.lang.String getIconPathProjectState()
          Returns the project state icon path for the given resource.
 java.lang.String getIconPathResourceType()
          Returns the resource type icon path for the given resource.
 int getLinkType()
          Returns an integer representation for the link type.
 CmsLock getLock()
          Returns the the lock for the given resource.
 java.lang.String getLockedByName()
          Returns the user name who owns the lock for the given resource.
 CmsUUID getLockedInProjectId()
          Returns the id of the project in which the given resource is locked.
 java.lang.String getLockedInProjectName()
          Returns the project name that locked the current resource's.
 int getLockState()
          Returns the lock state of the current resource.
 java.lang.String getNavText()
          Returns the navtext of a resource.
 java.lang.String getPath()
          Returns the path of the current resource.
 CmsPermissionSet getPermissionSet()
          Returns the permission set for the given resource.
 java.lang.String getPermissionString()
          Returns the permissions string for the given resource.
 CmsUUID getProjectId()
          Returns the id of the project which the resource belongs to.
 CmsResourceUtil.CmsResourceProjectState getProjectState()
          Returns the project state of the given resource.
 CmsProject getReferenceProject()
          Returns the project to use to check project state.
 java.lang.String getRelativeTo()
          Returns the 'relative to' path.
 CmsResource getResource()
          Returns the resource.
 I_CmsResourceType getResourceType()
          Returns the resource type for the given resource.
 int getResourceTypeId()
          Returns the resource type id for the given resource.
 java.lang.String getResourceTypeName()
          Returns the resource type name for the given resource.
 java.lang.String getSite()
          Returns the site of the current resources, taking into account the set site mode.
 org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode getSiteMode()
          Returns the site mode.
 java.lang.String getSiteTitle()
          Returns the title of the site.
 java.lang.String getSizeString()
          Returns the size of the given resource as a String.
 char getStateAbbreviation()
          Returns resource state abbreviation.
 java.lang.String getStateName()
          Returns the state name for a resource.
 java.lang.String getStyleClassName()
          Returns the style class to use for the given resource.
 java.lang.String getStyleSiblings()
          Returns additional style sheets for the resource type icon depending on siblings.
 java.lang.String getSystemLockInfo(boolean forExplorer)
          Returns the system lock information tooltip for the explorer view.
 java.lang.String getTimeWindowLayoutStyle()
          Returns additional style sheets depending on publication constraints.
 int getTimeWindowLayoutType()
          Returns the layout style for the current time window state.
 java.lang.String getTitle()
          Returns the title of a resource.
 java.lang.String getUserCreated()
          Returns the name of the user who created the given resource.
 java.lang.String getUserLastModified()
          Returns the name of the user who last modified the given resource.
 boolean isEditable()
          Returns true if the given resource is editable by the current user.
 boolean isInsideProject()
          Returns true if the given resource is in the reference project.
 boolean isReleasedAndNotExpired()
          Returns true if the stored resource has been released and has not expired.
 void setAbbrevLength(int abbrevLength)
          Sets the path abbreviation length.
 void setCms(CmsObject cms)
          Sets the cms context.
 void setReferenceProject(CmsProject project)
          Sets the project to use to check project state.
 void setRelativeTo(java.lang.String relativeTo)
          Sets the 'relative to' path.
 void setResource(CmsResource resource)
          Sets the resource.
 void setSiteMode(org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode siteMode)
          Sets the site mode.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LAYOUTSTYLE_AFTEREXPIRE

public static final int LAYOUTSTYLE_AFTEREXPIRE
Layout style for resources after expire date.

See Also:
Constant Field Values

LAYOUTSTYLE_BEFORERELEASE

public static final int LAYOUTSTYLE_BEFORERELEASE
Layout style for resources before release date.

See Also:
Constant Field Values

LAYOUTSTYLE_INRANGE

public static final int LAYOUTSTYLE_INRANGE
Layout style for resources after release date and before expire date.

See Also:
Constant Field Values

SITE_MODE_CURRENT

public static final org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_CURRENT
Constant that signalizes that all path operations will be based on the current site.


SITE_MODE_MATCHING

public static final org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_MATCHING
Constant that signalizes that all path operations will be based on the best matching site.


SITE_MODE_ROOT

public static final org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode SITE_MODE_ROOT
Constant that signalizes that all path operations will be based on the root path.


STATE_LOCKED_FOR_PUBLISHING

public static final CmsResourceUtil.CmsResourceProjectState STATE_LOCKED_FOR_PUBLISHING
Constant for the project state locked for publishing.


STATE_MODIFIED_IN_CURRENT_PROJECT

public static final CmsResourceUtil.CmsResourceProjectState STATE_MODIFIED_IN_CURRENT_PROJECT
Constant for the project state locked in current project.


STATE_MODIFIED_IN_OTHER_PROJECT

public static final CmsResourceUtil.CmsResourceProjectState STATE_MODIFIED_IN_OTHER_PROJECT
Constant for the project state locked in other project.

Constructor Detail

CmsResourceUtil

public CmsResourceUtil(CmsObject cms)
Creates a new CmsResourceUtil object.

Parameters:
cms - the cms context

CmsResourceUtil

public CmsResourceUtil(CmsObject cms,
                       CmsResource resource)
Creates a new CmsResourceUtil object.

Parameters:
cms - the cms context
resource - the resource

CmsResourceUtil

public CmsResourceUtil(CmsResource resource)
Creates a new CmsResourceUtil object.

Parameters:
resource - the resource
Method Detail

getAbbrevLength

public int getAbbrevLength()
Returns the path abbreviation length.

If greater than zero, the path will be formatted to this number of chars.

This only affects the generation of the path for the current resource.

Returns:
the path abbreviation Length

getCms

public CmsObject getCms()
Returns the cms context.

Returns:
the cms context

getDateExpired

public java.lang.String getDateExpired()
Returns the formatted date of expiration.

Returns:
the formatted date of expiration

getDateReleased

public java.lang.String getDateReleased()
Returns the formatted date of release.

Returns:
the formatted date of release

getFullPath

public java.lang.String getFullPath()
Returns the path of the current resource, taking into account just the site mode.

Returns:
the full path

getIconPathExplorer

public java.lang.String getIconPathExplorer()
Returns the resource icon path displayed in the explorer view for the given resource.

Relative to /system/workplace/resources/.

If the resource has no sibling it is the same as getIconPathResourceType().

Returns:
the resource icon path displayed in the explorer view for the given resource
See Also:
getStyleSiblings()

getIconPathLock

public java.lang.String getIconPathLock()
Returns the lock icon path for the given resource.

Relative to /system/workplace/resources/.

Returns explorer/project_none.gif if request context is null.

Returns:
the lock icon path for the given resource

getIconPathProjectState

public java.lang.String getIconPathProjectState()
Returns the project state icon path for the given resource.

Relative to /system/workplace/resources/.

Returns:
the project state icon path for the given resource

getIconPathResourceType

public java.lang.String getIconPathResourceType()
Returns the resource type icon path for the given resource.

Relative to /system/workplace/resources/.

Returns:
the resource type icon path for the given resource

getLinkType

public int getLinkType()
Returns an integer representation for the link type.

Returns:
an integer representation for the link type

getLock

public CmsLock getLock()
Returns the the lock for the given resource.

Returns:
the lock the given resource

getLockedByName

public java.lang.String getLockedByName()
Returns the user name who owns the lock for the given resource.

Returns:
the user name who owns the lock for the given resource

getLockedInProjectId

public CmsUUID getLockedInProjectId()
Returns the id of the project in which the given resource is locked.

Returns:
the id of the project in which the given resource is locked

getLockedInProjectName

public java.lang.String getLockedInProjectName()
Returns the project name that locked the current resource's.

Returns:
the the project name that locked the current resource's

getLockState

public int getLockState()
Returns the lock state of the current resource.

Returns:
the lock state of the current resource

getNavText

public java.lang.String getNavText()
Returns the navtext of a resource.

Returns:
the navtext for that resource

getPath

public java.lang.String getPath()
Returns the path of the current resource.

Taking into account following settings:

Returns:
the path

getPermissionSet

public CmsPermissionSet getPermissionSet()
Returns the permission set for the given resource.

Returns:
the permission set for the given resource

getPermissionString

public java.lang.String getPermissionString()
Returns the permissions string for the given resource.

Returns:
the permissions string for the given resource

getProjectId

public CmsUUID getProjectId()
Returns the id of the project which the resource belongs to.

Returns:
the id of the project which the resource belongs to

getProjectState

public CmsResourceUtil.CmsResourceProjectState getProjectState()
Returns the project state of the given resource.

Returns:
the project state of the given resource

getReferenceProject

public CmsProject getReferenceProject()
Returns the project to use to check project state.

Returns:
the project to use to check project state

getRelativeTo

public java.lang.String getRelativeTo()
Returns the 'relative to' path.

This only affects the generation of the path for the current resource.

Returns:
the 'relative to' path

getResource

public CmsResource getResource()
Returns the resource.

Returns:
the resource

getResourceType

public I_CmsResourceType getResourceType()
Returns the resource type for the given resource.

Returns:
the resource type for the given resource

getResourceTypeId

public int getResourceTypeId()
Returns the resource type id for the given resource.

Returns:
the resource type id for the given resource

getResourceTypeName

public java.lang.String getResourceTypeName()
Returns the resource type name for the given resource.

Returns:
the resource type name for the given resource

getSite

public java.lang.String getSite()
Returns the site of the current resources, taking into account the set site mode.

Returns:
the site path

getSiteMode

public org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode getSiteMode()
Returns the site mode.

This only affects the generation of the path for the current resource.

Returns:
the site mode

getSiteTitle

public java.lang.String getSiteTitle()
Returns the title of the site.

Returns:
the title of the site

getSizeString

public java.lang.String getSizeString()
Returns the size of the given resource as a String.

For directories it returns SIZE_DIR.

Returns:
the size of the given resource as a String

getStateAbbreviation

public char getStateAbbreviation()
Returns resource state abbreviation.

Returns:
resource state abbreviation

getStateName

public java.lang.String getStateName()
Returns the state name for a resource.

Uses default locale if request context is null.

Returns:
the state name for that resource

getStyleClassName

public java.lang.String getStyleClassName()
Returns the style class to use for the given resource.

Returns:
style class name
See Also:
CmsListExplorerColumn.getExplorerStyleDef()

getStyleSiblings

public java.lang.String getStyleSiblings()
Returns additional style sheets for the resource type icon depending on siblings.

That is, depending on CmsResource.getSiblingCount() Use it with the getIconPathExplorer() method.

Returns:
additional style sheets depending on siblings

getSystemLockInfo

public java.lang.String getSystemLockInfo(boolean forExplorer)
Returns the system lock information tooltip for the explorer view.

Parameters:
forExplorer - if the tool tip should be generated for the explorer view
Returns:
the system lock information tooltip

getTimeWindowLayoutStyle

public java.lang.String getTimeWindowLayoutStyle()
Returns additional style sheets depending on publication constraints.

That is, depending on CmsResource.getDateReleased() and CmsResource.getDateExpired().

Returns:
additional style sheets depending on publication constraints
See Also:
getTimeWindowLayoutType()

getTimeWindowLayoutType

public int getTimeWindowLayoutType()
Returns the layout style for the current time window state.

Returns:
the layout style for the current time window state
See Also:
getTimeWindowLayoutStyle()

getTitle

public java.lang.String getTitle()
Returns the title of a resource.

Returns:
the title for that resource

getUserCreated

public java.lang.String getUserCreated()
Returns the name of the user who created the given resource.

Returns:
the name of the user who created the given resource

getUserLastModified

public java.lang.String getUserLastModified()
Returns the name of the user who last modified the given resource.

Returns:
the name of the user who last modified the given resource

isEditable

public boolean isEditable()
Returns true if the given resource is editable by the current user.

Returns false if no request context is set.

Returns:
true if the given resource is editable by the current user

isInsideProject

public boolean isInsideProject()
Returns true if the given resource is in the reference project.

Returns false if the request context is null.

Returns:
true if the given resource is in the reference project
See Also:
getReferenceProject()

isReleasedAndNotExpired

public boolean isReleasedAndNotExpired()
Returns true if the stored resource has been released and has not expired.

If no request context is available, the current time is used for the validation check.

Returns:
true if the stored resource has been released and has not expired
See Also:
CmsResource.isReleasedAndNotExpired(long)

setAbbrevLength

public void setAbbrevLength(int abbrevLength)
Sets the path abbreviation length.

If greater than zero, the path will be formatted to this number of chars.

This only affects the generation of the path for the current resource.

Parameters:
abbrevLength - the path abbreviation length to set

setCms

public void setCms(CmsObject cms)
Sets the cms context.

Parameters:
cms - the cms context to set

setReferenceProject

public void setReferenceProject(CmsProject project)
Sets the project to use to check project state.

Parameters:
project - the project to set

setRelativeTo

public void setRelativeTo(java.lang.String relativeTo)
Sets the 'relative to' path.

This only affects the generation of the path for the current resource.

Parameters:
relativeTo - the 'relative to' path to set

setResource

public void setResource(CmsResource resource)
Sets the resource.

Parameters:
resource - the resource to set

setSiteMode

public void setSiteMode(org.opencms.workplace.explorer.CmsResourceUtil.CmsResourceUtilSiteMode siteMode)
Sets the site mode.

This only affects the generation of the path for the current resource.

Parameters:
siteMode - the site mode to set