Analysis
Overview
The Sophie 2 Server Facade layer provides interface which is the same on both the server and the client sides for manipulating the resources on the server. The Facade layer accesses the Server core logic.
Task requirements
This task must improve th model of the facade logic for accessing resources. For now the facade has UserManager and GroupManager implemented, so at least BookManager can be created.
- Create class in the facade, which provides the core functionality for accessing books.
- What else should be added, depends on the result of S2S_CORE_RESOURCES_R0.
- Refactor the current code to use the new facade classes. This includes jsps, servlets.
- Write appropriate unit tests.
Tha facade must also be able to get/change/upload any kind of resource. The procedure should be the similar as described above.
Task result
Source code.
Implementation idea
For every major kind of resource, create an interface in org.sophie2.server.facade, and its implementation in org.sophie2.server.facade.impl. For example, for the book resource create:
- Interface BookManager in org.sophie2.server.facade, which uses the BookService class. The methods there should be able to add/save/delete books, get all books, search books by different criterias
- Class ServerBookManager, which implements BookManager.
Related
S2S_DEPLOY_TECHNOLOGIES_R0
S2S_CORE_MODEL_R0 - Description of BookService
S2S_CORE_RESOURCES_R0 - Description of other resources
S2S_FACADE_META_ACCESS_R0
S2S_FACADE_LARGE_RESOURCE_ACCESS_R0
S2S_FACADE_RESOURCE_CHANGES_R0
How to demo
Show the new class(es), run the unit tests.
Design
(Describe your design here.)
Implementation
(Describe and link the implementation results here (from the wiki or the repository).)
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)