MqMsgque PACKAGE - the package-main is a single piece of code evaluated only once at application startup … More...
Functions | |
static OT_ProcRet | atlmqmsgque_MqMsgque_Main (OtClass_ARGS) |
Atl: → C-API Main entrypoint - start the application | |
MqMsgque PACKAGE - the package-main is a single piece of code evaluated only once at application startup …
Example from MyServer.atl
→ The package-main configure the factory and start the server.
package require lib_85 package require atlmqmsgque # package-item ::myooX::ClassN ::MyServer { SuperI ::MqContextC # service to serve all incoming requests for token "HLWO" proc myFirstService {myNs} { SendSTART $myNs SendSTR $myNs "[ReadSTR $myNs] World" SendRETURN $myNs } # define a service as link between the token "HLWO" and the callback "MyFirstService" proc serverSetup {myNs} { ServiceCreate $myNs "HLWO" myFirstService } # factory startup (constructor) proc MyServer {myNs {tmpl ""}} { MqContextC $myNs $tmpl ConfigSetServerSetup $myNs serverSetup } } # package-main MqMsgque::Main { # setup commandline arguments for later use set args [MkBufferListC::CreateLA {*}$argv] # create "MyServer" factory... and make it to the default. set fct [MqFactoryC::Default [MqFactoryC::Add ::MyServer]] # inspect commandline-argument for the "factory" to choose... and create a object set fct [MqFactoryC::GetCalledL $args] set srv [MqFactoryC::New $fct] try { MqContextC::LinkCreate $srv $args MqContextC::ProcessEvent $srv MQ_WAIT_FOREVER } on error {} { MqContextC::ErrorCatch $srv } finally { MqContextC::Exit $srv } }
Example from MyServer.atl
→ The package-main configure the factory and start the server.
package require lib_85 package require atlmqmsgque # package-item ::myooX::ClassN ::MyServer { SuperI ::MqContextC # service to serve all incoming requests for token "HLWO" proc myFirstService {myNs} { SendSTART $myNs SendSTR $myNs "[ReadSTR $myNs] World" SendRETURN $myNs } # define a service as link between the token "HLWO" and the callback "MyFirstService" proc serverSetup {myNs} { ServiceCreate $myNs "HLWO" myFirstService } # factory startup (constructor) proc MyServer {myNs {tmpl ""}} { MqContextC $myNs $tmpl ConfigSetServerSetup $myNs serverSetup } } # package-main MqMsgque::Main { # setup commandline arguments for later use set args [MkBufferListC::CreateLA {*}$argv] # create "MyServer" factory... and make it to the default. set fct [MqFactoryC::Default [MqFactoryC::Add ::MyServer]] # inspect commandline-argument for the "factory" to choose... and create a object set fct [MqFactoryC::GetCalledL $args] set srv [MqFactoryC::New $fct] try { MqContextC::LinkCreate $srv $args MqContextC::ProcessEvent $srv MQ_WAIT_FOREVER } on error {} { MqContextC::ErrorCatch $srv } finally { MqContextC::Exit $srv } }
|
static |
Atl:
→ C-API (static) MqMsgque::Main code:...
Main entrypoint - start the application
Definition at line 555 of file LibMqMsgque_atl.c.