RPG Reserved Commands

Any command or keyword that starts with SERVICE_ is reserved.

For example, these commands are reserved:

SERVICE_LOAD

SERVICE(servicename) TRACE(option) TRACE_NAME(name)

SERVICE_SET

TRACE(*CLEAR)

SERVICE_GET

PROPERTY(property)

SERVICE_RECLAIM

 

SERVICE_UNLOAD

 

The SERVICE_LOAD command instructs the JSM service thread to load and instantiate the specified service program. Only one service class is loaded at a time. The SERVICE_LOAD command is a good place for the Java service programmer to write the code to load default values being used with the current service.

The SERVICE_SET command allows the enabling of trace file clearing.

The SERVICE_GET command allows access to the keyword/value properties from the associated service properties file. To reduce the conflict between user-defined keyword names and current and future LANSA names prefix the keyword with a global unique name. The service property keyword is case insensitive.

The service property keyword value is returned in the #JSMMSG field.

If the keyword does not exist, then a status of NOT_EXIST is returned.

The special PROPERTY values *SERVICE and *SERVICECLASS return the loaded service class name.

Example

com.acme.property.messagetype=html

#

message.001=Service successfully loaded

message.002=Service successfully unloaded

message.003=Command is not supported :

 

The SERVICE_RECLAIM command allows an explicit garbage collection to be done.

You could use this command in conjugation with the JVM -Xcompactexplicitgc otion.

The SERVICE_UNLOAD command instructs the JSM service thread to invalidate the currently loaded service program and expect to load another service. This command is optional and does not need to be called if the JSM connection is going to be closed. (The SERVICE_UNLOAD command is a good place for the Java service programmer to put code to release currently allocated resources.)