Excellent idea! +1
The
only suggestion I have is that would be hesitant to set the configuration
per service
constructor. The configuration is typically done globally on a per
process basis and there should
be an
option to do it globally and programmatically.
For
example adding a method to Axis.cpp:
static
void Axis::setConfig(AxisCPP_Configuration conf);
which
sets g_pConfig.
My
2c,
Carsten
-----Original Message-----
From: John Hawkins [mailto:[EMAIL PROTECTED]
Sent: Friday, May 06, 2005 6:40 AM
To: [email protected]
Subject: New client configuration API
Hi Folks,
we'd like to implement a new API for configuration of the client-side.
I've written a vrief synopsis of what is there to day and what we'd like to do..........
The environment variable is AXISCPP_DEPLOY. This variable is used by the configuration system to look up a file called axiscpp.conf. This file consists of the following:
#ClientLogPath: The path to the axis client log
#ClientWSDDFilePath: The path to the client wsdd
#XMLParser: The xml parser library
#Transport_http: The HTTP transport library
#Channel_HTTP: The HTTP transport channel library
#Channel_HTTP_SSL: The HTTP transport secure channel library
This data can be placed in a new configuration Object with the following signature (Pseudo)
AxisCPP_Configuration
{
get/set ClientLog(String);
get/set ClientWSDDFile(String);
get/set XMLParserLibrary(String);
get/set TransportLibrary(String);
get/set HTTPChannelLibrary(String);
get/set HTTPSSLChannelLibrary(String);
}
A new Web Service constructor will be created that takes in an AxisCPP_Configuration object. This constructor will be in addition to the current range of constructors that are created for each service.
The user may create a web service using the constructor. However, if they attempt to use the constructor with a configuration object more than once in any given process the configuration object will be ignored i.e. the engine can only be configured once per process.
Client WSDD files will still be required and no new API will be introduced for them.
thoughts please?
thanks,
john.
