diff options
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.doc/html')
4 files changed, 72 insertions, 13 deletions
diff --git a/plugins/org.eclipse.emf.cdo.doc/html/programmers/client/Architecture.html b/plugins/org.eclipse.emf.cdo.doc/html/programmers/client/Architecture.html index e39630ef1f..79a914ee5e 100644 --- a/plugins/org.eclipse.emf.cdo.doc/html/programmers/client/Architecture.html +++ b/plugins/org.eclipse.emf.cdo.doc/html/programmers/client/Architecture.html @@ -38,7 +38,8 @@ function windowTitle() <h2><a name="OSGi"></a>1 OSGi</h2> - +<p> + The <i>Open Services Gateway Initiative</i> (OSGi)... <h2><a name="EMF"></a>2 EMF</h2> diff --git a/plugins/org.eclipse.emf.cdo.doc/html/programmers/index.html b/plugins/org.eclipse.emf.cdo.doc/html/programmers/index.html index 3f3161af2f..1f8ff46fcc 100644 --- a/plugins/org.eclipse.emf.cdo.doc/html/programmers/index.html +++ b/plugins/org.eclipse.emf.cdo.doc/html/programmers/index.html @@ -42,9 +42,9 @@ function windowTitle() <tr><td></td><td></td><td>1 </td><td colspan="3"><a href="server/Architecture.html#OSGi" title="Chapter in CDO Model Repository Documentation">OSGi</a></td></tr> <tr><td></td><td></td><td>2 </td><td colspan="3"><a href="server/Architecture.html#Core" title="Chapter in CDO Model Repository Documentation">CDO Server Core</a></td></tr> <tr><td></td><td></td><td>3 </td><td colspan="3"><a href="server/Architecture.html#Store" title="Chapter in CDO Model Repository Documentation">CDO Store</a></td></tr> -<tr><td></td><td></td><td>4 </td><td colspan="3"><a href="server/Architecture.html#OCL" title="Chapter in CDO Model Repository Documentation">OCL</a></td></tr> -<tr><td></td><td></td><td>5 </td><td colspan="3"><a href="server/Architecture.html#Net4j" title="Chapter in CDO Model Repository Documentation">Net4j</a></td></tr> -<tr><td></td><td></td><td>6 </td><td colspan="3"><a href="server/Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a></td></tr> +<tr><td></td><td></td><td>4 </td><td colspan="3"><a href="server/Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a></td></tr> +<tr><td></td><td></td><td>5 </td><td colspan="3"><a href="server/Architecture.html#OCL" title="Chapter in CDO Model Repository Documentation">OCL</a></td></tr> +<tr><td></td><td></td><td>6 </td><td colspan="3"><a href="server/Architecture.html#Net4j" title="Chapter in CDO Model Repository Documentation">Net4j Core</a></td></tr> <tr><td></td><td></td><td>7 </td><td colspan="3"><a href="server/Architecture.html#Transport" title="Chapter in CDO Model Repository Documentation">Transport</a></td></tr> </table> </p> diff --git a/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/Architecture.html b/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/Architecture.html index 81cd78c9d4..f894a170ad 100644 --- a/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/Architecture.html +++ b/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/Architecture.html @@ -42,21 +42,79 @@ function windowTitle() <h2><a name="OSGi"></a>1 OSGi</h2> - +<p> + All components of CDO are implemented as <a href="http://www.osgi.org">OSGi</a> bundles. The core components of + both clients and servers do not require OSGi to actually run to be functional, they can perfectly be operated + stand-alone. If OSGi is running the setup and configuration of some CDO facilities is a little simpler than in + stand-alone mode because the needed <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/factory/IFactory.html" title="Interface in org.eclipse.net4j.util.factory"><code>factories</code></a> get automatically registered with the central + <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/container/IPluginContainer.html" title="Interface in org.eclipse.net4j.util.container"><code>wiring container</code></a>. + <p> + CDO utilizes an <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/om/OMPlatform.html" title="Interface in org.eclipse.net4j.util.om"><code>operations and maintenance</code></a> framework to abstract common platform services such + as <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/om/log/OMLogger.html" title="Interface in org.eclipse.net4j.util.om.log"><code>logging</code></a>, <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/om/trace/OMTracer.html" title="Interface in org.eclipse.net4j.util.om.trace"><code>tracing</code></a>, <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/om/monitor/OMMonitor.html" title="Interface in org.eclipse.net4j.util.om.monitor"><code>monitoring</code></a> and <a href="../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/om/pref/OMPreference.html" title="Interface in org.eclipse.net4j.util.om.pref"><code>configuration</code></a>. Without the need to depend on additional external libraries these services integrate seamlessly + with OSGi, if available at runtime, or emulate similar functionality if running stand-alone. <h2><a name="Core"></a>2 CDO Server Core</h2> - +<p> + The core of a CDO server consists of one or more <a href="../../../javadoc/org/eclipse/emf/cdo/server/IRepository.html" title="Interface in org.eclipse.emf.cdo.server"><code>repositories</code></a> each of which, in turn, consists + of several generic (network and storage independent) <b>components</b>, such as: + <p> + <ul> + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/common/revision/CDORevision.html" title="Interface in org.eclipse.emf.cdo.common.revision"><code>revision</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/common/revision/CDORevisionManager.html" title="Interface in org.eclipse.emf.cdo.common.revision"><code>manager</code></a> and <a href="../../../javadoc/org/eclipse/emf/cdo/common/revision/CDORevisionCache.html" title="Interface in org.eclipse.emf.cdo.common.revision"><code>cache</code></a>, + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/common/branch/CDOBranch.html" title="Interface in org.eclipse.emf.cdo.common.branch"><code>branch</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/common/branch/CDOBranchManager.html" title="Interface in org.eclipse.emf.cdo.common.branch"><code>manager</code></a>, + <li>a <a href="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/ecore/EPackage.html" title="Interface in org.eclipse.emf.ecore"><code>package</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/common/model/CDOPackageRegistry.html" title="Interface in org.eclipse.emf.cdo.common.model"><code>registry</code></a>, + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/CDOLock.html" title="Interface in org.eclipse.emf.cdo"><code>lock</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/server/ILockingManager.html" title="Interface in org.eclipse.emf.cdo.server"><code>manager</code></a>, + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/session/CDOSession.html" title="Interface in org.eclipse.emf.cdo.session"><code>session</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/server/ISessionManager.html" title="Interface in org.eclipse.emf.cdo.server"><code>manager</code></a>, + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/common/commit/CDOCommitInfo.html" title="Interface in org.eclipse.emf.cdo.common.commit"><code>commit info</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/common/commit/CDOCommitInfoManager.html" title="Interface in org.eclipse.emf.cdo.common.commit"><code>manager</code></a>, + <li>a <a href="../../../javadoc/org/eclipse/emf/cdo/server/IQueryHandler.html" title="Interface in org.eclipse.emf.cdo.server"><code>query handler</code></a> <a href="../../../javadoc/org/eclipse/emf/cdo/server/IQueryHandlerProvider.html" title="Interface in org.eclipse.emf.cdo.server"><code>provider</code></a>. + </ul> + <p> + In addition the following types of <b>handlers</b> can be hooked up with a repository: + <p> + <ul> + <li><a href="../../../javadoc/org/eclipse/emf/cdo/server/IRepository.ReadAccessHandler.html" title="Interface in org.eclipse.emf.cdo.server.IRepository"><code>Read access</code></a> handlers, + <li><a href="../../../javadoc/org/eclipse/emf/cdo/server/IRepository.WriteAccessHandler.html" title="Interface in org.eclipse.emf.cdo.server.IRepository"><code>Write access</code></a> handlers, + <li><a href="../../../javadoc/org/eclipse/emf/cdo/common/commit/CDOCommitInfoHandler.html" title="Interface in org.eclipse.emf.cdo.common.commit"><code>Commit info</code></a> handlers. + </ul> + <p> + All <b>persistent aspects</b> (the storage/retrieval of data in/from a database system) are fully abstracted + through the service provider interfaces (SPI) <a href="../../../javadoc/org/eclipse/emf/cdo/server/IStore.html" title="Interface in org.eclipse.emf.cdo.server"><code>IStore</code></a>, <a href="../../../javadoc/org/eclipse/emf/cdo/server/IStoreAccessor.html" title="Interface in org.eclipse.emf.cdo.server"><code>IStoreAccessor</code></a> and <a href="../../../javadoc/org/eclipse/emf/cdo/server/IStoreChunkReader.html" title="Interface in org.eclipse.emf.cdo.server"><code>IStoreChunkReader</code></a>. + Concrete implementations are fully separated and can be plugged into the core as described in <a href="Architecture.html#Store" title="Chapter in CDO Model Repository Documentation">CDO Store</a>. + <p> + All <b>communication aspects</b> (the sending/receiving of signals to/from a network system) are fully abstracted + through the service provider interface (SPI) ISessionProtocol. Concrete implementations are fully separated + and can be plugged into the core as described in <a href="Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a>. <h2><a name="Store"></a>3 CDO Store</h2> +<p> + A concrete storage adapter, an <a href="../../../javadoc/org/eclipse/emf/cdo/server/IStore.html" title="Interface in org.eclipse.emf.cdo.server"><code>IStore</code></a> implementation, operates on top of the generic <a href="Architecture.html#Core" title="Chapter in CDO Model Repository Documentation">server + core</a>. A number of such stores already ship with CDO, making it possible to connect a repository to all sorts of + JDBC databases, Hibernate, Objectivity/DB, MongoDB or DB4O.<p><b>See Also:</b></p> +<ul> + <li><a href="../../reference/StoreFeatures.html" title="Article in CDO Model Repository Documentation">Store Feature Matrix</a></li> +</ul> -<h2><a name="OCL"></a>4 OCL</h2> - +<h2><a name="Protocol"></a>4 Protocol</h2> +<p> + A concrete communications adapter, an ISessionProtocol implementation, operates on top of the generic + <a href="Architecture.html#Core" title="Chapter in CDO Model Repository Documentation">server core</a>. The only session protocol implementation that currently ships with CDO is based on + <a href="Architecture.html#Net4j" title="Chapter in CDO Model Repository Documentation">Net4j Core</a>. -<h2><a name="Net4j"></a>5 Net4j</h2> +<h2><a name="OCL"></a>5 OCL</h2> -<h2><a name="Protocol"></a>6 Protocol</h2> +<h2><a name="Net4j"></a>6 Net4j Core</h2> +<p> + The <i>Net4j Signalling Platform</i> is an extensible client/server communications framework. Net4j eases the + development of fast and maintainable application <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/signal/ISignalProtocol.html" title="Interface in org.eclipse.net4j.signal"><code>protocols</code></a> that are independent of the + physical <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/connector/IConnector.html" title="Interface in org.eclipse.net4j.connector"><code>transport</code></a> medium. Transport protocols are pluggable and Net4j ships with support for + <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/tcp/ITCPConnector.html" title="Interface in org.eclipse.net4j.tcp"><code>TCP</code></a>, <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/tcp/ssl/SSLUtil.html" title="Class in org.eclipse.net4j.tcp.ssl"><code>SSL</code></a>, <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/http/common/IHTTPConnector.html" title="Interface in org.eclipse.net4j.http.common"><code>HTTP</code></a> and <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/jvm/IJVMConnector.html" title="Interface in org.eclipse.net4j.jvm"><code>JVM</code></a> + (in-process) transport. The core of Net4j is a fast, asynchronous and non-blocking <a href="../../../../org.eclipse.net4j.doc/javadoc/org/eclipse/net4j/buffer/IBuffer.html" title="Interface in org.eclipse.net4j.buffer"><code>buffer</code></a> + multiplexing kernel, based on <a href="Architecture.html#OSGi" title="Chapter in CDO Model Repository Documentation">OSGi</a> but also executable stand-alone.<p><b>See Also:</b></p> +<ul> + <li><a href="Architecture.html#Transport" title="Chapter in CDO Model Repository Documentation">Transport</a></li> + <li><a href="Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a></li> +</ul> <h2><a name="Transport"></a>7 Transport</h2> diff --git a/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/index.html b/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/index.html index 707c585a46..3a2d402c2f 100644 --- a/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/index.html +++ b/plugins/org.eclipse.emf.cdo.doc/html/programmers/server/index.html @@ -32,9 +32,9 @@ function windowTitle() <tr><td></td><td>1 </td><td colspan="3"><a href="Architecture.html#OSGi" title="Chapter in CDO Model Repository Documentation">OSGi</a></td></tr> <tr><td></td><td>2 </td><td colspan="3"><a href="Architecture.html#Core" title="Chapter in CDO Model Repository Documentation">CDO Server Core</a></td></tr> <tr><td></td><td>3 </td><td colspan="3"><a href="Architecture.html#Store" title="Chapter in CDO Model Repository Documentation">CDO Store</a></td></tr> -<tr><td></td><td>4 </td><td colspan="3"><a href="Architecture.html#OCL" title="Chapter in CDO Model Repository Documentation">OCL</a></td></tr> -<tr><td></td><td>5 </td><td colspan="3"><a href="Architecture.html#Net4j" title="Chapter in CDO Model Repository Documentation">Net4j</a></td></tr> -<tr><td></td><td>6 </td><td colspan="3"><a href="Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a></td></tr> +<tr><td></td><td>4 </td><td colspan="3"><a href="Architecture.html#Protocol" title="Chapter in CDO Model Repository Documentation">Protocol</a></td></tr> +<tr><td></td><td>5 </td><td colspan="3"><a href="Architecture.html#OCL" title="Chapter in CDO Model Repository Documentation">OCL</a></td></tr> +<tr><td></td><td>6 </td><td colspan="3"><a href="Architecture.html#Net4j" title="Chapter in CDO Model Repository Documentation">Net4j Core</a></td></tr> <tr><td></td><td>7 </td><td colspan="3"><a href="Architecture.html#Transport" title="Chapter in CDO Model Repository Documentation">Transport</a></td></tr> </table> </p> |