abstract persistent class %DeepSee.UserLibrary.FolderItem
extends %Persistent, %XML.Adaptor
This abstract class represents an item within a DeepSee folder.
parameter ICON = "portal/window_24.png";
URL of icon for this item
parameter ITEMTYPE;
This is the extension returned by this type from the Finder.
parameter LARGEICON = "portal/pie_chart_48.gif";
URL of large icon for this item
parameter LISTED = 1;
If true, then items of this type (class) are displayed in the user portal table.
parameter NAMESPACE = "http://www.intersystems.com/deepsee/library";
NAMESPACE specifies the XML namespace to be used when projecting the
class to XML. if NAMESPACE - "", the default namespace is used for the XML schema
is used as the namespace for his class.
parameter PUBLIC = 1;
Default value of public property for the class.
parameter XMLIGNORENULL = 1;
XMLIGNORENULL allows the programmer to override the default XML handling
of empty strings for properties of type %String. By default (XMLIGNORENULL = 0),
empty strings in the XML input are stored as $c(0) and $c(0) is written to XML
as an empty tag. A missing tag in the XML input is always stored as "" and
"" is always output to XML as no tag.
If XMLIGNORENULL is set = 1, then both missing tags in the XML and empty
strings are input as "", and both "" and $c(0) are output as empty tags
(i.e. <tag></tag>).
If XMLIGNORENULL is set = "inputonly", then both missing tags in the XML and empty
strings are input as "". Output of "" and $c(0) are for XMLIGNORENULL = 0:
$c(0) is output as an empty tag (i.e. <tag></tag>) and "" is output as no tag.
If XMLIGNORENULL = "runtime" (runtime is not case sensitive), then the behavior
of XMLIGNORENULL is determined by the format parameter of XMLExport, XMLImport
and %XML.Reader.OpenFile. The default behavior for XMLIGNORENULL="runtime is
the same as XMLIGNORENULL=0. Adding "ignorenull" to the format argument changes
the behavior to that of XMLIGNORENULL=1. "ignorenull" shoud be separated by a comma
from literal/encoded part of the format. Example values for format are "", ",ignorenull",
"literal,ignorenull" and "encoded,ignorenull".
Note that "inputonly" is equivalent to using ,ignorenull for XMLExport and not for %XML.Reader.
property createdBy
as %String(MAXLEN=255,XMLPROJECTION="attribute") [ InitialExpression = $UserName ];
Name of the user that originally created this item.
property description
as %String(MAXLEN=2000,XMLPROJECTION="attribute");
Optional description for this item.
property documentName
as %String(MAXLEN=32000,XMLPROJECTION="none") [ Calculated,Transient,ReadOnly ];
Name of this item used in document import/export and source control (including folder and type extension plus .DFI).
property folder
as %DeepSee.UserLibrary.Folder(XMLPROJECTION="none") [ ReadOnly ];
Folder this item belongs to.
property folderName
as %String(MAXLEN=255,XMLPROJECTION="attribute") [ Transient ];
Full name of the folder this item belongs to.
property fullName
as %String(MAXLEN=32000,XMLPROJECTION="none") [ Calculated,Transient ];
Full name of this item (including folder and type extension).
property keywords
as %String(MAXLEN=2000,XMLPROJECTION="attribute");
Csv-list of keywords associated with the item.
property locked
as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
If true, then users are not allowed to save modifications to this item without first unlocking it.
property name
as %String(MAXLEN=255,XMLPROJECTION="attribute") [ Required ];
Name of this item.
property owner
as %String(MAXLEN=255,XMLPROJECTION="attribute");
User name of the owner of this item.
property public
as %Boolean(XMLPROJECTION="attribute") [ SqlFieldName = ispublic,InitialExpression = ..#PUBLIC ];
If true, this this item is listed in the user portal (if the user has permission to see it).
property resource
as %String(MAXLEN=255,XMLPROJECTION="attribute");
The resource needed to view or edit this item:
If defined and the current user holds the USE privilege on this resource, then
the user may view this item.
If defined and the current user holds the WRITE privilege on this resource, then
the user may modify this item.
property shared
as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 1 ];
If true, then anyone with permission can view this item, otherwise only the owner can view this item.
property timeCreated
as %TimeStamp(XMLPROJECTION="attribute") [ InitialExpression = $ZDT($ZTS,3,,3) ];
Time that this item was originally created.
property timeModified
as %TimeStamp(XMLPROJECTION="none");
Time that this item was last saved.
property title
as %String(MAXLEN=255,XMLPROJECTION="attribute");
Option title displayed for this item.
method %CheckResource(pPrivilege As %String = "READ")
as %Boolean
Test if the current user has access to this item.
method %Dump()
as %Status
Diagnostic method: display contents of this folder item to the console.
This can be extended by subclasses.
method %GetDependencies(pList As %String)
as %Status
Return a list of all other folder items (including cubes or kpis) that this item depends upon.
Returns a list of the form:
pList(itemName) = ""
This is extended by subclasses.
method %GetIcon()
as %String
Return the icon for this item.
method %GetLargeIcon()
as %String
Return the large icon for this item.
method %GetResource(Output pOrigin As %String)
as %String
Get the resource value for this item.
Also return the name of the folder that defines the resource or "" if it originates here.
method %GetTypeName()
as %String
Return the localized type name for this item.
method %GetURL()
as %String
Return the URL for this item.
method %OnAfterImport(pNewName As %String)
as %Status
Notification that this item has just been imported.
classmethod %ParseFullName(pFullName As %String, Output pFolderName As %String, Output pName As %String, Output pExtension As %String)
as %Status
Split the given full name for this item into its parts.
method documentNameGet()
as %String
Getter method for document name that can be imported/exported
method folderNameGet()
as %String
Getter method for folder name.
method folderNameSet(%val As %String)
as %Status
Setter method for folder name.
classmethod fullNameFromDocumentName(pDocName As %String)
as %String
method fullNameGet()
as %String
Getter method for full name.
method fullNameSet(%val)
as %Status
Setter method for full name.
index (key on folder,name);