Author: mstruk
Date: 2010-04-12 12:02:26 -0400 (Mon, 12 Apr 2010)
New Revision: 2590
Added:
portal/trunk/docs/reference-guide/en/modules/APIs.xml
Modified:
portal/trunk/docs/reference-guide/en/master.xml
Log:
Added a short chapter on Organization API
Modified: portal/trunk/docs/reference-guide/en/master.xml
===================================================================
--- portal/trunk/docs/reference-guide/en/master.xml 2010-04-12 11:39:54 UTC (rev 2589)
+++ portal/trunk/docs/reference-guide/en/master.xml 2010-04-12 16:02:26 UTC (rev 2590)
@@ -1,13 +1,13 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
- "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-<!ENTITY % BOOK_ENTITIES SYSTEM "Reference_Guide.ent">
-%BOOK_ENTITIES;
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "Reference_Guide.ent">
+%BOOK_ENTITIES;
]>
-<book lang="en">
- <bookinfo>
- <title>GateIn Reference Guide</title>
+<book lang="en">
+ <bookinfo>
+ <title>GateIn Reference Guide</title>
<subtitle>
<!--
LT 20010312: could not find a way to configure image scaling properly (tried width,
scale, etc...). Feel free to investigate.
@@ -21,7 +21,7 @@
</imageobject>
</mediaobject>
- </subtitle>
+ </subtitle>
<authorgroup>
@@ -37,42 +37,42 @@
<firstname>eXo Platform</firstname>
<surname></surname>
</author>
-
- <editor>
- <firstname>Scott</firstname>
- <surname>Mumford</surname>
- <affiliation>
- <shortaffil>Red Hat</shortaffil>
- <orgdiv>Engineering Content Services</orgdiv>
- </affiliation>
- <email>smumford(a)redhat.com</email>
- </editor>
- <editor>
- <firstname>Thomas</firstname>
- <surname>Heute</surname>
- <affiliation>
- <shortaffil>Red Hat</shortaffil>
- <orgdiv>JBoss Engineering</orgdiv>
- </affiliation>
- <email>theute(a)redhat.com</email>
- </editor>
- <editor>
- <firstname>Luc</firstname>
- <surname>Texier</surname>
- <affiliation>
+
+ <editor>
+ <firstname>Scott</firstname>
+ <surname>Mumford</surname>
+ <affiliation>
<shortaffil>Red Hat</shortaffil>
- <orgdiv>JBoss Engineering,
Management</orgdiv>
- </affiliation>
- <email>ltexier(a)redhat.com</email>
+ <orgdiv>Engineering Content Services</orgdiv>
+ </affiliation>
+ <email>smumford(a)redhat.com</email>
</editor>
-<!--
- <othercredit>
- <affiliation>
- <orgname><emphasis role="bold"><ulink type="http"
url="http://www.jboss.org/gatein/">GateIn
Portal</ulink></emphasis> and <emphasis role="bold"><ulink
type="http"
url="http://www.exoplatform.com/portal/public/website/">Exo
Platform</ulink></emphasis> teams</orgname>
- </affiliation>
- <contrib>Original product documentation by:</contrib>
+ <editor>
+ <firstname>Thomas</firstname>
+ <surname>Heute</surname>
+ <affiliation>
+ <shortaffil>Red Hat</shortaffil>
+ <orgdiv>JBoss Engineering</orgdiv>
+ </affiliation>
+ <email>theute(a)redhat.com</email>
+ </editor>
+ <editor>
+ <firstname>Luc</firstname>
+ <surname>Texier</surname>
+ <affiliation>
+ <shortaffil>Red Hat</shortaffil>
+ <orgdiv>JBoss Engineering,
Management</orgdiv>
+ </affiliation>
+ <email>ltexier(a)redhat.com</email>
+ </editor>
+<!--
+ <othercredit>
+ <affiliation>
+ <orgname><emphasis role="bold"><ulink type="http"
url="http://www.jboss.org/gatein/">GateIn
Portal</ulink></emphasis> and <emphasis role="bold"><ulink
type="http"
url="http://www.exoplatform.com/portal/public/website/">Exo
Platform</ulink></emphasis> teams</orgname>
+ </affiliation>
+ <contrib>Original product documentation by:</contrib>
</othercredit>
--->
+-->
</authorgroup>
@@ -143,6 +143,9 @@
<!-- WSRP -->
<xi:include
xmlns:xi="http://www.w3.org/2001/XInclude"
href="modules/WSRP.xml"/>
+ <!-- APIs -->
+ <xi:include
xmlns:xi="http://www.w3.org/2001/XInclude"
href="modules/APIs.xml"/>
+
<!--
11_Support
http://www.exoplatform.com/portal/public/en/forum?portal:componentId=foru...
Added: portal/trunk/docs/reference-guide/en/modules/APIs.xml
===================================================================
--- portal/trunk/docs/reference-guide/en/modules/APIs.xml (rev 0)
+++ portal/trunk/docs/reference-guide/en/modules/APIs.xml 2010-04-12 16:02:26 UTC (rev
2590)
@@ -0,0 +1,42 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "../Reference_Guide.ent">
+%BOOK_ENTITIES;
+]>
+<chapter id="chap-Reference_Guide-APIs">
+ <title>APIs</title>
+ <section id="sect-Reference_Guide-APIs-Organization_API">
+ <title>Organization API</title>
+ <para>
+ The <literal>exo.platform.services.organization</literal> package
has five main components: user, user profile, group, membership type and membership.
+ There is an additional component that serves as an entry point into Organization
API - <literal>OrganizationService</literal> component,
+ that provides handling functionality for the five components.
+ </para>
+ <para>
+ The <literal>User</literal> component contains basic information
about a user - such as
+ username, password, first name, last name, and email. The <literal>User
Profile</literal>
+ component contains extra information about a user, such as user's personal
information, and business information.
+ You can also add additional information about a user if your application
requires it.
+ The <literal>Group</literal> component contains a group graph. The
<literal>Membership Type</literal> component
+ contains a list of predefined membership types.
+ Finally, the <literal>Membership</literal> component connects a
User, a Group and a Membership Type.
+ </para>
+ <para>
+ A user can have one or more memberships within a group, for example: user A can
have the 'member' and 'admin' memberships in group /user.
+ A user belongs to a group if he has at least one membership in that group.
+ </para>
+ <para>
+ Exposing the Organization API to developers the OrganizationService component
provides developers with access
+ to handler objects for managing each of the five components - UserHandler,
UserProfileHandler, GroupHandler, MembershipTypeHandler, and MembershipHandler.
+ </para>
+ <para>
+ The five central API components are really designed like persistent entities,
and handlers are really specified like data access objects (DAO).
+ </para>
+ <para>
+ Organization API simply describes a contract, meaning it is not a concrete
implementation. The described components are interfaces,
+ allowing for different concrete implementations. In practial terms that means,
you can replace the existing implementation with a different one.
+ </para>
+ </section>
+
+</chapter>
+