%Net.Remote.Gateway
Class %Net.Remote.Gateway Extends %RegisteredObject [ System = 3 ]
Parameters
CONNECT
Parameter CONNECT [ Final ] = "Y0";
Messages
EXECUTEMETHOD
Parameter EXECUTEMETHOD [ Final ] = "Y1";
GENERATECLASSES
Parameter GENERATECLASSES [ Final ] = "Y2";
GETOBJECT
Parameter GETOBJECT [ Final ] = "Y3";
DISCONNECT
Parameter DISCONNECT [ Final ] = "Y4";
EXCEPTIONRAISED
Parameter EXCEPTIONRAISED [ Final ] = "Y5";
SHUTDOWN
Parameter SHUTDOWN [ Final ] = "Y6";
OBJECTCREATED
Parameter OBJECTCREATED [ Final ] = "Y9";
GETAVAILABLECLASSES
Parameter GETAVAILABLECLASSES [ Final ] = "YC";
SUCCESS
Parameter SUCCESS [ Final ] = "YY";
JAVASERVICE
Parameter JAVASERVICE [ Final ] = "YK";
LOADCOSCLASS
Parameter LOADCOSCLASS [ Final ] = "YL";
ADDTOCURRENTCLASSPATH
Parameter ADDTOCURRENTCLASSPATH [ Final ] = "YP";
PING
Parameter PING [ Final ] = "YQ";
LOADJAVACLASS
Parameter LOADJAVACLASS [ Final ] = "YZ";
LOADJAVACLASSSYNCH
Parameter LOADJAVACLASSSYNCH [ Final ] = "YW";
GETTIMESTAMP
Parameter GETTIMESTAMP [ Final ] = "YT";
INPUTTIMEOUT
Parameter INPUTTIMEOUT = 30;
Properties
GatewayDevice
Property GatewayDevice As %String(TRUNCATE = 1);
CurrentDevice
Property CurrentDevice As %String(TRUNCATE = 1);
CurrentDeviceStack
Property CurrentDeviceStack As %String(TRUNCATE = 1) [ MultiDimensional ];
Used by GatewayLight to save current device multiple times in case of reentrancy
SequenceNumber
Property SequenceNumber As %Integer [ MultiDimensional ];
Namespace
Property Namespace As %String(TRUNCATE = 1);
ClosedProxies
Property ClosedProxies As %String [ MultiDimensional ];
Closed
Property Closed As %Boolean;
ProtocolVersion
Property ProtocolVersion As %Integer;
connectParameters
Property connectParameters As %String(MAXLEN = "") [ Transient ];
connectClassPaths
Property connectClassPaths As %ListOfDataTypes [ Transient ];
AttemptReconnect
Property AttemptReconnect As %Boolean [ InitialExpression = 0 ];
SHMConnectString
Property SHMConnectString As %String;
ProxyObjectHolder
Property ProxyObjectHolder As %Library.RawString [ MultiDimensional ];
DisableOutputRedirect
Property DisableOutputRedirect As %Boolean;
ExternalLanguage
Property ExternalLanguage As %String;
ExternalLanguageVersion
Property ExternalLanguageVersion As %String;
IsUsingSharedMemory
Property IsUsingSharedMemory As %Boolean [ ReadOnly ];
xdbcConnection
Property xdbcConnection As %Boolean [ InitialExpression = 0 ];
OutputRedirectHandler
Property OutputRedirectHandler As %String;
Methods
%OnNew
Method %OnNew() As %Status
%Connect
Method %Connect(host As %String = "127.0.0.1", port As %Integer, namespace As %String = {$namespace}, timeout As %Numeric = 5, additionalClassPaths As %ListOfDataTypes = "", sslConfiguration As %String = "", Output isUsingSharedMemory, useSharedMemoryIfPossible As %Boolean, VerifySSLHostName As %Boolean = 0) As %Status [ Final ]
Connect to an External Language Server. To connect to an External Language Server by name, please pass empty string as first argument and Gateway name as second argument. Please note if a ELS definition is secure, then connecting by ELS name is required. Connecting using host and port only works for unsecure External Language Servers.
%Reconnect
Method %Reconnect() As %Status
isAlive
Method isAlive() As %Boolean
%Ping
ClassMethod %Ping(host As %String = "127.0.0.1", port As %Integer, timeout As %Numeric = 5, reuseSocket As %Boolean = 0, ByRef gatewayDevice As %String = "", ByRef serverFullName As %String = "", sslConfiguration As %String = "") As %Status [ Final ]
Check if an External Language Server still alive.
To connect to an External Language Server by name, please pass empty string as first argument and Gateway name as second argument Please note if a ELS definition is secure, then connecting by ELS name is required. Connecting using host and port only works for unsecure External Language Servers When parameter reuseSocket is true (the default is false), the TCP socket will not be opened or closed and it is up to the caller must ensure that the device is already opened.
%Disconnect
Method %Disconnect() As %Status [ Final ]
Close the connection
%OnClose
Method %OnClose() As %Status [ Private, ProcedureBlock = 1 ]
This callback method is invoked by the %Close method to provide notification that the current object is being closed.
The return value of this method is ignored.
%Shutdown
Method %Shutdown(timeout = 0) As %Status [ Final ]
Shut down the Gateway
sendOneShutdown
Method sendOneShutdown(soft = 0) As %Status [ Final ]
%Import
Method %Import(javaClass As %String, ByRef javaClasses As %ListOfDataTypes, additionalClassPaths As %ListOfDataTypes = "", exclusions As %ListOfDataTypes = "", verbose As %Boolean = 0) As %Status [ Final ]
Creates all necessary proxy classes
%RecastClass
ClassMethod %RecastClass(classname, verbose)
%LoadCOSClass
ClassMethod %LoadCOSClass(verbose As %Boolean = 0, currentDevice As %String = "", gatewayDevice As %String = "") As %Status [ Final ]
%AddToCurrentClassPath
Method %AddToCurrentClassPath(paths As %ListOfDataTypes, useProcessLoader As %Boolean = 0) As %Status [ Final ]
Add to current classpath
convertClassPaths
ClassMethod convertClassPaths(thelist, paths)
%ClassForName
Method %ClassForName(className As %String) As %Status [ Final ]
Calls Class.forName
%ClassForNameSynch
Method %ClassForNameSynch(className As %String) As %Status [ Final ]
%GetAllClasses
Method %GetAllClasses(jarFileName As %String, ByRef allClasses As %ListOfDataTypes, implements As %String = "") As %Status
Use the implements parameter to limit the classes to those implementing a specific interface The interface must be declared either in isc-gateway, or jarFileName JAR file
%GetTimestamp
Method %GetTimestamp(msgid As %Integer)
%GetException
Method %GetException() As %String [ Private ]
%SetStatus
ClassMethod %SetStatus(exception As %Exception.StatusException) As %Status
%RegUpdate
Method %RegUpdate()
%ExpressImport
ClassMethod %ExpressImport(name As %String, port As %Integer, host As %String = "127.0.0.1", silent As %Boolean = 0, additionalClassPaths As %ListOfDataTypes = "", exclusions As %ListOfDataTypes = "") As %ListOfDataTypes [ Final ]
Generate proxy classes for an External language module. To connect to an External Language Server by name, please pass empty string as first argument and Gateway name as second argument. Please note if a ELS definition is secure, then connecting by ELS name is required. Connecting using host and port only works for unsecure External Language Servers.
%RegisterSuperServer
ClassMethod %RegisterSuperServer(name As %String, host As %String, port As %Integer = 0) [ Final ]
%DeregisterSuperServer
ClassMethod %DeregisterSuperServer(name As %String) [ Final ]
%FindServerByHostPort
ClassMethod %FindServerByHostPort(host As %String, port As %Integer) As %String [ Final ]
%TerminateSuperServer
ClassMethod %TerminateSuperServer(name As %String, namespace As %String, deregister As %Boolean) [ Final ]
%TerminateAllSuperServers
ClassMethod %TerminateAllSuperServers() [ Final ]
%RemoteService
ClassMethod %RemoteService(host As %String, port As %Integer, serviceName As %String, arguments As %String, additionalClassPaths As %ListOfDataTypes = "") As %String [ Final ]
%ServiceRequest
Method %ServiceRequest(serviceName As %String, arguments As %String, ByRef response As %String) As %Status [ Final ]
%freeTCPDevice
ClassMethod %freeTCPDevice(pRequest As %Integer = 55555, pMaxTries As %Integer = 1000) As %String [ Internal ]
%LostConnectionCleanup
Method %LostConnectionCleanup() As %Boolean
Used to check if still connected to the gateway and mark as closed if no TCP connection
%PushGatewayDevice
Method %PushGatewayDevice()
%PopGatewayDevice
Method %PopGatewayDevice()
%ClearGatewayDevice
Method %ClearGatewayDevice()
%IsUsingSharedMemory
Method %IsUsingSharedMemory() As %Boolean
Returns true if the connection is open and connected over shared memory, false otherwise.
%GetContextGateway
ClassMethod %GetContextGateway() As %Net.Remote.Gateway
%CreateReverseGateway
ClassMethod %CreateReverseGateway(device, protocol) As %Net.Remote.Gateway
%RetainObject
ClassMethod %RetainObject(oref, gateway = "")
%ReleaseObjects
ClassMethod %ReleaseObjects(orefs) As %String
%SubscriptSortOrder
ClassMethod %SubscriptSortOrder(global, sub1, sub2) As %String
%Benchmark
ClassMethod %Benchmark(options As %String = "", server As %String = "", ByRef output) As %Numeric
%BenchmarkOneJob
ClassMethod %BenchmarkOneJob(index = "", iterations = 1000000, server, language = "java", type = "shm", action = "echo", mode = "zobjexport")
%CallUtilityMethod
Method %CallUtilityMethod(methodname, args...)
ExternalLanguageGet
Method ExternalLanguageGet()
ExternalLanguageVersionGet
Method ExternalLanguageVersionGet()
getProductVersion
Method getProductVersion()
%RedirectOutput
ClassMethod %RedirectOutput(data As %String = "") As %Integer
%WriteOutput
ClassMethod %WriteOutput(data1 As %String = "", data2 As %String = "")
%SetOutputRedirectHandler
Method %SetOutputRedirectHandler(classname, methodname)
%DumpProxyMaps
Method %DumpProxyMaps()
%FlushClosedIRISObjects
Method %FlushClosedIRISObjects() As %Boolean