gnue-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnue-dev] First draft for an API of the GNU Enterprise Application


From: Daniel E Baumann
Subject: Re: [Gnue-dev] First draft for an API of the GNU Enterprise Application Server
Date: Tue, 12 Mar 2002 15:25:33 -0600
User-agent: Mutt/1.3.27i

On Mon, Mar 11, 2002 at 10:34:37PM +0100, Reinhard Mueller wrote:
> The Appserver Whitepaper has moved to
> http://www.gnuenterprise.org/~reinhard/whitepaper and a first draft of
> the API is available at http://www.gnuenterprise.org/~reinhard/api in
> all the usual formats.

I don't really see much of a difference between your 'session' object
and what exists already in the current geas as a 'connection'
object. In fact I thought we might build a more pluggable
authentication framework ans implement 'permissions' stuff in an RBAC
way. The way I see it, the plugin loading would be very similar to how
the db drivers and gnurpc will load it's 'drivers', but this is more
of am implementation issue (look at dyn_import in
gnue/commmon/src/__init__./py). What we need to do is define factory
classe(s) and the interface those plugins will implement.

For Transaction objects I would use the current transaction.idl as that
interface is exactly the on from the ODMG standard and it includes more
than just commit() and rollback(). It also specifies
a TransactionFactory class. (I would look at the standard in odmg.txt
for the full interface). Also my notes on how transactions work and
what exceptions are thrown when using transactions objects incorrectly
is also very useful.

Wrt list objects, ODMG defines various collections (set, bag, list,
dictionary) which may not be immediately apparent to their usefulness
in regards to business objects, however I have now come to find out
they are extremely useful in doing OQL queries. If you say 'select
distinct' you will get a set object otherwise you get a bag object (a
set that allows duplicates). I think these collections need to be
implemented.

I know this is a 'rough' API and I am going to force myself to
define/refine some of the architecture/API and release something by no
later than this weekend and perhaps we can merge some ideas. I just
thought I would say a few things as you did ask for feedback ;). 


happy hacking,
Dan
-- 
Daniel E Baumann      address@hidden

And if cynics ridicule freedom, ridicule community...if ``hard nosed 
realists'' say that profit is the only ideal...just ignore them, and use 
copyleft all the same.
      -- RMS



reply via email to

[Prev in Thread] Current Thread [Next in Thread]