Data Transformation Engine Services Guide

Chapter 6 – Service Usage Scenarios
26
Client Specifies Input Data, No Output Data is Sent Back
In this scenario, the CORBA Client makes a request to the CORBA Server and sends its own data along
with the request. The CORBA Server executes a map and transforms the data but does not send the
output data back to the CORBA client.
The CORBA client request contains the map name and the data to be transformed. The map’s input card
1 shall be overridden. NonStop
DTE, rather than reading the input data according to the map settings,
gets the data from CORBA Transformation Server. NonStop
DTE transforms the data and writes it out
according to the map output settings.
The following line shows the command at the prompt to run the CORBA Client (detorbclnt):
The first argument ContactToLabel.nsk is the name of the compiled map to be executed. The last
argument myContact.txt
is the file that contains the input data to be sent to the server.
In HP’s sample client C++ code, the CORBA Transformation Client makes the CORBA transform()
API call similar to the following statements:
The first parameter argv[1] contains the name of the map (ContactToLabel.nsk) from the command
line. The second parameter data
contains the data fetched from the input file (myContact.txt). The
third parameter
0 indicates that no transformed data will be sent back and the return value outData will
be an empty string.
The command string that dteorbserv forms and assigns to the lpszDataToApp field of the
EXITPARM structure is ContactToLabel.nsk -IE1 '<data string>' where <data string> is the
actual input data string.
CORBA
Client
CORBA
Transformation
Server
Map
: dteorbclnt ContactToLabel.nsk myContact.txt
DTEORBServ_var lp_DTEORBServ_obj; …
ifstream iFile(argv[2], ios::in );
char *data = new char[bufferSize];
iFile >> data;
char *outData = lp_DTEORBServ_obj ->transform(argv[1], data, 0);