This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications.
There is no guarantee made about either the behavior or future operation of this class.
Automatic HTML Document Generator for InterSystems classes.
The documentation for a class can consist of just plain text, or it may have embedded HTML tags.
When present, these tags are also sent to the browser displaying the class page.
Thus, it is possible to exert finer control over the presentation of class information such as
list formatting, definitions, even tables.
If HTML is used to enhance the display, the user should take care to follow the HTML standard and
insert as little markup as necessary to accomplish the job. The reason for this is that the
class documentation may be viewed on many different browsers, each of which has its own
extensions. The closer the HTML is to the standard (and to those features of the standard that all browsers support),
the better the chance that the information will appear the same on all displays.
Documatic also supports several special tags in addition to those defined by HTML:
<CLASS>Classname</CLASS> This produces a link that when clicked on will
take you to the documentation for the class named 'Classname'.
<METHOD>Method</METHOD> Produces a link that will take you to the method
called 'Method' in the current class.
<PROPERTY>Property</PROPERTY> Produces a link that will take you to the
documentation for property 'Property' in the current class.
<QUERY>Query</QUERY> Produces a link that will take you to the
documentation for the query 'Query' in the current class.
<PARAMETER>Parameter</PARAMETER> formats the method parameter 'Parameter'
in the parameter style.
<EXAMPLE>Set A="Test</EXAMPLE> Formats the text enclosed in
the <EXAMPLE></EXAMPLE> tags as a code example.
This will syntax highlight the code if possible, as well as formatting it to look pretty. You can include
the other tags 1-5 inside an <EXAMPLE> tag, however no other HTML formatting
will work inside an <EXAMPLE> tag. By default it assumes the language you
are entering the example in is COS, if you wish to specify another language
use <EXAMPLE LANGUAGE=BAS> for Basic, if you do not wish it to attempt to
color the language enter <EXAMPLE LANGUAGE=NONE>.
<link href="/AboutStreams.html"> Documentation on streams</link>
Creates a link to this document
using the stream server when coming from CSP so that this document can still be served
when you are going through a web
server or when you are going to the built in web server.
Inherited description: This parameter is used to make sure that if multiple
CSP applications are mapped to the same namespace that the CSP engine can correctly
identify which class corresponds with which URL. If 'LockCSPName' is true (the default, defined
in the CSP application) then you can only access this page if the url exactly matches
this 'CSPURL'. You can set this parameter to "" if you wish to disable this check for
this class. This check is applied for all CSP urls (cls/csp/zen).
If this page was compiled from a .csp file, then this parameter is automatically set to contain the
url of this file used for compilation.
parameter DEFAULTNS = %SYS;
parameter DOMAIN = %Utility;
Default Localization Domain
parameter EMPTYNS = -EMPTY NAMESPACE-;
parameter URL = %25CSP.Documatic.cls;
Methods
classmethod DefaultNS() as %String [ Language = objectscript ]
classmethod DefinedByClose(QHandle As %Binary) as %Status [ Language = objectscript ]
classmethod DefinedByExecute(ByRef QHandle As %Binary, type As %String, member As %String) as %Status [ Language = objectscript ]
classmethod DefinedByFetch(ByRef QHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status [ Language = objectscript ]
classmethod GetStyleSheetHTML() as %String [ Language = objectscript ]
classmethod ImplementedByClose(QHandle As %Binary) as %Status [ Language = objectscript ]
classmethod ImplementedByExecute(ByRef QHandle As %Binary, type As %String, member As %String) as %Status [ Language = objectscript ]
classmethod ImplementedByFetch(ByRef QHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status [ Language = objectscript ]
classmethod OnPage() as %Status [ Language = objectscript ]
Event handler for PAGE event: this is invoked in order to
display a csp page. This method is called to render a class document to a browser.
classmethod OnPreHTTP() as %Boolean [ Language = objectscript ]
Write out any cookies we want to hold onto.
classmethod ReferencedByClose(QHandle As %Binary) as %Status [ Language = objectscript ]
classmethod ReferencedByExecute(ByRef QHandle As %Binary, refclass As %String) as %Status [ Language = objectscript ]
classmethod ReferencedByFetch(ByRef QHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status [ Language = objectscript ]
Color the code in streamIn based on the language lang
and return the result in the stream streamOut. If lang
is 'NONE' then it will not try and syntax color the example code.
classmethod RenderDescription(thisclass As %String, desc As %String, starttag As %String, endtag As %String) [ Language = objectscript ]
Write a description string out as HTML. Apply substitutions for
documatic tags.
classmethod RenderIndexPage(%library As %String, expand As %String) as %Status [ Language = objectscript ]
Renders a %library index page. Set %library to %SYS to
show system index.
classmethod RenderNameSpaceList() as %Status [ Language = objectscript ]
Generate HTML table showing available namespaces.
classmethod RenderNameSpacePage() as %Status [ Language = objectscript ]
Generate an HTML page show information on the current namespace.
classmethod RenderPackageInfo(pTitle As %String, packagename As %String = "") as %Status [ Language = objectscript ]
Generate HTML table showing contents of the given package.
classmethod RenderPackagePage(packagename As %String) as %Status [ Language = objectscript ]
Generate an HTML page for the package packagename.
classmethod RenderStoragePage(cdef As %ClassDefinition) as %Status [ Language = objectscript ]
Generate an HTML page for the class cdef storage definition.
classmethod SwapNS(Namespace As %String) as %Boolean [ Language = objectscript ]