uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marshall Schor <...@schor.com>
Subject Re: Overriding parameters in UIMA-AS
Date Wed, 18 Nov 2009 11:40:21 GMT

Prokopis Prokopidis wrote:
> Hello all,
> I have a UIMA-AS service associated with an aggregate AE, and I am
> currently calling it with client code that is a modification of the
> RunRemoteAsyncAE.java. All the primitive AEs are co-located.
> Now, I would like to override the parameter of one of the primitive
> AEs (e.g. set a "useThisResource" parameter to true or false) from the
> client code, and have the CAS'es processed accordingly.
> Is this possible? I've read in the UIMA-AS doc ( that
> "Parameter overrides only work for co-located delegates". Are there
> any other docs that elaborate on how to achieve this?

Parameters in UIMA are set up as part of the initialization (or
reinitialization) of a component.  For UIMA-AS, if you have components
operating as a remote service, they can, in the general case, be
servicing multiple clients.  So, for instance, a service might be
started (with some set of parameters) and then one or more clients could
come and go, each connecting to that service (which could of course be
scaled out), and each with potentially different "parameter" needs.

When the service is started, it has its own set of descriptors; and
these can specify overrides, but the started up service can then be used
by many clients.  So there's a mismatch between this kind of life-cycle
arrangement and using parameters to override things by a particular client.

To work around this, you can insert into the CAS additional "control"
information, and then have your implementation read and act upon that. 
With this approach, having multiple clients using the same service, each
with potentially different settings for "parameters" will work.

HTH.  -Marshall
> Thanks in advance,
> Prokopis

View raw message