On Aug 14, 2009, at 3:23 PM, Adrian Crum wrote:
--- On Tue, 8/11/09, David E Jones <d...@me.com> wrote:
I mentioned a little bit before about centralizing the
interfaces into a single component that does not depend on
the other components and that other components can depend
on. These will become the basic set of tools available for
application logic build on the OFBiz framework.
The general concepts I'm trying to support, and
unfortunately these conflict with changing things in a
backward-compatible way, are:
1. create interfaces and backing objects that can be used
in all tools to represent the context in which the artifacts
execute, and have the framework artifacts themselves use
this context too
I started doing this in the entity component in the branch I
created. Based on your branch, I extracted some interfaces and tried
to move them to the api folder. The problem is, the interfaces
reference a lot of classes in the entity component. In order to
avoid circular-dependency, I had to create factories in api that
create the classes in the entity component. Things started getting
REALLY messy.
I've reached the conclusion that it would be simpler and cleaner to
just move the commonly used components (entity, security, and
service) into a common folder (api), and then extract only the
interfaces that really need extracting.
What do you think?
Simpler yes (for the framework implementation at least, not for the
code that uses it), cleaner... I don't know.
Please keep in mind that the branch I've been working on is not
complete, and eventually there will be no dependencies from the
context component code to the other components... ie that's the whole
goal, it's just not done yet.
-David