From 95123aad3b91c84c3659c8c2eb5a6d36fa745750 Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Fri, 16 Sep 2011 06:17:54 +0000 Subject: tutorials --- .../org.eclipse.emf.cdo.doc/META-INF/MANIFEST.MF | 7 +- plugins/org.eclipse.emf.cdo.doc/build.xml | 5 - .../html/connectors/summary.html | 4 + .../html/online/summary.html | 3 + .../html/reference/schema/summary.html | 3 + .../html/reference/summary.html | 3 + .../html/sessions/summary.html | 3 + .../src/org/eclipse/emf/cdo/doc/Overview.java | 1 + .../connectors/CreatingTransportConnections.java | 191 --------------------- .../emf/cdo/doc/connectors/package-info.java | 16 -- .../eclipse/emf/cdo/doc/online/package-info.java | 2 +- .../connectors/CreatingTransportConnections.java | 191 +++++++++++++++++++++ .../doc/programmers/connectors/package-info.java | 20 +++ .../emf/cdo/doc/programmers/package-info.java | 18 ++ .../sessions/ConnectingToRepositories.java | 31 ++++ .../cdo/doc/programmers/sessions/package-info.java | 18 ++ .../cdo/doc/sessions/ConnectingToRepositories.java | 31 ---- .../eclipse/emf/cdo/doc/sessions/package-info.java | 16 -- plugins/org.eclipse.emf.cdo.doc/toc.xml | 20 ++- .../buildTemplate.ant | 5 - .../emf/cdo/releng/doc/TestCDODocumentation.java | 2 +- .../emf/cdo/releng/doc/article/Documentation.java | 2 + .../cdo/releng/doc/article/impl/ArticleImpl.java | 19 +- .../cdo/releng/doc/article/impl/CategoryImpl.java | 44 +++++ .../releng/doc/article/impl/DocumentationImpl.java | 19 +- .../cdo/releng/doc/article/impl/SchemadocImpl.java | 2 +- .../doc/article/impl/StructuralElementImpl.java | 58 ++++++- .../cdo/releng/doc/article/util/ArticleUtil.java | 43 ++++- .../eclipse/net4j/db/doc/online/package-info.java | 2 +- .../org/eclipse/net4j/doc/online/package-info.java | 2 +- .../net4j/util/doc/online/package-info.java | 2 +- 31 files changed, 476 insertions(+), 307 deletions(-) create mode 100644 plugins/org.eclipse.emf.cdo.doc/html/connectors/summary.html create mode 100644 plugins/org.eclipse.emf.cdo.doc/html/online/summary.html create mode 100644 plugins/org.eclipse.emf.cdo.doc/html/reference/schema/summary.html create mode 100644 plugins/org.eclipse.emf.cdo.doc/html/reference/summary.html create mode 100644 plugins/org.eclipse.emf.cdo.doc/html/sessions/summary.html delete mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/CreatingTransportConnections.java delete mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/package-info.java create mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/CreatingTransportConnections.java create mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/package-info.java create mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/package-info.java create mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/ConnectingToRepositories.java create mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/package-info.java delete mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/ConnectingToRepositories.java delete mode 100644 plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/package-info.java diff --git a/plugins/org.eclipse.emf.cdo.doc/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.doc/META-INF/MANIFEST.MF index 5cbc247298..80647aec25 100644 --- a/plugins/org.eclipse.emf.cdo.doc/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.emf.cdo.doc/META-INF/MANIFEST.MF @@ -28,9 +28,10 @@ Require-Bundle: org.eclipse.help;bundle-version="[3.3.0,4.0.0)";resolution:=opti org.eclipse.emf.cdo.ui;bundle-version="[4.0.0,5.0.0)";resolution:=optional;visibility:=reexport, org.eclipse.emf.cdo.ui.ide;bundle-version="[4.0.0,5.0.0)";resolution:=optional;visibility:=reexport Export-Package: org.eclipse.emf.cdo.doc;version="4.1.0", - org.eclipse.emf.cdo.doc.connectors;version="4.1.0", org.eclipse.emf.cdo.doc.online;version="4.1.0", + org.eclipse.emf.cdo.doc.programmers;version="4.1.0", + org.eclipse.emf.cdo.doc.programmers.connectors;version="4.1.0", + org.eclipse.emf.cdo.doc.programmers.sessions;version="4.1.0", org.eclipse.emf.cdo.doc.reference;version="4.1.0", org.eclipse.emf.cdo.doc.reference.api;version="4.1.0", - org.eclipse.emf.cdo.doc.reference.schema;version="4.1.0", - org.eclipse.emf.cdo.doc.sessions;version="4.1.0" + org.eclipse.emf.cdo.doc.reference.schema;version="4.1.0" diff --git a/plugins/org.eclipse.emf.cdo.doc/build.xml b/plugins/org.eclipse.emf.cdo.doc/build.xml index 1ecd31f585..a3b941aeef 100644 --- a/plugins/org.eclipse.emf.cdo.doc/build.xml +++ b/plugins/org.eclipse.emf.cdo.doc/build.xml @@ -315,11 +315,6 @@ - - - - - diff --git a/plugins/org.eclipse.emf.cdo.doc/html/connectors/summary.html b/plugins/org.eclipse.emf.cdo.doc/html/connectors/summary.html new file mode 100644 index 0000000000..d0e337729b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/html/connectors/summary.html @@ -0,0 +1,4 @@ +

Connectors

+

+ In this category you'll find a number of articles about physical transport connections: + diff --git a/plugins/org.eclipse.emf.cdo.doc/html/online/summary.html b/plugins/org.eclipse.emf.cdo.doc/html/online/summary.html new file mode 100644 index 0000000000..773c265080 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/html/online/summary.html @@ -0,0 +1,3 @@ +

Online Docs

+ + diff --git a/plugins/org.eclipse.emf.cdo.doc/html/reference/schema/summary.html b/plugins/org.eclipse.emf.cdo.doc/html/reference/schema/summary.html new file mode 100644 index 0000000000..dbd41a5f53 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/html/reference/schema/summary.html @@ -0,0 +1,3 @@ +

Extension Point Reference

+ + diff --git a/plugins/org.eclipse.emf.cdo.doc/html/reference/summary.html b/plugins/org.eclipse.emf.cdo.doc/html/reference/summary.html new file mode 100644 index 0000000000..3fb11fb96d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/html/reference/summary.html @@ -0,0 +1,3 @@ +

Reference

+ + diff --git a/plugins/org.eclipse.emf.cdo.doc/html/sessions/summary.html b/plugins/org.eclipse.emf.cdo.doc/html/sessions/summary.html new file mode 100644 index 0000000000..f51e66ba27 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/html/sessions/summary.html @@ -0,0 +1,3 @@ +

Sessions

+ + diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/Overview.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/Overview.java index 28fffaba06..ffce912194 100644 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/Overview.java +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/Overview.java @@ -14,6 +14,7 @@ package org.eclipse.emf.cdo.doc; * Overview * * @number 0 + * @default */ public class Overview { diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/CreatingTransportConnections.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/CreatingTransportConnections.java deleted file mode 100644 index 65b8a29c82..0000000000 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/CreatingTransportConnections.java +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Eike Stepper - initial API and implementation - */ -package org.eclipse.emf.cdo.doc.connectors; - -import org.eclipse.emf.cdo.doc.connectors.CreatingTransportConnections.AddConfigurationParameters.SetBufferCapacity; -import org.eclipse.emf.cdo.doc.connectors.Snippets.JMSConnector; -import org.eclipse.emf.cdo.doc.sessions.ConnectingToRepositories.SetConnectionTimeout; - -import org.eclipse.net4j.Net4jUtil; -import org.eclipse.net4j.acceptor.IAcceptor; -import org.eclipse.net4j.channel.ChannelException; -import org.eclipse.net4j.connector.IConnector; -import org.eclipse.net4j.http.server.IHTTPAcceptor; -import org.eclipse.net4j.jvm.IJVMAcceptor; -import org.eclipse.net4j.protocol.IProtocol; -import org.eclipse.net4j.tcp.ITCPAcceptor; -import org.eclipse.net4j.tcp.TCPUtil; -import org.eclipse.net4j.util.container.IManagedContainer; -import org.eclipse.net4j.util.container.ManagedContainer; -import org.eclipse.net4j.util.factory.Factory; -import org.eclipse.net4j.util.factory.ProductCreationException; -import org.eclipse.net4j.util.security.INegotiationContext; - -import org.eclipse.spi.net4j.Connector; -import org.eclipse.spi.net4j.InternalChannel; - -import java.nio.channels.SocketChannel; - -/** - * Creating Transport Connections - *

- * This tutorial outlines the steps needed to create a Net4j {@link IConnector} and connect it to an {@link IAcceptor}. - *

- * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus - * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna ac - * est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin nisi - * vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu erat ac - * risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec vehicula urna sollicitudin. Donec - * porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu sapien. Sed at metus et dolor tincidunt - * convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel urna. Suspendisse facilisis, libero ac - * ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. Sed a viverra metus. - * - * @author Eike Stepper - */ -public class CreatingTransportConnections -{ - /** - * Select a Transport Type - *

- * Currently supported transport types are: - *

    - *
  • JVM to connect to an {@link IJVMAcceptor} in the same Java Virtual Machine. - *
  • TCP to connect to an {@link ITCPAcceptor} by means of a {@link SocketChannel}. - *
  • SSL an extension to the TCP transport that adds TLS/SSL security. - *
  • HTTP to connect to an {@link IHTTPAcceptor} that is made available by a servlet. - *
- * Continue with {@link SetConnectionTimeout}. - * - * @see SetBufferCapacity - */ - public class SelectTransportType - { - } - - /** - * Setup a Wiring Container - *

- * Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin nisi vestibulum nec - * vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu erat ac risus - * ultricies mattis vel nec nunc. - *

- * {@link Snippets#snippet1() ContainerSetup.java} - *

- * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus - * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna ac - * est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin - * nisi vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu - * erat ac risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec vehicula urna - * sollicitudin. Donec porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu sapien. Sed at - * metus et dolor tincidunt convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel urna. - * Suspendisse facilisis, libero ac ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. Sed a - * viverra metus. - */ - public class SetupWiringContainer - { - } - - /** - * Add Configuration Parameters - */ - public class AddConfigurationParameters - { - /** - * Set the Buffer Capacity - *

- * {@link JMSConnector} - */ - public class SetBufferCapacity - { - } - - /** - * Set the Connection Timeout - *

- * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus - * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna - * ac est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien - * sollicitudin nisi vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat - * eget. Integer eu erat ac risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec - * vehicula urna sollicitudin. Donec porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu - * sapien. Sed at metus et dolor tincidunt convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel - * urna. Suspendisse facilisis, libero ac ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. - * Sed a viverra metus. - */ - public class SetConnectionTimeout - { - } - } -} - -// ----------------------------------------------------------------------------- // - -/** - * @snippet - */ -class Snippets -{ - /** - * @callout Create a separate {@link IManagedContainer}. - * @callout Create a factory of type "jms" in the productGroup "org.eclipse.net4j.connectors". - * @callout Create a JMS connector. - * @callout The new container can not be used when inactive. - */ - public void snippet1() - { - // Create a dedicated container instance - IManagedContainer container = /* callout */new ManagedContainer(); - - // Register your custom factories - container.registerFactory( /* callout */new Factory("org.eclipse.net4j.connectors", "jms") - { - public IConnector create(String description) throws ProductCreationException - { - return /* callout */new JMSConnector(description); - } - }); - - // Use utility classes to register additional factories - Net4jUtil.prepareContainer(container); - TCPUtil.prepareContainer(container); - - // Do not forget to activate the container before you use it - /* callout */container.activate(); - } - - /** - * @callout The channel must not be null. - */ - public class JMSConnector extends Connector - { - public JMSConnector(String description) - { - } - - public void multiplexChannel(InternalChannel /* callout */channel) - { - } - - // snip - @Override - protected INegotiationContext createNegotiationContext() - { - return null; - } - - @Override - protected void registerChannelWithPeer(short channelID, long timeout, IProtocol protocol) - throws ChannelException - { - } - // snap - } -} diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/package-info.java deleted file mode 100644 index ac8fb9e42e..0000000000 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/connectors/package-info.java +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Eike Stepper - initial API and implementation - */ - -/** - * Connectors - */ -package org.eclipse.emf.cdo.doc.connectors; - diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/online/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/online/package-info.java index 589134cc71..202cda2f78 100644 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/online/package-info.java +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/online/package-info.java @@ -10,7 +10,7 @@ */ /** - * Online + * Online Docs * * @number 555 */ diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/CreatingTransportConnections.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/CreatingTransportConnections.java new file mode 100644 index 0000000000..f475526988 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/CreatingTransportConnections.java @@ -0,0 +1,191 @@ +/* + * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ +package org.eclipse.emf.cdo.doc.programmers.connectors; + +import org.eclipse.emf.cdo.doc.programmers.connectors.CreatingTransportConnections.AddConfigurationParameters.SetBufferCapacity; +import org.eclipse.emf.cdo.doc.programmers.connectors.Snippets.JMSConnector; +import org.eclipse.emf.cdo.doc.programmers.sessions.ConnectingToRepositories.SetConnectionTimeout; + +import org.eclipse.net4j.Net4jUtil; +import org.eclipse.net4j.acceptor.IAcceptor; +import org.eclipse.net4j.channel.ChannelException; +import org.eclipse.net4j.connector.IConnector; +import org.eclipse.net4j.http.server.IHTTPAcceptor; +import org.eclipse.net4j.jvm.IJVMAcceptor; +import org.eclipse.net4j.protocol.IProtocol; +import org.eclipse.net4j.tcp.ITCPAcceptor; +import org.eclipse.net4j.tcp.TCPUtil; +import org.eclipse.net4j.util.container.IManagedContainer; +import org.eclipse.net4j.util.container.ManagedContainer; +import org.eclipse.net4j.util.factory.Factory; +import org.eclipse.net4j.util.factory.ProductCreationException; +import org.eclipse.net4j.util.security.INegotiationContext; + +import org.eclipse.spi.net4j.Connector; +import org.eclipse.spi.net4j.InternalChannel; + +import java.nio.channels.SocketChannel; + +/** + * Creating Transport Connections + *

+ * This tutorial outlines the steps needed to create a Net4j {@link IConnector} and connect it to an {@link IAcceptor}. + *

+ * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus + * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna ac + * est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin nisi + * vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu erat ac + * risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec vehicula urna sollicitudin. Donec + * porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu sapien. Sed at metus et dolor tincidunt + * convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel urna. Suspendisse facilisis, libero ac + * ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. Sed a viverra metus. + * + * @author Eike Stepper + */ +public class CreatingTransportConnections +{ + /** + * Select a Transport Type + *

+ * Currently supported transport types are: + *

    + *
  • JVM to connect to an {@link IJVMAcceptor} in the same Java Virtual Machine. + *
  • TCP to connect to an {@link ITCPAcceptor} by means of a {@link SocketChannel}. + *
  • SSL an extension to the TCP transport that adds TLS/SSL security. + *
  • HTTP to connect to an {@link IHTTPAcceptor} that is made available by a servlet. + *
+ * Continue with {@link SetConnectionTimeout}. + * + * @see SetBufferCapacity + */ + public class SelectTransportType + { + } + + /** + * Setup a Wiring Container + *

+ * Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin nisi vestibulum nec + * vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu erat ac risus + * ultricies mattis vel nec nunc. + *

+ * {@link Snippets#snippet1() ContainerSetup.java} + *

+ * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus + * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna ac + * est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien sollicitudin + * nisi vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat eget. Integer eu + * erat ac risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec vehicula urna + * sollicitudin. Donec porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu sapien. Sed at + * metus et dolor tincidunt convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel urna. + * Suspendisse facilisis, libero ac ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. Sed a + * viverra metus. + */ + public class SetupWiringContainer + { + } + + /** + * Add Configuration Parameters + */ + public class AddConfigurationParameters + { + /** + * Set the Buffer Capacity + *

+ * {@link JMSConnector} + */ + public class SetBufferCapacity + { + } + + /** + * Set the Connection Timeout + *

+ * Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam eu nibh in erat dapibus accumsan. Aenean cursus + * lacinia dictum. Mauris non sem sapien. Vivamus sem ante, posuere a rhoncus ac, varius in nisi. Sed pulvinar urna + * ac est iaculis mattis. Ut eget massa felis, nec volutpat purus. In id aliquet mi. Duis euismod sapien + * sollicitudin nisi vestibulum nec vulputate urna euismod. Proin pulvinar ornare nunc, ac auctor elit placerat + * eget. Integer eu erat ac risus ultricies mattis vel nec nunc. Proin venenatis tellus sit amet dui congue nec + * vehicula urna sollicitudin. Donec porta, risus eu auctor semper, ante lectus lobortis sem, a luctus diam dui eu + * sapien. Sed at metus et dolor tincidunt convallis id a est. Donec quam nisl, scelerisque a feugiat id, mattis vel + * urna. Suspendisse facilisis, libero ac ultricies dictum, mi sem feugiat purus, ac aliquam metus purus sed leo. + * Sed a viverra metus. + */ + public class SetConnectionTimeout + { + } + } +} + +// ----------------------------------------------------------------------------- // + +/** + * @snippet + */ +class Snippets +{ + /** + * @callout Create a separate {@link IManagedContainer}. + * @callout Create a factory of type "jms" in the productGroup "org.eclipse.net4j.connectors". + * @callout Create a JMS connector. + * @callout The new container can not be used when inactive. + */ + public void snippet1() + { + // Create a dedicated container instance + IManagedContainer container = /* callout */new ManagedContainer(); + + // Register your custom factories + container.registerFactory( /* callout */new Factory("org.eclipse.net4j.connectors", "jms") + { + public IConnector create(String description) throws ProductCreationException + { + return /* callout */new JMSConnector(description); + } + }); + + // Use utility classes to register additional factories + Net4jUtil.prepareContainer(container); + TCPUtil.prepareContainer(container); + + // Do not forget to activate the container before you use it + /* callout */container.activate(); + } + + /** + * @callout The channel must not be null. + */ + public class JMSConnector extends Connector + { + public JMSConnector(String description) + { + } + + public void multiplexChannel(InternalChannel /* callout */channel) + { + } + + // snip + @Override + protected INegotiationContext createNegotiationContext() + { + return null; + } + + @Override + protected void registerChannelWithPeer(short channelID, long timeout, IProtocol protocol) + throws ChannelException + { + } + // snap + } +} diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/package-info.java new file mode 100644 index 0000000000..7f8770afdf --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/connectors/package-info.java @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ + +/** + * Connectors + *

+ * In this category you'll find a number of articles about physical transport connections: {@toc} + * + * @number 1 + */ +package org.eclipse.emf.cdo.doc.programmers.connectors; + diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/package-info.java new file mode 100644 index 0000000000..67b92e8bea --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/package-info.java @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ + +/** + * Programmer's Guide + * + * @number 1 + */ +package org.eclipse.emf.cdo.doc.programmers; + diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/ConnectingToRepositories.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/ConnectingToRepositories.java new file mode 100644 index 0000000000..a277a6dee4 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/ConnectingToRepositories.java @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ +package org.eclipse.emf.cdo.doc.programmers.sessions; + +/** + * Connecting To Repositories + */ +public class ConnectingToRepositories +{ + /** + * Set Buffer Capacity + */ + public class SetBufferCapacity + { + } + + /** + * Set Connection Timeout + */ + public class SetConnectionTimeout + { + } +} diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/package-info.java new file mode 100644 index 0000000000..a94b063643 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/programmers/sessions/package-info.java @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ + +/** + * Sessions + * + * @number 2 + */ +package org.eclipse.emf.cdo.doc.programmers.sessions; + diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/ConnectingToRepositories.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/ConnectingToRepositories.java deleted file mode 100644 index 33d47ce10a..0000000000 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/ConnectingToRepositories.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Eike Stepper - initial API and implementation - */ -package org.eclipse.emf.cdo.doc.sessions; - -/** - * Connecting To Repositories - */ -public class ConnectingToRepositories -{ - /** - * Set Buffer Capacity - */ - public class SetBufferCapacity - { - } - - /** - * Set Connection Timeout - */ - public class SetConnectionTimeout - { - } -} diff --git a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/package-info.java b/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/package-info.java deleted file mode 100644 index 597b7e244e..0000000000 --- a/plugins/org.eclipse.emf.cdo.doc/src/org/eclipse/emf/cdo/doc/sessions/package-info.java +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Eike Stepper - initial API and implementation - */ - -/** - * Sessions - */ -package org.eclipse.emf.cdo.doc.sessions; - diff --git a/plugins/org.eclipse.emf.cdo.doc/toc.xml b/plugins/org.eclipse.emf.cdo.doc/toc.xml index da31e92378..d71de8d81c 100644 --- a/plugins/org.eclipse.emf.cdo.doc/toc.xml +++ b/plugins/org.eclipse.emf.cdo.doc/toc.xml @@ -2,18 +2,20 @@ - + - - + + + + - - - + + + - + @@ -99,7 +101,7 @@ - + @@ -116,7 +118,7 @@ - + diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/buildTemplate.ant b/plugins/org.eclipse.emf.cdo.releng.doc/buildTemplate.ant index 9684775e21..8085dde11f 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/buildTemplate.ant +++ b/plugins/org.eclipse.emf.cdo.releng.doc/buildTemplate.ant @@ -177,11 +177,6 @@ - - - - - diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/TestCDODocumentation.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/TestCDODocumentation.java index 84dcf20340..aeac533fdc 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/TestCDODocumentation.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/TestCDODocumentation.java @@ -39,7 +39,7 @@ public class TestCDODocumentation public static void main(String[] args) { add("-sourcepath /develop/ws/cdo/plugins/org.eclipse.net4j.util.doc/src;/develop/ws/cdo/plugins/org.eclipse.net4j.db.doc/src;/develop/ws/cdo/plugins/org.eclipse.net4j.doc/src;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.doc/src"); - add("-subpackages org.eclipse.net4j.util.doc:org.eclipse.emf.cdo.doc.connectors:org.eclipse.emf.cdo.doc.sessions:org.eclipse.emf.cdo.doc.reference:org.eclipse.emf.cdo.doc.reference.api:org.eclipse.emf.cdo.doc.online:org.eclipse.emf.cdo.doc"); + add("-subpackages org.eclipse.net4j.util.doc:org.eclipse.emf.cdo.doc.programmers.connectors:org.eclipse.emf.cdo.doc.programmers.sessions:org.eclipse.emf.cdo.doc.reference:org.eclipse.emf.cdo.doc.reference.api:org.eclipse.emf.cdo.doc.online:org.eclipse.emf.cdo.doc:org.eclipse.emf.cdo.doc.programmers"); add("-doclet org.eclipse.emf.cdo.releng.doc.article.impl.ArticleDoclet"); add("-docletpath /develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng.doc/bin;/develop/bin/org.eclipse.emf.cdo.releng.doc.supplemental/bin;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore_2.7.0.v20110605-0747.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.common_2.7.0.v20110605-0747.jar"); add("-encoding ISO-8859-1"); diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Documentation.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Documentation.java index 9f91a28f22..1149c71905 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Documentation.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Documentation.java @@ -123,4 +123,6 @@ public interface Documentation extends StructuralElement */ EList getPlugins(); + void setDefaultElement(StructuralElement defaultElement); + } // Documentation diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleImpl.java index b9080a33e1..6bc286db8c 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleImpl.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleImpl.java @@ -9,14 +9,11 @@ package org.eclipse.emf.cdo.releng.doc.article.impl; import org.eclipse.emf.cdo.releng.doc.article.Article; import org.eclipse.emf.cdo.releng.doc.article.ArticlePackage; import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; -import org.eclipse.emf.cdo.releng.doc.article.util.ArticleUtil; -import org.eclipse.emf.cdo.releng.doc.article.util.HtmlWriter; import org.eclipse.emf.ecore.EClass; import com.sun.javadoc.ClassDoc; -import java.io.File; import java.io.IOException; /** @@ -63,19 +60,7 @@ public class ArticleImpl extends ChapterImpl implements Article @Override public void generate() throws IOException { - HtmlWriter out = null; - - try - { - File file = getOutputFile(); - file.getParentFile().mkdirs(); - out = new HtmlWriter(file); - - generate(out); - } - finally - { - ArticleUtil.close(out); - } + generate(getOutputFile()); } + } // ArticleImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CategoryImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CategoryImpl.java index ef4302bdef..e647a00afe 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CategoryImpl.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CategoryImpl.java @@ -7,14 +7,20 @@ package org.eclipse.emf.cdo.releng.doc.article.impl; import org.eclipse.emf.cdo.releng.doc.article.ArticlePackage; +import org.eclipse.emf.cdo.releng.doc.article.BodyElement; import org.eclipse.emf.cdo.releng.doc.article.Category; import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; import org.eclipse.emf.cdo.releng.doc.article.util.ArticleUtil; +import org.eclipse.emf.cdo.releng.doc.article.util.HtmlWriter; +import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import com.sun.javadoc.PackageDoc; +import java.io.File; +import java.io.IOException; + /** * An implementation of the model object 'Category'. *

@@ -62,4 +68,42 @@ public class CategoryImpl extends BodyImpl implements Category { return (PackageDoc)super.getDoc(); } + + @Override + public void generate() throws IOException + { + File targetFolder = getOutputFile(); + File sourceFolder = getDoc().position().file().getParentFile(); + for (File file : sourceFolder.listFiles()) + { + if (file.isFile()) + { + String name = file.getName(); + if (!name.endsWith(".java") && !name.equals("package-info.java")) + { + File targetFile = new File(targetFolder, name); + ArticleUtil.copyFile(file, targetFile); + } + } + } + + super.generate(); + generate(getTocTarget()); + } + + @Override + public void generate(HtmlWriter out) throws IOException + { + String title = getTitle(); + out.writeHeading(1, title); + + EList elements = getElements(); + BodyElementContainerImpl.generate(out, this, elements); + } + + @Override + protected File getTocTarget() + { + return new File(super.getTocTarget(), "summary.html"); + } } // CategoryImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DocumentationImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DocumentationImpl.java index ade2d44395..db5b54cc5a 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DocumentationImpl.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DocumentationImpl.java @@ -116,6 +116,8 @@ public class DocumentationImpl extends StructuralElementImpl implements Document */ protected EList plugins; + private StructuralElement defaultElement; + /** * * @@ -627,6 +629,16 @@ public class DocumentationImpl extends StructuralElementImpl implements Document return "Documentation"; } + public void setDefaultElement(StructuralElement defaultElement) + { + if (this.defaultElement != null) + { + System.err.println("Multiple default elements declared"); + } + + this.defaultElement = defaultElement; + } + @Override public RootDoc getDoc() { @@ -661,10 +673,15 @@ public class DocumentationImpl extends StructuralElementImpl implements Document try { + String href = "javadoc/overview-summary.html"; + if (defaultElement != null) + { + href = ((StructuralElementImpl)defaultElement).getTocHref(); + } writer.write("\n\n"); writer.write("\n\n"); - writer.write("\n"); + writer.write("\n"); generateTocEntries(writer, "\t"); diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SchemadocImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SchemadocImpl.java index b5c0a418d0..df534b86c3 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SchemadocImpl.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SchemadocImpl.java @@ -67,7 +67,7 @@ public class SchemadocImpl extends CategoryImpl implements Schemadoc { if (!exists) { - writer.write(prefix + "\n"); + writer.write(prefix + "\n"); exists = true; } diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/StructuralElementImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/StructuralElementImpl.java index 2928330930..b71b34c6f1 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/StructuralElementImpl.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/StructuralElementImpl.java @@ -153,6 +153,11 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St setParent(parent); this.path = path; this.doc = doc; + + if (ArticleUtil.isTagged(doc, "@default")) + { + getDocumentation().setDefaultElement(this); + } } final void setTitle(String title) @@ -194,7 +199,9 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St public StructuralElement getParent() { if (eContainerFeatureID() != ArticlePackage.STRUCTURAL_ELEMENT__PARENT) + { return null; + } return (StructuralElement)eContainer(); } @@ -216,24 +223,34 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St */ public void setParent(StructuralElement newParent) { - if (newParent != eInternalContainer() - || (eContainerFeatureID() != ArticlePackage.STRUCTURAL_ELEMENT__PARENT && newParent != null)) + if (newParent != eInternalContainer() || eContainerFeatureID() != ArticlePackage.STRUCTURAL_ELEMENT__PARENT + && newParent != null) { if (EcoreUtil.isAncestor(this, newParent)) + { throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + } NotificationChain msgs = null; if (eInternalContainer() != null) + { msgs = eBasicRemoveFromContainer(msgs); + } if (newParent != null) + { msgs = ((InternalEObject)newParent).eInverseAdd(this, ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN, StructuralElement.class, msgs); + } msgs = basicSetParent(newParent, msgs); if (msgs != null) + { msgs.dispatch(); + } } else if (eNotificationRequired()) + { eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.STRUCTURAL_ELEMENT__PARENT, newParent, newParent)); + } } /** @@ -354,7 +371,9 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St return ((InternalEList)(InternalEList)getChildren()).basicAdd(otherEnd, msgs); case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: if (eInternalContainer() != null) + { msgs = eBasicRemoveFromContainer(msgs); + } return basicSetParent((StructuralElement)otherEnd, msgs); } return super.eInverseAdd(otherEnd, featureID, msgs); @@ -506,7 +525,9 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St public String toString() { if (eIsProxy()) + { return super.toString(); + } StringBuffer result = new StringBuffer(super.toString()); result.append(" (title: "); @@ -547,6 +568,23 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St } } + protected void generate(File file) throws IOException + { + HtmlWriter out = null; + + try + { + file.getParentFile().mkdirs(); + out = new HtmlWriter(file); + + generate(out); + } + finally + { + ArticleUtil.close(out); + } + } + protected void generateTocEntries(BufferedWriter writer, String prefix) throws IOException { List children = new ArrayList(getChildren()); @@ -567,11 +605,19 @@ public abstract class StructuralElementImpl extends LinkTargetImpl implements St protected void generateTocEntry(BufferedWriter writer, String prefix) throws IOException { - File projectFolder = getDocumentation().getOutputFile().getParentFile(); - String href = ArticleUtil.createLink(projectFolder, getOutputFile()); - - writer.write(prefix + "\n"); + writer.write(prefix + "\n"); generateTocEntries(writer, prefix + "\t"); writer.write(prefix + "\n"); } + + protected File getTocTarget() + { + return getOutputFile(); + } + + protected String getTocHref() + { + File projectFolder = getDocumentation().getOutputFile().getParentFile(); + return ArticleUtil.createLink(projectFolder, getTocTarget()); + } } // StructuralElementImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleUtil.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleUtil.java index c2457d7595..772db20c19 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleUtil.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleUtil.java @@ -21,8 +21,12 @@ import com.sun.javadoc.Tag; import java.io.Closeable; import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; import java.io.Reader; import java.util.ArrayList; import java.util.List; @@ -152,8 +156,8 @@ public final class ArticleUtil public static String readFile(File file) { - Reader reader = null; char[] buffer = new char[(int)file.length()]; + Reader reader = null; try { @@ -171,6 +175,43 @@ public final class ArticleUtil } } + public static void copyFile(File source, File target) + { + int size = (int)source.length(); + byte[] buffer = new byte[size]; + InputStream in = null; + + try + { + in = new FileInputStream(source); + in.read(buffer); + } + catch (IOException ex) + { + throw new RuntimeException(ex); + } + finally + { + close(in); + } + + OutputStream out = null; + + try + { + out = new FileOutputStream(target); + out.write(buffer); + } + catch (IOException ex) + { + throw new RuntimeException(ex); + } + finally + { + close(out); + } + } + public static boolean containsFile(File folder, File file) { if (!folder.isDirectory()) diff --git a/plugins/org.eclipse.net4j.db.doc/src/org/eclipse/net4j/db/doc/online/package-info.java b/plugins/org.eclipse.net4j.db.doc/src/org/eclipse/net4j/db/doc/online/package-info.java index 47c961521e..e422207ce4 100644 --- a/plugins/org.eclipse.net4j.db.doc/src/org/eclipse/net4j/db/doc/online/package-info.java +++ b/plugins/org.eclipse.net4j.db.doc/src/org/eclipse/net4j/db/doc/online/package-info.java @@ -10,7 +10,7 @@ */ /** - * Online + * Online Docs * * @number 555 */ diff --git a/plugins/org.eclipse.net4j.doc/src/org/eclipse/net4j/doc/online/package-info.java b/plugins/org.eclipse.net4j.doc/src/org/eclipse/net4j/doc/online/package-info.java index 2e7d3e23a0..1a065e7d5c 100644 --- a/plugins/org.eclipse.net4j.doc/src/org/eclipse/net4j/doc/online/package-info.java +++ b/plugins/org.eclipse.net4j.doc/src/org/eclipse/net4j/doc/online/package-info.java @@ -10,7 +10,7 @@ */ /** - * Online + * Online Docs * * @number 555 */ diff --git a/plugins/org.eclipse.net4j.util.doc/src/org/eclipse/net4j/util/doc/online/package-info.java b/plugins/org.eclipse.net4j.util.doc/src/org/eclipse/net4j/util/doc/online/package-info.java index ec4f8a74ad..bf21c6c058 100644 --- a/plugins/org.eclipse.net4j.util.doc/src/org/eclipse/net4j/util/doc/online/package-info.java +++ b/plugins/org.eclipse.net4j.util.doc/src/org/eclipse/net4j/util/doc/online/package-info.java @@ -10,7 +10,7 @@ */ /** - * Online + * Online Docs * * @number 555 */ -- cgit v1.2.3