uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Richard Eckart de Castilho <eck...@ukp.informatik.tu-darmstadt.de>
Subject Re: Obtaining the AnalysisEngine object from a primitive analysis component
Date Wed, 20 Feb 2013 20:42:07 GMT

there shouldn't be any reason that an AE need to access its specified. Relevant information
should be accessible via the UimaContext (parameters and resources). I'd guess there is a
good chance that you are trying to solve a problem in an unsupported way that could be solved
better otherwise. It seems you do not tell us about your original problem, but rather about
a problem you ran into while trying to fix your original problem. What is the original problem?


-- Richard

Am 20.02.2013 um 21:35 schrieb Shahim Essaid <shahim@essaid.com>:

> I looked a little closer at the code and it appears that this is not
> possible in the current implementation.
> So a related question would be the following. Is there any harm in
> passing _and holding_ a reference from parent resources to child
> resources, and then eventually to an analysis component? This could be
> done in the initialization map and then nullified in the destroy call.
> I can easily add this to the code but I am not sure about any
> consequences of doing this. Would this cause any memory leaks or any
> other issues? Is the destroy method call guaranteed if any exceptions
> are thrown? I'm looking through the code to find these answers but a
> confirmation from the UIMA developers would be very appreciated.
> Best,
> Shahim
> On Tue, Feb 19, 2013 at 2:31 PM, Shahim Essaid <shahim@essaid.com> wrote:
>> Hi all,
>> I have a use case where I would like be able to get the AnalysisEngine
>> object from an AnalysisComponent object at runtime in order to get to
>> the:
>>  private ResourceCreationSpecifier mDescription; (or the aggregate's
>> corresponding field.)
>> in the PrimitiveAnalysisEngine_impl class.
>> This will help my use case in two different ways. First, it will give
>> me a single unique object for the current engine regardless how many
>> component instances are created from my class and the object will be
>> specific to the current engine in case my component class is
>> instantiated in multiple engines. Second, I can get full access to the
>> specifier that was used to create the engine.
>> Is this possible?  I tried to look through the various object
>> references while debugging but couldn't figure out how to get to the
>> analysis engine object. I was able to get hold of the
>> ConfigurationManager object for the engine (which appears to be a
>> single object per engine) but not the engine object itself. I know I
>> can coordinate this from the application side but I would like to be
>> able to do this by simply including the component in an engine without
>> any other changes.
>> Thanks,
>> Shahim

Richard Eckart de Castilho
Technical Lead
Ubiquitous Knowledge Processing Lab (UKP-TUD) 
FB 20 Computer Science Department      
Technische Universit├Ąt Darmstadt 
Hochschulstr. 10, D-64289 Darmstadt, Germany 
phone [+49] (0)6151 16-7477, fax -5455, room S2/02/B117
Web Research at TU Darmstadt (WeRC) www.werc.tu-darmstadt.de

View raw message