Extent Manager Templates

 

Template Overview

The browseLib supports the management of multiple file cabinet extents. Each file cabinet is given a unique name via the browseLib.addExtent function. Named file cabinet extents can also be deleted via the browseLib.dropExtent function. The total number of Lambdas stored in all registered file cabinet extents represents the complete Lambda library available to the application at that moment in time.

When a file cabinet extent is registered to the browseLib, a copy of the Extent Manager Template Lambda is created to manage the newly added extent. This section contains documentation on the Extent Manager Template and its API.

Note:

Creating special external extent manager templates, and supplying them in the addExtent function allows the mangement of foreign file cabinet extents in a wide variety of modes and fashions.

_extentManagerTemplate.abortFocus

The abortFocus function releases the focus on the file cabinet extent (see setFocus).

Type: Function

Syntax: (browseLib._extentManagerTemplate.abortFocus)
Returns true.

_extentManagerTemplate.abortTransaction

The abortTransaction function aborts an open transaction on the file cabinet extent (see beginTransaction).

Type: Function

Syntax: (browseLib._extentManagerTemplate.abortTransaction)
Returns true.

_extentManagerTemplate.beginTransaction

The beginTransaction function opens a transaction on the file cabinet extent (see commitTransaction).

Type: Function

Syntax: (browseLib._extentManagerTemplate.beginTransaction)
Returns true.

_extentManagerTemplate.commitTransaction

The beginTransaction function commits an open transaction on the file cabinet extent (see beginTransaction).

Type: Function

Syntax: (browseLib._extentManagerTemplate.commitTransaction)
Returns true.

_extentManagerTemplate.compileByIndex

The compileByIndex function compiles the specified Lambda source. If the specified Lambda has already been compiled, the Lambda will be re-compiled if and only if the compileAlways argument is true.

Type: Function

Syntax: (browseLib._extentManagerTemplate.compileByIndex index alwaysCompile)
index The integer index of the Lambda in the file cabinet extent which is to be compiled.
alwaysCompile True iff the specified Lambda is to be re-compiled even if it has already been compiled.
Returns true.

_extentManagerTemplate.compileByKey

The compileByKey function compiles the specified Lambda source. If the specified Lambda has already been compiled, the Lambda will be re-compiled if and only if the compileAlways argument is true.

Type: Function

Syntax: (browseLib._extentManagerTemplate.compileByKey key alwaysCompile)
key The symbolic name of the Lambda in the file cabinet extent which is to be compiled.
alwaysCompile True iff the specified Lambda is to be re-compiled even if it has already been compiled.
Returns true.

_extentManagerTemplate.deleteLambdaByIndex

The deleteLambdaByIndex function deletes the specified Lambda from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteLambdaByIndex index)
index The integer index of the Lambda in the file cabinet extent which is to be deleted.
Returns true.

_extentManagerTemplate.deleteLambdaByKey

The deleteLambdaByKey function deletes the specified Lambda from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteLambdaByKey key)
key The symbolic name of the Lambda in the file cabinet extent which is to be deleted.
Returns true.

_extentManagerTemplate.deleteBinaryByIndex

The deleteBinaryByIndex function deletes the specified Lambda binary from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteBinaryByIndex index)
index The integer index of the Lambda in the file cabinet extent whose binary is to be deleted.
Returns true.

_extentManagerTemplate.deleteBinaryByKey

The deleteBinaryByKey function deletes the specified Lambda binary from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteBinaryByKey key)
key The symbolic name of the Lambda in the file cabinet extent whose binary is to be deleted.
Returns true.

_extentManagerTemplate.deleteSourceByIndex

The deleteSourceByIndex function deletes the specified Lambda source from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteSourceByIndex index)
index The integer index of the Lambda in the file cabinet extent whose source is to be deleted.
Returns true.

_extentManagerTemplate.deleteSourceByKey

The deleteSourceByKey function deletes the specified Lambda source from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.deleteSourceByKey key)
key The symbolic name of the Lambda in the file cabinet extent whose source is to be deleted.
Returns true.

_extentManagerTemplate.getNextLevel

The getNextLevel function returns an XPath directory string for all hierarchical descendents of the specified key. The returned directory string will be composed of newline delimited rows and tab delimited columns. There will be one row for each directory entry.

The first row of the directory string will always contain three columns:
   startingLine numLines totalLines

Additional new type rows (see the getTypes function) will contain three columns:
   NewType type action

Thereafter, each row will contain eight columns:
   type value size date time version symbolicKey uniqueKey

Type: Function

Syntax: (browseLib.getNextLevel key startLine lineCount options)
key The symbolic name of the Lambda in the file cabinet extent whose descendents are to be returned.
startLine The starting line, of the descendents list, to be returned.
lineCount The number of lines, of the descendents list, to be returned.
options (Optional) Any additional arguments required by the extent manager.
Returns an XPath directory string for all hierarchical descendents of the specified key.

_extentManagerTemplate.getTypes

The getTypes function returns an XPath directory type list string for all possible types in a hierarchical descendents list (see the getNextLevel function). The returned directory directory type list string will be composed of newline delimited rows and tab delimited columns. There will be one row for each type list entry.

Each row of the type list will contain two columns:  Type Features

There will be eight feature options. Features not present will have a value of off. All features present will have a value of on. The first feature listed will be the default feature. The default type will have a name of .default.. The eight valid features are as follows:
   descend Allow descent into node.
   edit Allow display in edit tab.
   popup Allow display in popup dialog.
   erase Allow this type to be erased.
   export Allow this type to be exported.
   import Allow this type to be imported.
   compile Allow this type to be compiled.
   checkin Allow this type to be checked in.

Some examples would be:
   String "edit,popup"
   Vector "descend"
   Lambda "descend,edit"

Type: Function

Syntax: (browseLib.getTypes)
Returns an XPath directory type list string.

_extentManagerTemplate.memberIndex

The memberIndex function returns the index of the specified Lambda name in the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.memberIndex key)
key The symbolic name of the Lambda to be located in the file cabinet extent.
Returns index of Lambda in file cabinet extent.

_extentManagerTemplate.refLambdaByIndex

The refLambdaByIndex function returns the specified Lambda from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refLambdaByIndex index)
index The integer index of the Lambda to be returned from the file cabinet.
Returns the Lambda.

_extentManagerTemplate.refLambdaByKey

The refLambdaByKey function returns the specified Lambda from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refLambdaByKey key)
key The symbolic name of the Lambda to be returned from the file cabinet.
Returns the Lambda.

_extentManagerTemplate.refBinaryByIndex

The refBinaryByIndex function returns the specified Lambda binary from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refBinaryByIndex index)
index The integer index of the Lambda whose binary is to be returned from the file cabinet.
Returns the Lambda's binary.

_extentManagerTemplate.refBinaryByKey

The refBinaryByKey function returns the specified Lambda binary from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refBinaryByKey key)
key The symbolic name of the Lambda whose binary is to be returned from the file cabinet.
Returns the Lambda's binary

_extentManagerTemplate.refKeyByIndex

The refKeyByIndex function returns the specified Lambda name from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refKeyByIndex index)
index The integer index of the Lambda whose name is to be returned from the file cabinet.
Returns the Lambda's name.

_extentManagerTemplate.refLength

The refLength function returns the number of Lambdas in the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refLength)
Returns the number of Lambdas.

_extentManagerTemplate.refSourceByIndex

The refSourceByIndex function returns the specified Lambda source from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refSourceByIndex index)
index The integer index of the Lambda whose source is to be returned from the file cabinet.
Returns the Lambda's source.

_extentManagerTemplate.refSourceByKey

The refSourceByKey function returns the specified Lambda source from the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.refSourceByKey key)
key The symbolic name of the Lambda whose source is to be returned from the file cabinet.
Returns the Lambda's source.

_extentManagerTemplate.setLambdaByKey

The setLambdaByKey function saves the specified Lambda into the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.setLambdaByKey key newLambda)
key The symbolic name of the Lambda who is to be saved in the file cabinet.
newLambda The Lambda who is to be saved in the file cabinet.
Returns true.

_extentManagerTemplate.setBinaryByKey

The setBinaryByKey function saves the specified Lambda's binary into the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.setBinaryByKey key newBinary)
key The symbolic name of the Lambda whose binary is to be saved in the file cabinet.
newBinary The Lambda whose binary is to be saved in the file cabinet.
Returns true.

_extentManagerTemplate.setSourceByKey

The setSourceByKey function saves the specified Lambda's source into the file cabinet extent.

Type: Function

Syntax: (browseLib._extentManagerTemplate.setSourceByKey key newSource)
key The symbolic name of the Lambda whose source is to be saved in the file cabinet.
newSource The Lambda whose source is to be saved in the file cabinet.
Returns true.