com.plumtree.server
Interface IPTSiteMapFolder

All Superinterfaces:
IPTLocalizable, IPTObject, IPTServerContext, IPTStorable, IPTUnknown

public interface IPTSiteMapFolder
extends IPTObject

IPTSiteMapFolder

Author:
Self-Service Communities

Method Summary
 IPTSiteMapLink CreateLink()
          Create a new link that will be in the current folder.
 IPTSiteMapFolder CreateSubfolder(java.lang.String strName, java.lang.String strDesc)
          Create a new folder that will be a child of the current folder.
 void DeleteLink(int nObjectID)
          Delete link in the current folder.
 int GetFolderDepth()
          Get the folder depth.
 java.lang.String GetGID()
          Return the GID, or genealogical ID.
 int GetParentFolderID()
          Get the current folder's parent folder id.
 java.lang.String GetPath()
          Get all the names of the parent folders above the current folder, from the root first, to the current folder's parent last.
 IPTSiteMapLink OpenLink(int nObjectID)
          Open a link in the current folder.
 IPTQueryResult QueryLinks()
          Query for all the links inside this folder that are visible to the current user.
 IPTQueryResult QuerySubfolders(boolean bGetSubSub)
          Query for all the child folders inside this folder and if the boolean is true, get all the children's children as well.
 IPTQueryResult QuerySubfoldersRecursive()
          Query for all the folders beneath this folder in the tree.
 void SetParent(IPTSiteMapFolder objParentFolder)
          Set the parent folder of this folder.
 
Methods inherited from interface com.plumtree.server.IPTObject
GetAdminFolderID, GetClassID, GetCreated, GetImageUUID, GetLastModified, GetObjectProperties, SetAdminFolderID, SetImageUUID, SetLastModified
 
Methods inherited from interface com.plumtree.server.IPTLocalizable
GetDescription, GetIsLocalized, GetLocalizedDescription, GetLocalizedDescriptions, GetLocalizedName, GetLocalizedNames, GetName, GetPrimaryLang, GetSupportsLocalization, SetDescription, SetIsLocalized, SetLocalizedDescriptions, SetLocalizedNames, SetName, SetPrimaryLang
 
Methods inherited from interface com.plumtree.server.IPTUnknown
GetInterfaces
 
Methods inherited from interface com.plumtree.server.IPTServerContext
GetAccessLevel, GetACL, GetLastModifiedBy, GetLockState, GetObjectID, GetOwnerID, GetServerContextSettings, GetSession, GetSettings, LockObject, SetLastModifiedBy, SetObjectID, SetOwnerID, SetServerContextSettings, SetSettings, UnlockObject
 
Methods inherited from interface com.plumtree.server.IPTStorable
Store
 

Method Detail

GetPath

java.lang.String GetPath()
Get all the names of the parent folders above the current folder, from the root first, to the current folder's parent last. Each name is delimited by "\\".

Returns:
String

CreateSubfolder

IPTSiteMapFolder CreateSubfolder(java.lang.String strName,
                                 java.lang.String strDesc)
Create a new folder that will be a child of the current folder. User must have edit access to the current folder.

Parameters:
strName - - name of the new folder
strDesc - - description of the new folder
Returns:
IPTSiteMapFolder - new folder object of the child that gets created

CreateLink

IPTSiteMapLink CreateLink()
Create a new link that will be in the current folder. The link does not get stored until IPTSiteMapLink.Store() is called. User must have edit access to the current folder.

Returns:
IPTSiteMapLink - set all the particulars of the new link on this object. Then call store() on this object to store the link.

OpenLink

IPTSiteMapLink OpenLink(int nObjectID)
Open a link in the current folder. User must have read access to the current folder.

Parameters:
nObjectID - - object id of the link to open
Returns:
IPTSiteMapLink - link object that can be viewed and modified. returns null if object id is not in the current folder.

DeleteLink

void DeleteLink(int nObjectID)
Delete link in the current folder. User must have edit access to the current folder.

Parameters:
nObjectID - - object if of the link to delete.

QueryLinks

IPTQueryResult QueryLinks()
Query for all the links inside this folder that are visible to the current user. For instance, if there is a document link in this folder and the user does not have at least read access to the document, it will not show up. All web links are visible for all users (provided they have at lest read access to this folder).

Returns:
IPTQueryResult - query result of links with the following PROPIDS: PT_PROPID_OBJECTID PT_PROPID_SITEMAP_GID PT_PROPID_NAME PT_PROPID_DESCRIPTION PT_PROPID_SITEMAP_LINKURL PT_PROPID_SITEMAP_LINKCLASSID PT_PROPID_SITEMAP_LINKOBJECTID PT_PROPID_SITEMAP_LINKPAGEID PT_PROPID_SITEMAP_LINKPAGENAME

QuerySubfolders

IPTQueryResult QuerySubfolders(boolean bGetSubSub)
Query for all the child folders inside this folder and if the boolean is true, get all the children's children as well. Only folder that the current user has at least read access to will be returned.

Parameters:
bGetSubSub - - boolean to determine if only children should be returned or grandchildren should be returned as well.
Returns:
IPTQueryResult - query result of folder with the following PROPIDS: PT_PROPID_ACCESSLEVEL PT_PROPID_OBJECTID PT_PROPID_NAME PT_PROPID_DESCRIPTION PT_PROPID_ISLOCALIZED PT_PROPID_FOLDER_PARENTFOLDERID PT_PROPID_FOLDER_LEVEL PT_PROPID_SITEMAP_GID

QuerySubfoldersRecursive

IPTQueryResult QuerySubfoldersRecursive()
Query for all the folders beneath this folder in the tree. This does not check for security, but only returns object ids in the query result, so it is not a security hole. This function is used within the API by IPTSiteMapFolderManager.RecursiveDelete().

Returns:
IPTQueryResult - query result of folders with the following PROPIDS: PT_PROPID_OBJECTID

SetParent

void SetParent(IPTSiteMapFolder objParentFolder)
Set the parent folder of this folder. Because a folder is created by a folder of another folder, this function implements move functionality.

Parameters:
objParentFolder - - folder will become the parent of the current folder

GetGID

java.lang.String GetGID()
Return the GID, or genealogical ID. This is the full path all the folders above this folder, with all of the object ID's of the parent folders. Each folder id is delimited by '/' and the id's appear in the order that they are in the hierarchy.

Returns:
String - '/' delimited string of all the object ids above this one

GetFolderDepth

int GetFolderDepth()
Get the folder depth. The root folder has a depth of 1.

Returns:
int - depth value

GetParentFolderID

int GetParentFolderID()
Get the current folder's parent folder id.

Returns:
int - parent folder's id