diff options
author | Eike Stepper | 2012-06-05 11:19:15 +0000 |
---|---|---|
committer | Eike Stepper | 2012-06-05 11:19:15 +0000 |
commit | e5bc42789a5fa73d5f2c9a2dac4f0d0c177f9b63 (patch) | |
tree | fa7ac6f5500431fd69a4f27d61fe6ec64a39e335 /plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util | |
parent | e2fa7de2e0249c3d4b6c603a1694197453e45c38 (diff) | |
download | cdo-e5bc42789a5fa73d5f2c9a2dac4f0d0c177f9b63.tar.gz cdo-e5bc42789a5fa73d5f2c9a2dac4f0d0c177f9b63.tar.xz cdo-e5bc42789a5fa73d5f2c9a2dac4f0d0c177f9b63.zip |
[381356] Support prefetching through CDO URI formats
https://bugs.eclipse.org/bugs/show_bug.cgi?id=381356
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util')
4 files changed, 89 insertions, 5 deletions
diff --git a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIData.html b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIData.html index 54071c2be7..435573e2f2 100644 --- a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIData.html +++ b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIData.html @@ -110,7 +110,42 @@ Class CDOURIData</H2> <P> -Represents the CDO-specific URI data needed to access a resource in a repository. +Represents a CDO-specific <A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util"><CODE>URI</CODE></A> in connection-aware format. + <p> + CDO URIs are in one of two different formats, either canonical or connection-aware. The connection-aware format is: + + <blockquote><b>cdo.net4j.</b> <i>ConnectorType</i> <b>://</b> [<i>User</i> [<b>:</b> <i>Password</i>] <b>@</b>] + <i>ConnectorSpecificAuthority</i> <b>/</b> <i>RepositoryName</i> <b>/</b> <i>ResourcePath</i> [<b>?</b> <i>Param</i><b>=</b><i>Value</i> + (<b>&</b> <i>Param</i><b>=</b><i>Value</i>)*]</blockquote> + + The non-terminals being: + <p> + <ul> + <li><i>ConnectorType</i>: one of <b>tcp</b> | <b>ssl</b> | <b>jvm</b> | <b>http</b> + <li><i>User/Password</i>: to be provided if the repository is configured with an + <A HREF="../../../../../../../org.eclipse.net4j.util.doc/javadoc/org/eclipse/net4j/util/security/IUserManager.html?is-external=true" title="class or interface in org.eclipse.net4j.util.security"><CODE>IUserManager</CODE></A> and, hence, triggers authentication on the client. Note: the + password may be stored in resources in clear text! + <li><i>ConnectorSpecificAuthority</i>: examples are + <ul> + <li><i>Host</i> [<b>:</b> <i>Port</i>] (if <i>ConnectorType</i> is <b>tcp</b>) + <li><i>AcceptorName</i> (if <i>ConnectorType</i> is <b>jvm</b>) + </ul> + <li><i>RepositoryName</i>: the <A HREF="../../../../../org/eclipse/emf/cdo/common/CDOCommonRepository.html#getName()"><CODE>name</CODE></A> of the repository (not the <A HREF="../../../../../org/eclipse/emf/cdo/common/CDOCommonRepository.html#getUUID()"><CODE>UUID</CODE></A>!). + <li><i>ResourcePath</i>: the full path of the <A HREF="../../../../../org/eclipse/emf/cdo/eresource/CDOResource.html" title="interface in org.eclipse.emf.cdo.eresource"><CODE>resource</CODE></A> within the repository, segments separated by slashes, no leading slash. + <li><i>Param</i>: one of the following + <ul> + <li><b>branch</b>: the value must be a <A HREF="../../../../../org/eclipse/emf/cdo/common/branch/CDOBranch.html#getPathName()"><CODE>branch path</CODE></A>, the full path of the branch in the branch tree, segments separated by slashes, no leading slash, defaults to <b>MAIN</b>. + <li><b>time</b>: the value must be the time at which the resource is supposed to be valid, parseable by SimpleDateFormat. The special value <b>HEAD</b> indicates a floating view/transaction that always shows the latest state in the chosen branch, the default if no <i>Time</i> parameter is specified. + <li><b>transactional</b>: a boolean value. The value <b>true</b> forces a the resource to be opened in a transaction rather than in a read-only view. This can not be combined with a <i>Time</i> other than <b>HEAD</b>. + <li><b>prefetch</b>: a boolean value. The value <b>true</b> attempts to load all objects contained by the resource in a single server-round trip and cache the results. + </ul> + </ul> + <p> + Note: With the current design and implementation of connection-aware URI + (mainly CDONet4jViewProvider) it is still unclear when and how the allocated + "resources" (aka IConnector, CDOSession, CDOView, etc) are supposed to be freed! + <p> + For a description of the canonical URI format refer to <A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIUtil.html" title="class in org.eclipse.emf.cdo.util"><CODE>CDOURIUtil</CODE></A>. <P> <P> @@ -217,6 +252,14 @@ Represents the CDO-specific URI data needed to access a resource in a repository </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> +<CODE> <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>></CODE></FONT></TD> +<TD><CODE><B><A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIData.html#getExtraParameters()">getExtraParameters</A></B>()</CODE> + +<BR> + </TD> +</TR> +<TR BGCOLOR="white" CLASS="TableRowColor"> +<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIData.html#getPassWord()">getPassWord</A></B>()</CODE> @@ -716,6 +759,19 @@ public void <B>setTransactional</B>(boolean transactional)</PRE> </DL> <HR> +<A NAME="getExtraParameters()"><!-- --></A><H3> +getExtraParameters</H3> +<PRE> +public <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A><<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>,<A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>> <B>getExtraParameters</B>()</PRE> +<DL> +<DD><DL> +<DT><B>Since:</B></DT> + <DD>4.1</DD> +</DL> +</DD> +</DL> +<HR> + <A NAME="toURI()"><!-- --></A><H3> toURI</H3> <PRE> diff --git a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIUtil.html b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIUtil.html index 33781a2b71..f53a73333d 100644 --- a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIUtil.html +++ b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/CDOURIUtil.html @@ -111,6 +111,31 @@ Class CDOURIUtil</H2> <P> Various static methods that may help with CDO-specific <A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util"><CODE>URIs</CODE></A>. + <p> + CDO URIs are in one of two different formats, either canonical or connection-aware. The canonical format is: + + <blockquote><b>cdo://</b> <i>RepositoryUUID</i> <b>/</b> <i>ResourcePath</i> [<b>?</b> <i>Param</i><b>=</b><i>Value</i> + (<b>&</b> <i>Param</i><b>=</b><i>Value</i>)*]</blockquote> + + The non-terminals being: + <p> + <ul> + <li><i>RepositoryUUID</i>: the <A HREF="../../../../../org/eclipse/emf/cdo/common/CDOCommonRepository.html#getUUID()"><CODE>UUID</CODE></A> of the repository. By default it's generated when a repository is first started. + If the default format is not adequate the UUID value can be overridden in the repository setup with the <code>overrideUUID</code> property. + <li><i>ResourcePath</i>: the full path of the <A HREF="../../../../../org/eclipse/emf/cdo/eresource/CDOResource.html" title="interface in org.eclipse.emf.cdo.eresource"><CODE>resource</CODE></A> within the repository, segments separated by slashes, no leading slash. + <li><i>Param</i>: one of the following + <ul> + <li><b>prefetch</b>: a boolean value. The value <b>true</b> attempts to load all objects contained by the resource in a single server-round trip and cache the results. + </ul> + </ul> + + URIs in the canonical form to resolve to <A HREF="../../../../../org/eclipse/emf/cdo/eresource/CDOResource.html" title="interface in org.eclipse.emf.cdo.eresource"><CODE>resources</CODE></A> properly require the <A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/ecore/resource/ResourceSet.html?is-external=true" title="class or interface in org.eclipse.emf.ecore.resource"><CODE>resource set</CODE></A> to be + configured <i>externally</i> so that the connection to the correct repository can be established, for example: + <blockquote><code>session.openView(resourceSet);</code></blockquote> + + Note that resources preserve their original URI in the scope of the managing <A HREF="../../../../../org/eclipse/emf/cdo/view/CDOView.html" title="interface in org.eclipse.emf.cdo.view"><CODE>view</CODE></A>, that is not necessarily in canonical format. + <p> + For a description of the connection-aware URI format refer to <A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIData.html" title="class in org.eclipse.emf.cdo.util"><CODE>CDOURIData</CODE></A>. <P> <P> @@ -260,7 +285,7 @@ Various static methods that may help with CDO-specific <A HREF="http://download. <TD><CODE><B><A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIUtil.html#validateURI(org.eclipse.emf.common.util.URI)">validateURI</A></B>(<A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">URI</A> uri)</CODE> <BR> - </TD> + <B>Deprecated.</B> <I></I> </TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> @@ -329,9 +354,12 @@ public static final <A HREF="http://download.oracle.com/javase/1.5.0/docs/api/ja <A NAME="validateURI(org.eclipse.emf.common.util.URI)"><!-- --></A><H3> validateURI</H3> <PRE> -public static void <B>validateURI</B>(<A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">URI</A> uri) +<FONT SIZE="-1"><A HREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</A> +</FONT>public static void <B>validateURI</B>(<A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">URI</A> uri) throws <A HREF="../../../../../org/eclipse/emf/cdo/util/InvalidURIException.html" title="class in org.eclipse.emf.cdo.util">InvalidURIException</A></PRE> <DL> +<DD><B>Deprecated.</B> <I></I> +<P> <DD><DL> <DT><B>Throws:</B> diff --git a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/class-use/InvalidURIException.html b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/class-use/InvalidURIException.html index 66e11d9691..d308a9c9c7 100644 --- a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/class-use/InvalidURIException.html +++ b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/class-use/InvalidURIException.html @@ -132,7 +132,7 @@ Uses of <A HREF="../../../../../../org/eclipse/emf/cdo/util/InvalidURIException. <TD><CODE><B>CDOURIUtil.</B><B><A HREF="../../../../../../org/eclipse/emf/cdo/util/CDOURIUtil.html#validateURI(org.eclipse.emf.common.util.URI)">validateURI</A></B>(<A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util">URI</A> uri)</CODE> <BR> - </TD> + <B>Deprecated.</B> <I></I> </TD> </TR> </TABLE> diff --git a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/package-summary.html b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/package-summary.html index b994b7180c..c8c8ecd88d 100644 --- a/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/package-summary.html +++ b/plugins/org.eclipse.emf.cdo.doc/javadoc/org/eclipse/emf/cdo/util/package-summary.html @@ -157,7 +157,7 @@ Client utility classes, some common interfaces and exceptions. </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="15%"><B><A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIData.html" title="class in org.eclipse.emf.cdo.util">CDOURIData</A></B></TD> -<TD>Represents the CDO-specific URI data needed to access a resource in a repository.</TD> +<TD>Represents a CDO-specific <A HREF="http://download.eclipse.org/modeling/emf/emf/javadoc/2.7.0/org/eclipse/emf/common/util/URI.html?is-external=true" title="class or interface in org.eclipse.emf.common.util"><CODE>URI</CODE></A> in connection-aware format.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD WIDTH="15%"><B><A HREF="../../../../../org/eclipse/emf/cdo/util/CDOURIUtil.html" title="class in org.eclipse.emf.cdo.util">CDOURIUtil</A></B></TD> |