= Application Architecture = Possible layers: * ui * services * dao * domain = Artifacts = In SVN I have now created artifacts for the ebrim function. The following naming convention is used: [software name] - [architecture level name] - [function name] {{{ #!html
artifact name | responsibility |
geonetwork-domain-ebrim | Represents the domain model of the ebrim function. |
geonetwork-persistence-ebrim | Provides the persistence layer for the ebrim function. The persistence layer consists of a set of Dao's. A Dao can be used to do CRUD operations on domain objects towards the DB. |
geonetwork-services-ebrim |
Provides
the service layer
for the function. On this level everything is a official transaction.
Every service call will probably use one or more Dao's This layer can also be exposed to any other technical protocol like Webservices, JMS, SMTP and so on. Fits well in a SOA architecture. Currently this layer will be exposed as webserives in the layer below, geonetwork-web-ebrim. |
geonetwork-web-ebrim | Provides
the
application layer of the application. The application layer interacts with the users of the web application. A user can be a browser or a machine. It parses the http request into a service call. The service call goes to the service layer. |