Difference between revisions of "Home Library 1.0 API"

From Gcube Wiki
Jump to: navigation, search
(Working with Home Library)
(Working with Home Library)
Line 30: Line 30:
 
[[Image:homelibrary-basketitem-model.png|frame|center|Figure 3. Basket Item model]]
 
[[Image:homelibrary-basketitem-model.png|frame|center|Figure 3. Basket Item model]]
  
==Working with Home Library==
+
==Setup the Home Library==
 
===Installation===
 
===Installation===
 
To use the HomeLibrary you first need the HomeLibrary downloadable from:
 
To use the HomeLibrary you first need the HomeLibrary downloadable from:
Line 58: Line 58:
 
Inside the base dir a home_library_persitence dir is created and used.
 
Inside the base dir a home_library_persitence dir is created and used.
  
 +
==Using the Home Library==
  
 
===How to retrieve an User WorkspaceArea from a servlet===
 
===How to retrieve an User WorkspaceArea from a servlet===

Revision as of 19:13, 29 September 2009

Alert icon2.gif THIS SECTION OF GCUBE DOCUMENTATION IS CURRENTLY UNDER UPDATE.

The Home Library manage and persist the users homes.

Architecture

The user's homes are organized in scopes.

The users and the homes for a specific scope are managed by the HomeManager.

Each user home (Home) have a workspace area (WorkspaceArea) and a data area (DataArea).

Figure 1. Home Library Reference Architecture

Workspace Area model

The figure 2 illustrate the Workspace Area model.

Figure 2. Workspace Area model

Each element contained in a workspace area is a WorkspaceAreaItem.

There are two kind of item container: the Workspace and the Basket, both can be referred as WorkspaceFolder.

A workspace can contain one or more workspacefolder.

A basket can contain only BasketItems.

The basket items are the effective user objects.

The figure 3 illustrate the BasketItem model.

Figure 3. Basket Item model

Setup the Home Library

Installation

To use the HomeLibrary you first need the HomeLibrary downloadable from:

  • [1] last night build
  • [2] gcube distribution site

Add the org.gcube.portlets.user.homelibrary.jar file to your gcore installation ($GLOBUS_PATH/lib folder).

Dependecies

The home library require some library to be used:

  • xstream-1.3.1.jar XML serialization (XStream)
  • xpp3_min-1.1.4c.jar XML serialization (XStream)
  • bcprov-ext-jdk15-141.jar manipulate pdf
  • iText-2.1.4.jar manipulate pdf
  • ij140g.jar manipulate images

Add those libraries to your gcore installation ($GLOBUS_PATH/lib folder).

Configuration

To be used the Home Library need a folder where create a persistence dir.For test use is not necessary to configure it.

There are different way to specify the base dir where create the persistence dir:

  1. set the HOME_LIBRARY_PERSISTENCE_DIR environment variable
  2. set the system property catalina.base (generically set by tomcat), then the "catalina.base/webapps/usersArea" is used a base dir
  3. If none of preceding properties is specified the system tmp directory is used a base dir. Make attention, sometime the tmp folder is delete at system reboot, use it only for test.

Inside the base dir a home_library_persitence dir is created and used.

Using the Home Library

How to retrieve an User WorkspaceArea from a servlet

To retrieve a WorkspaceArea for a User you can use the getWorkspaceArea static method from HomeLibrary class. This method required only the current D4ScienceSession.

WorkspaceArea wa = HomeLibrary.getUserWorkspaceArea(session);

References

The most recent presentation about the Home Library can be found there: http://bscw.research-infrastructures.eu/bscw/bscw.cgi/d107608/06.%20HomeLibrary.ppt