Class Helix.Core.Server
Class methods
ClientEditData( string, function ) -> bool, string
Allow Lua writer using RunCommand to send an input form to the User for editing.
Returns:
bool - return 1 on success, otherwise 0
string - with edited content of the form if success, with unedited content of the form containing an error message on failure
Example
local ret, formin = Helix.Core.Server.ClientEditData( formout, Validator ) if ret then Helix.Core.Server.ClientOutputText( "Form-in is:\n" ) Helix.Core.Server.ClientOutputText( formin ) Helix.Core.Server.ClientOutputText( ".... Done\n" ) else Helix.Core.Server.ClientOutputText( "Client Edit error " .. formin .. "\n") end
ClientOutputText(string)
Used in an Extension-implemented custom command to send output during the execution of the command, whereas SetClientMsg(string) sets the message to be sent to the user after the extension completes its execution.
GetArchDirFileName(string) -> string
Gets the path to a file under the server extension archive directory.
Returns the path to the file in the server extension’s unpacked archive directory. This path is relative to the server.extensions.dir configurable.
GetArchiveFileInfo() -> string, string, string, number, string
Get information about the current file in the Archive() event
Returns:
string | string | string | number | string |
---|---|---|---|---|
name of the file |
a string that represents the revision number of the file. For example, "1.9876.1" where:
|
file type | size of file in bytes | digest of file |
GetDataDirFileName(string) -> string
Gets the path to a file under the server extension data directory.
Returns:
Passed a file name argument, returns the path in which the server extension will store the files it creates.
GetGlobalConfigData() -> table
Gets the global config table.
Returns:
A table of the values the user provided when filling out the global server extension config.
GetInstanceConfigData() -> table
Gets the instance config table.
Returns:
A table of field names and sample values used during the instance configuration of an server extension. This should be information the server extension needs for this instance of itself. It is the responsibility of the server extension to validate and format this data. Field names must not contain whitespace.
GetVar(string) -> string
Returns:
The value of the requested server extension session variable. See Server extension session variables.
GlobalConfigFields() -> table
Gets the global configuration setup.
Returns:
A table of field names and sample values used during the global configuration of a server extension. This should be information the server extension needs for all instances of itself. It is the responsibility of the server extension to validate and format this data. Field names must not contain whitespace.
InstanceConfigFields() -> table
Gets the instance configuration setup
Returns:
A table of field names and sample values used during configuration of an instance of a server extension. This should be information the server extension needs to perform specific actions, such as the list of file paths to monitor. It is the responsibility of the server extension to validate and format this data. Field names must not contain whitespace.
InstanceConfigEvents() -> table
Server event registration. See Server extension callbacks.
Returns:
A table of events and parameters. The parameters are likely dependent on the data retrieved from the instance configuration.
ReportError(number, string)
For Extension-implemented custom commands, returns the string to the client and returns an exit code.
Number Argument | Descriptive field prepended with -s global command option | Exit Code |
---|---|---|
Helix.Core.P4API.ErrorSeverity.E_WARN
|
warning | 0
|
Helix.Core.P4API.ErrorSeverity.E_ERROR
|
error | 0
|
Helix.Core.P4API.ErrorSeverity.E_FATAL
|
error | 1
|
For Extension-implemented custom commands, ClientOutputText(string) can also return strings to the client.
log(table)
Accepts a table of user data and appends it to the log.json file in the server extension data directory as line-delimited JSON.
SetArchiveFileSys() -> FileSys
For archive server extensions, give the server a FileSys instance to use for accessing the archive content.
Returns:
The FileSys object.
SetClientMsg(string)
Sets the message to be sent to the user after the extension completes its execution, whereas ClientOutputText
is used in a Extension-implemented custom command to send output during the execution of the command.