Shawn McKinney created FC-326:
---------------------------------
Summary: Collapse the P and D layers
Key: FC-326
URL: https://issues.apache.org/jira/browse/FC-326
Project: FORTRESS
Issue Type: Improvement
Affects Versions: 3.0.0
Reporter: Shawn McKinney
The original design of fortress has 4 layers:
1. Manager
2. Implementation
3. Process
4. Data
1. The manager is the outer interface. It communicates with the clients. Its
job is to hide the implementation of fortress and any details about its data
usages. (there should be no LDAP or SQL smell here) Also at this level are the
exceptions and factories that are visible to users of the system.
2. The impl knows about the data, because it must handle the specificity of it.
For example, it knows if its LDAP, REST (or eventually SQL). It's the target of
instantiation during runtime (by the manager factory), and it handles all calls
further down (into the process/data).
3. The process layer knows some details about the data. For example,
fine-grained data validation is performed at this level. It may have to handle
some special use cases surrounding LDAP data management. This is also where any
special business rules would be applied. Particular to what the use case is for
adding, updating or deleting an entity.
4. The Data level is where the DAO API does the work. Here would be something
like an LDAP, JDBC toolkit employed. It won't know about any relationships. It
never calls across entities. That is always done above (in the process layer).
****
In retrospect the 3 layer (process) has proven unnecessarily complex. There's
not enough value in keeping it going forward.
This is a proposal to collapse the stack by one, removing the process layer.
Any functions that are currently going on there can be moved either up or down.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]