directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Zoerner <ste...@labeo.de>
Subject [ApacheDS] Stored Procedures: One language id per StoredProcEngineConfig and StoredProcEngine, Stateful vs. Stateless
Date Mon, 05 Nov 2007 21:05:30 GMT
Hi all!

The current interface StoredProcEngineConfig from 
org.apache.directory.server.core.sp

basically looks like this:

---

interface StoredProcEngineConfig
{
     /**
      * Returns the type of the associated {@link StoredProcEngine}.
      */
     Class<? extends StoredProcEngine> getStoredProcEngineType();


     /**
      * Returns the unique language identifier of the {@link 
StoredProcEngine}.
      */
     String getStoredProcLangId();
}

---

The interface StoredProcEngine has only one SPLangId, as well.

This makes it hard to provide a StoredProcEngine implementation for more 
than one language. I have started a BsfStoredProcEngine, and ran into 
two problems:

* My StoredProcEngine should be able to support several scripting 
languages, but I can only return one of them as SPLangId
* The only way to create my class currently is the default constructor. 
Thus I am not able to use Spring to configure my StoredProcEngine

I would like to modify the interfaces in order to support 
StoredProcEngines with more than one language, and to configure them 
with properties.

Before I can propose concrete changed, I have a question (probably to Ersin)

The StoredProcEngine life cycle seems to presume that there is an 
instance for each stored procedure. How often are the methods
* setSPUnitEntry
* invokeProcedure
presumed to be called?

Currently, the implementation within StoredProcExecutionManager looks 
like a new StoredProcEngine is created for each call. The methods will 
be called one after the other. Is a StoredProcEngine supposed to be 
stateful or stateless?

Thanks in advance,
     Stefan



Mime
View raw message