org.opencms.db
Class CmsPublishedResource

java.lang.Object
  extended by org.opencms.db.CmsPublishedResource
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable

public class CmsPublishedResource
extends java.lang.Object
implements java.io.Serializable, java.lang.Comparable

Represents the state of a published resource *before* it got published.

This allows various subsequent tasks in the Cms app. (e.g. exporting files and folders) to identify published resources after a resource or project was published.

The values to fill this container are read from the Cms publish history database table that is written during each publishing process.

Since:
6.0.0
Version:
$Revision: 1.39 $
Author:
Thomas Weckert
See Also:
I_CmsProjectDriver.readPublishedResources(CmsDbContext, CmsUUID), Serialized Form

Nested Class Summary
static class CmsPublishedResource.CmsPublishedResourceState
          Add new resource states under consideration of the move operation.
 
Field Summary
static CmsPublishedResource.CmsPublishedResourceState STATE_MOVED_DESTINATION
          Additional state for moved resources, the (new) destination of the moved resource.
static CmsPublishedResource.CmsPublishedResourceState STATE_MOVED_SOURCE
          Additional state for moved resources, the (deleted) source of the moved resource.
 
Constructor Summary
CmsPublishedResource(CmsResource resource)
          Creates an object for published VFS resources.
CmsPublishedResource(CmsResource resource, int publishTag)
          Creates an object for published VFS resources.
CmsPublishedResource(CmsResource resource, int publishTag, CmsResourceState state)
          Creates an object for published VFS resources.
CmsPublishedResource(CmsUUID structureId, CmsUUID resourceId, int publishTag, java.lang.String rootPath, int resourceType, boolean isFolder, CmsResourceState resourceState, int siblingCount)
          Creates an object for published VFS resources.
 
Method Summary
 int compareTo(java.lang.Object obj)
           
 boolean equals(java.lang.Object obj)
           
 int getBackupTagId()
          Deprecated. Use getPublishTag() instead
 CmsResourceState getMovedState()
          Returns the resource state including move operation information.
 int getPublishTag()
          Returns the publish tag of the published resource.
 CmsUUID getResourceId()
          Returns the resource ID of the published resource.
 java.lang.String getRootPath()
          Returns the root path of the published resource.
 int getSiblingCount()
          Returns the count of siblings of the published resource.
 CmsResourceState getState()
          Returns the resource state of the published resource.
 CmsUUID getStructureId()
          Returns the structure ID of the published resource.
 int getType()
          Returns the resource type of the published resource.
 int hashCode()
           
 boolean isFile()
          Determines if this resource is a file.
 boolean isFolder()
          Checks if this resource is a folder.
 boolean isMoved()
          Returns true if the resource has been moved.
 boolean isVfsResource()
          Deprecated. no longer needed
 void setState(CmsResourceState state)
          Sets the resource state of the published resource.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

STATE_MOVED_DESTINATION

public static final CmsPublishedResource.CmsPublishedResourceState STATE_MOVED_DESTINATION
Additional state for moved resources, the (new) destination of the moved resource.


STATE_MOVED_SOURCE

public static final CmsPublishedResource.CmsPublishedResourceState STATE_MOVED_SOURCE
Additional state for moved resources, the (deleted) source of the moved resource.

Constructor Detail

CmsPublishedResource

public CmsPublishedResource(CmsResource resource)
Creates an object for published VFS resources.

Do not write objects created with this constructor to db, since the publish tag is not set.

Parameters:
resource - an CmsResource object to create a CmsPublishedResource from

CmsPublishedResource

public CmsPublishedResource(CmsResource resource,
                            int publishTag)
Creates an object for published VFS resources.

Parameters:
resource - an CmsResource object to create a CmsPublishedResource from
publishTag - the publish Tag

CmsPublishedResource

public CmsPublishedResource(CmsResource resource,
                            int publishTag,
                            CmsResourceState state)
Creates an object for published VFS resources.

Parameters:
resource - an CmsResource object to create a CmsPublishedResource from
state - the resource state
publishTag - the publish tag

CmsPublishedResource

public CmsPublishedResource(CmsUUID structureId,
                            CmsUUID resourceId,
                            int publishTag,
                            java.lang.String rootPath,
                            int resourceType,
                            boolean isFolder,
                            CmsResourceState resourceState,
                            int siblingCount)
Creates an object for published VFS resources.

Parameters:
structureId - the structure ID of the published resource
resourceId - the resource ID of the published resource
publishTag - the publish tag
rootPath - the root path of the published resource
resourceType - the type of the published resource
isFolder - indicates if the published resource is a folder or a file
resourceState - the state of the resource *before* it was published
siblingCount - count of siblings of the published resource
Method Detail

compareTo

public int compareTo(java.lang.Object obj)
Specified by:
compareTo in interface java.lang.Comparable
See Also:
Comparable.compareTo(java.lang.Object)

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object
See Also:
Object.equals(java.lang.Object)

getBackupTagId

public int getBackupTagId()
Deprecated. Use getPublishTag() instead

Returns the publish tag of the published resource.

Returns:
the publish tag of the published resource

getMovedState

public CmsResourceState getMovedState()
Returns the resource state including move operation information.

Returns:
the resource state including move operation information

getPublishTag

public int getPublishTag()
Returns the publish tag of the published resource.

Returns:
the publish tag of the published resource

getResourceId

public CmsUUID getResourceId()
Returns the resource ID of the published resource.

Returns:
the resource ID of the published resource

getRootPath

public java.lang.String getRootPath()
Returns the root path of the published resource.

Returns:
the root path of the published resource

getSiblingCount

public int getSiblingCount()
Returns the count of siblings of the published resource.

If a resource has no sibling, the total sibling count for this resource is 1, if a resource has n siblings, the sibling count is n + 1.

Returns:
the count of siblings of the published resource

getState

public CmsResourceState getState()
Returns the resource state of the published resource.

Returns:
the resource state of the published resource

getStructureId

public CmsUUID getStructureId()
Returns the structure ID of the published resource.

Returns:
the structure ID of the published resource

getType

public int getType()
Returns the resource type of the published resource.

Returns:
the resource type of the published resource

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object
See Also:
Object.hashCode()

isFile

public boolean isFile()
Determines if this resource is a file.

Returns:
true if this resource is a file, false otherwise

isFolder

public boolean isFolder()
Checks if this resource is a folder.

Returns:
true if this is is a folder

isMoved

public boolean isMoved()
Returns true if the resource has been moved.

Returns:
true if the resource has been moved

isVfsResource

public boolean isVfsResource()
Deprecated. no longer needed

Checks if this published resource represents a VFS resource.

If the published resource has no structure id, it is considered to be no VFS resource.

Returns:
true if this published resource is a VFS resource

setState

public void setState(CmsResourceState state)
Sets the resource state of the published resource.

This is sometimes required for offline search index generation.

Parameters:
state - the new state to set

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
See Also:
Object.toString()