ServiceMessage.hpp File Reference
#include "rexx.h"
#include "ServiceException.hpp"
#include "SysCSStream.hpp"
#include "SysProcess.hpp"
Include dependency graph for ServiceMessage.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ServiceRegistrationData
 
class  ServiceMessage
 

Macros

#define REXX_API_PORT   10010
 

Typedefs

typedef uintptr_t SessionID
 

Enumerations

enum  ExecutionDeferral { QueueWait }
 
enum  ServerManager { QueueManager , RegistrationManager , MacroSpaceManager , APIManager }
 
enum  RegistrationType { FunctionAPI , SubcomAPI , ExitAPI }
 
enum  ServerOperation {
  ADD_MACRO , ITERATE_MACRO_DESCRIPTORS , NEXT_MACRO_DESCRIPTOR , GET_MACRO_IMAGE ,
  GET_MACRO_DESCRIPTOR , CLEAR_MACRO_SPACE , REMOVE_MACRO , QUERY_MACRO ,
  REORDER_MACRO , MACRO_SEND_NEXT , ITERATE_MACROS , NEXT_MACRO_IMAGE ,
  MACRO_RETRIEVE_NEXT , NEST_SESSION_QUEUE , CREATE_SESSION_QUEUE , CREATE_NAMED_QUEUE ,
  DELETE_SESSION_QUEUE , DELETE_NAMED_QUEUE , GET_SESSION_QUEUE_COUNT , GET_NAMED_QUEUE_COUNT ,
  ADD_TO_NAMED_QUEUE , ADD_TO_SESSION_QUEUE , PULL_FROM_NAMED_QUEUE , PULL_FROM_SESSION_QUEUE ,
  CLEAR_SESSION_QUEUE , CLEAR_NAMED_QUEUE , OPEN_NAMED_QUEUE , QUERY_NAMED_QUEUE ,
  REGISTER_LIBRARY , REGISTER_ENTRYPOINT , REGISTER_DROP , REGISTER_DROP_LIBRARY ,
  REGISTER_QUERY , REGISTER_QUERY_LIBRARY , REGISTER_LOAD_LIBRARY , UPDATE_CALLBACK ,
  SHUTDOWN_SERVER , PROCESS_CLEANUP , CONNECTION_ACTIVE , CLOSE_CONNECTION
}
 
enum  ServiceReturn {
  MESSAGE_OK , SERVER_ERROR , NO_MORE_MACROS , MACRO_ADDED ,
  MACRO_SEND_NEXT_BUFFER , MACRO_REMOVED , MACRO_SPACE_CLEARED , PREORDER_MACRO ,
  POSTORDER_MACRO , MACRO_ORDER_CHANGED , MACRO_ITERATION_STARTED , MACRO_RETURNED ,
  MACRO_IMAGE_RETURNED , MACRO_RETRIEVE_NEXT_BUFFER , MACRO_DOES_NOT_EXIST , DUPLICATE_QUEUE_NAME ,
  QUEUE_SEND_NEXT , QUEUE_PULL_NEXT , QUEUE_NO_DATA_AVAILABLE , QUEUE_ITEM_ADDED ,
  QUEUE_ITEM_PULLED , QUEUE_EMPTY , QUEUE_CREATED , QUEUE_DELETED ,
  QUEUE_EXISTS , QUEUE_OK , QUEUE_DOES_NOT_EXIST , QUEUE_IN_USE ,
  REGISTRATION_COMPLETED , DUPLICATE_REGISTRATION , CALLBACK_EXISTS , CALLBACK_DROPPED ,
  CALLBACK_NOT_FOUND , DROP_NOT_AUTHORIZED , SERVER_STOPPED , SERVER_NOT_STOPPABLE
}
 
enum  ServiceMessageParameters {
  QUEUE_FIFO , QUEUE_LIFO , QUEUE_WAIT_FOR_DATA , QUEUE_NO_WAIT ,
  OWNER_ONLY , DROP_ANY , REXXAPI_VERSION = 100
}
 

Functions

char * dupString (const char *oldString)
 

Macro Definition Documentation

◆ REXX_API_PORT

#define REXX_API_PORT   10010

Definition at line 69 of file ServiceMessage.hpp.

Typedef Documentation

◆ SessionID

Definition at line 72 of file ServiceMessage.hpp.

Enumeration Type Documentation

◆ ExecutionDeferral

Enumerator
QueueWait 

Definition at line 47 of file ServiceMessage.hpp.

◆ RegistrationType

Enumerator
FunctionAPI 
SubcomAPI 
ExitAPI 

Definition at line 84 of file ServiceMessage.hpp.

◆ ServerManager

Enumerator
QueueManager 
RegistrationManager 
MacroSpaceManager 
APIManager 

Definition at line 75 of file ServiceMessage.hpp.

◆ ServerOperation

Enumerator
ADD_MACRO 
ITERATE_MACRO_DESCRIPTORS 
NEXT_MACRO_DESCRIPTOR 
GET_MACRO_IMAGE 
GET_MACRO_DESCRIPTOR 
CLEAR_MACRO_SPACE 
REMOVE_MACRO 
QUERY_MACRO 
REORDER_MACRO 
MACRO_SEND_NEXT 
ITERATE_MACROS 
NEXT_MACRO_IMAGE 
MACRO_RETRIEVE_NEXT 
NEST_SESSION_QUEUE 
CREATE_SESSION_QUEUE 
CREATE_NAMED_QUEUE 
DELETE_SESSION_QUEUE 
DELETE_NAMED_QUEUE 
GET_SESSION_QUEUE_COUNT 
GET_NAMED_QUEUE_COUNT 
ADD_TO_NAMED_QUEUE 
ADD_TO_SESSION_QUEUE 
PULL_FROM_NAMED_QUEUE 
PULL_FROM_SESSION_QUEUE 
CLEAR_SESSION_QUEUE 
CLEAR_NAMED_QUEUE 
OPEN_NAMED_QUEUE 
QUERY_NAMED_QUEUE 
REGISTER_LIBRARY 
REGISTER_ENTRYPOINT 
REGISTER_DROP 
REGISTER_DROP_LIBRARY 
REGISTER_QUERY 
REGISTER_QUERY_LIBRARY 
REGISTER_LOAD_LIBRARY 
UPDATE_CALLBACK 
SHUTDOWN_SERVER 
PROCESS_CLEANUP 
CONNECTION_ACTIVE 
CLOSE_CONNECTION 

Definition at line 91 of file ServiceMessage.hpp.

◆ ServiceMessageParameters

Enumerator
QUEUE_FIFO 
QUEUE_LIFO 
QUEUE_WAIT_FOR_DATA 
QUEUE_NO_WAIT 
OWNER_ONLY 
DROP_ANY 
REXXAPI_VERSION 

Definition at line 192 of file ServiceMessage.hpp.

◆ ServiceReturn

Enumerator
MESSAGE_OK 
SERVER_ERROR 
NO_MORE_MACROS 
MACRO_ADDED 
MACRO_SEND_NEXT_BUFFER 
MACRO_REMOVED 
MACRO_SPACE_CLEARED 
PREORDER_MACRO 
POSTORDER_MACRO 
MACRO_ORDER_CHANGED 
MACRO_ITERATION_STARTED 
MACRO_RETURNED 
MACRO_IMAGE_RETURNED 
MACRO_RETRIEVE_NEXT_BUFFER 
MACRO_DOES_NOT_EXIST 
DUPLICATE_QUEUE_NAME 
QUEUE_SEND_NEXT 
QUEUE_PULL_NEXT 
QUEUE_NO_DATA_AVAILABLE 
QUEUE_ITEM_ADDED 
QUEUE_ITEM_PULLED 
QUEUE_EMPTY 
QUEUE_CREATED 
QUEUE_DELETED 
QUEUE_EXISTS 
QUEUE_OK 
QUEUE_DOES_NOT_EXIST 
QUEUE_IN_USE 
REGISTRATION_COMPLETED 
DUPLICATE_REGISTRATION 
CALLBACK_EXISTS 
CALLBACK_DROPPED 
CALLBACK_NOT_FOUND 
DROP_NOT_AUTHORIZED 
SERVER_STOPPED 
SERVER_NOT_STOPPABLE 

Definition at line 142 of file ServiceMessage.hpp.

Function Documentation

◆ dupString()

char* dupString ( const char *  oldString)
inline

Duplicate a C string using C++ new char[] to allocate the storage.

Parameters
oldStringThe string we're duplicating.
Returns
The duplicated string.

Definition at line 60 of file ServiceMessage.hpp.

Referenced by ServiceMessage::getArgumentName(), MacroItem::MacroItem(), RegistrationData::RegistrationData(), and DataQueue::setName().