You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2012/03/07 11:52:21 UTC

svn commit: r1297926 - in /incubator/syncope/trunk/parent/src/site: resources/css/site.css resources/images/apache-syncope-architecture.png site.xml xdoc/architecture.xml xdoc/features.xml xdoc/index.xml

Author: ilgrosso
Date: Wed Mar  7 10:52:21 2012
New Revision: 1297926

URL: http://svn.apache.org/viewvc?rev=1297926&view=rev
Log:
Updating site generation with architecture and features + little menu reorganization

Added:
    incubator/syncope/trunk/parent/src/site/resources/images/apache-syncope-architecture.png   (with props)
    incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml   (with props)
    incubator/syncope/trunk/parent/src/site/xdoc/features.xml   (with props)
Modified:
    incubator/syncope/trunk/parent/src/site/resources/css/site.css
    incubator/syncope/trunk/parent/src/site/site.xml
    incubator/syncope/trunk/parent/src/site/xdoc/index.xml

Modified: incubator/syncope/trunk/parent/src/site/resources/css/site.css
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/resources/css/site.css?rev=1297926&r1=1297925&r2=1297926&view=diff
==============================================================================
--- incubator/syncope/trunk/parent/src/site/resources/css/site.css (original)
+++ incubator/syncope/trunk/parent/src/site/resources/css/site.css Wed Mar  7 10:52:21 2012
@@ -16,3 +16,28 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 */
+.toc {
+  width: 300px;
+  border: 1px solid gray;
+  background-color: #f9f9f9;
+  padding-bottom: 15px;
+}
+
+ul.toc li {
+  visibility: hidden;
+  list-style: none;
+}
+
+ul.toc li ul {
+  visibility: visible;
+  counter-reset: item;
+}
+
+ul.toc li ul li {
+  visibility: visible;
+}
+
+ul.toc li ul li:before {
+  content: counters(item, ".") ". ";
+  counter-increment: item;
+}
\ No newline at end of file

Added: incubator/syncope/trunk/parent/src/site/resources/images/apache-syncope-architecture.png
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/resources/images/apache-syncope-architecture.png?rev=1297926&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/syncope/trunk/parent/src/site/resources/images/apache-syncope-architecture.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Modified: incubator/syncope/trunk/parent/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/site.xml?rev=1297926&r1=1297925&r2=1297926&view=diff
==============================================================================
--- incubator/syncope/trunk/parent/src/site/site.xml (original)
+++ incubator/syncope/trunk/parent/src/site/site.xml Wed Mar  7 10:52:21 2012
@@ -46,15 +46,34 @@ under the License.
   <body>
     <links>
       <item name="Apache" href="http://www.apache.org/"/>
-      <item name="Apache Incubator" href="http://incubator.apache.org"/>
+      <item name="Apache Incubator" href="http://incubator.apache.org/"/>
     </links>
 
     <breadcrumbs>
-      <item name="Apache Syncope" href="http://incubator.apache.org/syncope"/>
+      <item name="Apache Syncope" href="http://incubator.apache.org/syncope/"/>
     </breadcrumbs>
         
-    <menu ref="reports" inherit="bottom"/>
+    <menu name="Project Information">
+      <item name="Project Summary" href="project-summary.html"/>
+      <item name="Mailing Lists" href="mail-lists.html"/>
+      <item name="Project Team" href="team-list.html"/>
+      <item name="Source Repository" href="source-repository.html"/>
+      <item name="Continuous Integration" href="integration.html"/>
+      <item name="Issue Tracking" href="issue-tracking.html"/>
+      <item name="Dependency Management" href="dependency-management.html"/>
+      <item name="Distribution Management" href="distribution-management.html"/>
+      <item name="Plugin Management" href="plugin-management.html"/>
+      <item name="Project Plugins" href="plugins.html"/>
+      <item name="Project License" href="license.html"/>
+    </menu>
 
+    <menu name="Documentation">
+      <item name="Features" href="features.html"/>
+      <item name="Architecture" href="architecture.html"/>
+      <item name="Wiki" href="http://cwiki.apache.org/confluence/display/SYNCOPE/Index"/>
+      <item name="Javadoc" href="apidocs/index.html"/>
+    </menu>
+    
     <menu name="ASF">
       <item name="How Apache Works" href="http://www.apache.org/foundation/how-it-works.html"/>
       <item name="Foundation" href="http://www.apache.org/foundation/"/>

Added: incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml?rev=1297926&view=auto
==============================================================================
--- incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml (added)
+++ incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml Wed Mar  7 10:52:21 2012
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+
+-->
+<document xmlns="http://maven.apache.org/XDOC/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+          xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+
+  <properties>
+    <title>Architecture</title>
+    <author email="syncope-dev@incubator.apache.org">Apache Syncope Documentation Team</author>
+  </properties>
+
+  <body>
+    <h2>Architecture</h2>
+
+    <macro name="toc">
+      <param name="class" value="toc"/>
+    </macro>
+    
+    <section name="Introduction">
+      <p>
+        From an high-level point of view, the component architecture of Apache Syncope can be summarized by following figure.
+        <div style="width:100%; text-align:center; margin:20px;">
+          <img src="images/apache-syncope-architecture.png" alt="Apache Syncope Architecture" width="600px"/>
+        </div>
+        Apache Syncope is composed by two main subsystems: 
+        <a href="#The_core">core</a> and 
+        <a href="#The_console">console</a>.
+      </p>
+    </section>
+
+    <section name="The core">
+      <p>
+        The web application that implements IdM features; it offers a RESTful interface for caller applications, implements the provisioning core by mean of its workflow engine and its propagation layer, manages data persistence.
+      </p>
+      
+      <subsection name="Apache Syncope core logic">
+        <p>
+          This central component orchestrates the whole data flow throughout the system.
+          Gets involved upon RESTful calls, processes data alongside the defined workflow, propagates to and synchronize from configured external resources, if needed.
+        </p>
+      </subsection>
+
+      <subsection name="RESTful controllers">
+        <p>
+          RESTful controllers take care of the communication with outside world.
+          Implemented by leveraging Spring's REST and MVC features, these controllers exchange data in both XML and JSON formats.
+        </p>
+      </subsection>
+
+      <subsection name="Workflow engine">
+        <p>
+          Workflow engine is a pluggable aspect of Apache Syncope: this lets every deployment choose among one of provided engine implementations or define new, custom ones.
+        </p>
+
+        <p>
+          Default implementation is based on 
+          <a href="http://www.activiti.org" target="_blank">Activiti BPM</a>, reference Open Source implementation that supports the definition of an XML descriptor in which user lifecycle is defined.
+          This aspect makes the whole system very flexible to adapt to different situations.
+          <br/>
+          Default implementation also provides notification, approval, and end-user request management.
+        </p>
+      </subsection>
+
+      <subsection name="JPA persistence layer">
+        <p>
+          All the data in Apache Syncope (users, roles, attributes, resources, ...) is managed at an high level with a standard JPA 2.0 approach and persisted to underlying database.
+        </p>
+        <p>
+          <a href="http://openjpa.apache.org">OpenJPA</a>, the chosen JPA implementation, makes Apache Syncope to be successfully deployable on most DBMS without any modification on the source code; in order to have an idea of this possibility, take a look at 
+          <a href="http://openjpa.apache.org/builds/latest/docs/docbook/manual/ref_guide_dbsetup_dbsupport.html">available options</a>.
+          <br/>
+          Currently, Apache Syncope officially supports MySQL, PostgreSQL and Oracle DB.
+        </p>
+      </subsection>
+
+      <subsection name="Connectors layer">
+        <p>
+          Connector layer is implemented with 
+          <a href="http://connid.googlecode.com" target="_blank">ConnId</a>; ConnId is designed to separate the implementation of an application from the dependencies of the system that the application is attempting to connect to.
+        </p>
+        <p>
+          Connid is the continuation of Identity connectors, a project that used to be part of the market leader Sun IdM and have been released by Sun as an Open Source project.
+          This makes the connectors layer particularly reliable since most connectors are already implemented in the framework and widely tested. Lately, the original project has been forked into the new ConnId project, whose main purpose is to provide all that is required nowadays for a modern Open Source project: Apache Maven driven build, artifacts and mailing lists.
+          Additional connectors – like as SOAP, CSV  and Active Directory – are also provided.
+        </p>
+        <p>
+          Apache Syncope supports either
+          <ul>
+            <li>
+              <em>propagation</em> towards external resources (when user data is copied from Syncope to external resources)
+            </li>
+            <li>
+              <em>synchronization</em> from external resources (when user data is pulled from external resources into Syncope)
+            </li>
+          </ul>
+        
+          Propagation and synchronization operations – a.k.a tasks – are saved for reporting and later re-execution.
+        </p>
+      </subsection>
+    </section>
+
+    <section name="The console">
+      <p>
+        The web management interface for configuring and administering Syncope core. Like as other external applications, the console communicates with the core by REST calls.
+      </p>
+    </section>
+  </body>
+</document>

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/architecture.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/syncope/trunk/parent/src/site/xdoc/features.xml
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/xdoc/features.xml?rev=1297926&view=auto
==============================================================================
--- incubator/syncope/trunk/parent/src/site/xdoc/features.xml (added)
+++ incubator/syncope/trunk/parent/src/site/xdoc/features.xml Wed Mar  7 10:52:21 2012
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+
+-->
+<document xmlns="http://maven.apache.org/XDOC/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+          xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+
+  <properties>
+    <title>Features</title>
+    <author email="syncope-dev@incubator.apache.org">Apache Syncope Documentation Team</author>
+  </properties>
+
+  <body>
+    <h2>Features</h2>
+    
+    <ul>
+      <li>Identity and Role Administration
+        <ul>
+          <li>Password management and Self-Service Operations</li>
+          <li>Configurable Password encryption</li>
+          <li>Attribute validators (Reg-Exp based and custom)</li>
+          <li>Account Policy management</li>
+          <li>Password Policy management</li>
+          <li>Role-based provisioning</li>
+          <li>Account status information on external resources</li>
+        </ul>
+      </li>
+      <li>Approval and Request Management
+        <ul>
+          <li>End-User Request Management</li>
+          <li>Approval workflow</li>
+          <li>Workflow event notification</li>
+        </ul>
+      </li>
+      <li>Domain Integration
+        <ul>
+          <li>Highly configurable communication with external resources powered by            
+            <a href="http://connid.googlecode.com" target="_blank">ConnId</a>
+          </li>
+          <li>Identity propagation towards external resources</li>
+          <li>Reconciliation / Bulk load from external resources</li>
+          <li>Identity synchronization from external resources (ActiveSync)</li>
+          <li>Synchronization Policy Management</li>
+        </ul>
+      </li>
+      <li>Business Intelligence
+        <ul>
+          <li>Comprehensive Auditing features</li>
+          <li>Highly customizable and configurable Report generation</li>
+        </ul>
+      </li>
+      <li>System Administration
+        <ul>
+          <li>RESTFul interface</li>
+          <li>Web-based AJAX administration console</li>
+          <li>Role-based administration</li>
+          <li>Attribute schema, Derived attribute schema and Virtual Attribute schema management</li>
+          <li>Role tree management</li>
+          <li>Schedulable Task execution</li>
+        </ul>
+      </li>
+    </ul>
+  </body>
+</document>

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/features.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/features.xml
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/syncope/trunk/parent/src/site/xdoc/features.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: incubator/syncope/trunk/parent/src/site/xdoc/index.xml
URL: http://svn.apache.org/viewvc/incubator/syncope/trunk/parent/src/site/xdoc/index.xml?rev=1297926&r1=1297925&r2=1297926&view=diff
==============================================================================
--- incubator/syncope/trunk/parent/src/site/xdoc/index.xml (original)
+++ incubator/syncope/trunk/parent/src/site/xdoc/index.xml Wed Mar  7 10:52:21 2012
@@ -1,4 +1,4 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <!--
 Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.  See the NOTICE file