RE: OSUser status and improvements

"Brock Bulger" <[email protected]> Wed, 11 Feb 2004 11:09:39 -0600
Newsgroups gmane.comp.java.open-symphony.devel
Message-ID <[email protected]>
I ran into a similar issue with OSUser late last year and started to 
re-write it. The issues you identified were the same ones I wanted to 
correct. The other big thing I changed was removing all the code dealing 
with multiple providers. For two reasons:

1) Most of the time, I was using OSUser with the same implementation for 
each provider type (ie using Hibernate for User/AccessProvider, 
CredentialsProvider and ProfileProvider). I think this is the most common 
use case, so having it implemented as a single provider made more sense.

2) In the case where I wasn't using the same implementation for each 
provider type, I wanted more control on how changes propagated into the 
system. So I wrote my own provider that controlled how it delegated to each 
system it touched. It was nice to be able to rollback a createUser() call if 
it failed to create the user in one part of the system.

So I had a single UserManager interface where you could create your own 
implementation and within that you have full control over all calls into the 
system. This simplified the system greatly, mostly reducing OSUser to a set 
of interfaces. I also found that my unit tests were more focused on testing 
the providers than on testing the OSUser code base.

In any event I would be interested in helping make some changes. I think you 
might need to start from scratch to implement some of them though (at least 
I had to).

Brock

_________________________________________________________________
Check out the great features of the new MSN 9 Dial-up, with the MSN Dial-up 
Accelerator. http://click.atdmt.com/AVE/go/onm00200361ave/direct/01/



-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click