+1. Excellent design
BTW, what is the rationale for “the
engine can only be configured once per process”?
Also, in addition to the current settings supported
by the conf file, there has been some Jira issues raised for setting proxy,
username/password etc. in the conf file, so hopefully they too will be
supported by AxisCPP_Configuration
Also it looks to me as if “AxisCPP_Configuration” is designed for client side –
what about the server side? Could server side use the same? (I think we could
possibly extend it – may be we should have a class hierarchy here, where
the base would have common conf items and derived ounces have server/client
specific stuff. E.g. XML parser setting is common, HTTP channel is not)
AxisCPPConfiguration
|
|
/ \
/ \
AxisCPPClientConfiguration AxisCPPServerConfiguration
Thanks,
Samisa…
-----Original Message-----
From: John Hawkins
[mailto:[EMAIL PROTECTED]]
Sent: Friday, May 06, 2005 7:40 PM
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.