diff options
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse')
74 files changed, 12048 insertions, 465 deletions
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/AssembleScripts.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/AssembleScripts.java index 5807fb2119..a3af60b168 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/AssembleScripts.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/AssembleScripts.java @@ -73,7 +73,7 @@ public class AssembleScripts if (plugin.isDirectory())
{
Properties buildProperties = getProperties(new File(plugin, "build.properties"));
- String javadocProject = buildProperties.getProperty("org.eclipse.emf.cdo.releng.javadoc.project");
+ String javadocProject = buildProperties.getProperty("doc.project");
if (javadocProject != null)
{
Set<String> excludedPackages = getExcludedPackages(buildProperties);
@@ -84,6 +84,8 @@ public class AssembleScripts for (JavaDoc javaDoc : ANTLIB.getJavaDocs())
{
+ assembleArticleOptions(javaDoc);
+
javaDoc.generateAnt();
javaDoc.generateToc();
}
@@ -113,6 +115,7 @@ public class AssembleScripts throws IOException, BundleException
{
SourcePlugin sourcePlugin = ANTLIB.getSourcePlugin(plugin.getName());
+ Set<String> packageNames = sourcePlugin.getPackageNames();
JavaDoc javaDoc = ANTLIB.getJavaDoc(javadocProject);
javaDoc.getSourcePlugins().add(sourcePlugin);
@@ -125,7 +128,7 @@ public class AssembleScripts {
javaDoc.getSourceFolders().add(plugin.getName() + "/src/" + packageName.replace('.', '/'));
javaDoc.getPackageNames().add(packageName);
- sourcePlugin.getPackageNames().add(packageName);
+ packageNames.add(packageName);
}
else
{
@@ -134,6 +137,29 @@ public class AssembleScripts }
}
+ private static void assembleArticleOptions(JavaDoc javaDoc) throws IOException, BundleException
+ {
+ File plugin = javaDoc.getProject();
+ Manifest manifest = getManifest(plugin);
+
+ ManifestElement[] manifestElements = getManifestElements(manifest);
+ if (manifestElements == null || manifestElements.length == 0)
+ {
+ System.err.println("Warning: No public packages in " + plugin.getName());
+ }
+ else
+ {
+ for (ManifestElement manifestElement : manifestElements)
+ {
+ if (isPublic(manifestElement))
+ {
+ String packageName = manifestElement.getValue().trim();
+ javaDoc.getArticlePackages().add(packageName);
+ }
+ }
+ }
+ }
+
private static boolean isPublic(ManifestElement manifestElement)
{
return manifestElement.getDirective("x-internal") == null && manifestElement.getDirective("x-friends") == null;
@@ -162,8 +188,7 @@ public class AssembleScripts {
Attributes attributes = manifest.getMainAttributes();
String exportPackage = attributes.getValue(EXPORT_PACKAGE);
- ManifestElement[] manifestElements = ManifestElement.parseHeader(EXPORT_PACKAGE, exportPackage);
- return manifestElements;
+ return ManifestElement.parseHeader(EXPORT_PACKAGE, exportPackage);
}
private static Manifest getManifest(File plugin) throws IOException
@@ -186,7 +211,7 @@ public class AssembleScripts }
}
- private static Properties getProperties(File file) throws IOException
+ public static Properties getProperties(File file)
{
Properties properties = new Properties();
@@ -199,11 +224,22 @@ public class AssembleScripts in = new FileInputStream(file);
properties.load(in);
}
+ catch (IOException ex)
+ {
+ throw new RuntimeException(ex);
+ }
finally
{
if (in != null)
{
- in.close();
+ try
+ {
+ in.close();
+ }
+ catch (IOException ex)
+ {
+ ex.printStackTrace();
+ }
}
}
}
@@ -211,6 +247,37 @@ public class AssembleScripts return properties;
}
+ public static List<String> getDependencies(File projectFolder)
+ {
+ List<String> result = new ArrayList<String>();
+
+ Properties buildProperties = getProperties(new File(projectFolder, "build.properties"));
+ String depends = buildProperties.getProperty("doc.depends");
+ if (depends != null)
+ {
+ StringTokenizer tokenizer = new StringTokenizer(depends, ",");
+ while (tokenizer.hasMoreTokens())
+ {
+ String depend = tokenizer.nextToken().trim();
+ result.add(depend);
+ }
+ }
+
+ return result;
+ }
+
+ public static String getPluginName(File projectFolder)
+ {
+ Properties pluginProperties = getProperties(new File(projectFolder, "plugin.properties"));
+ String pluginName = pluginProperties.getProperty("pluginName");
+ if (pluginName == null)
+ {
+ pluginName = "Plugin " + projectFolder.getName();
+ }
+
+ return pluginName;
+ }
+
private static List<String> sort(Collection<String> collection)
{
List<String> result = new ArrayList<String>(collection);
@@ -289,17 +356,7 @@ public class AssembleScripts javaDoc = new JavaDoc(projectName);
javaDocs.put(projectName, javaDoc);
- Properties buildProperties = getProperties(new File(javaDoc.getProject(), "build.properties"));
- String depends = buildProperties.getProperty("org.eclipse.emf.cdo.releng.javadoc.depends");
- if (depends != null)
- {
- StringTokenizer tokenizer = new StringTokenizer(depends, ",");
- while (tokenizer.hasMoreTokens())
- {
- String depend = tokenizer.nextToken().trim();
- javaDoc.getDependencies().add(depend);
- }
- }
+ javaDoc.getDependencies().addAll(getDependencies(javaDoc.getProject()));
}
return javaDoc;
@@ -419,12 +476,7 @@ public class AssembleScripts public SourcePlugin(String projectName) throws IOException
{
this.projectName = projectName;
- Properties pluginProperties = getProperties(new File(getProject(), "plugin.properties"));
- label = pluginProperties.getProperty("pluginName");
- if (label == null)
- {
- label = "Plugin " + projectName;
- }
+ label = getPluginName(getProject());
}
@Override
@@ -575,6 +627,8 @@ public class AssembleScripts private Set<String> packageExcludes = new HashSet<String>();
+ private Set<String> articlePackages = new HashSet<String>();
+
public JavaDoc(String projectName)
{
this.projectName = projectName;
@@ -642,6 +696,11 @@ public class AssembleScripts return packageExcludes;
}
+ public Set<String> getArticlePackages()
+ {
+ return articlePackages;
+ }
+
public void generateAnt() throws IOException
{
File project = getProject();
@@ -671,6 +730,13 @@ public class AssembleScripts {
writeGenerationWarning(writer);
}
+ else if ("<!-- ARTICLE SKIP -->".equals(id))
+ {
+ if (articlePackages.isEmpty())
+ {
+ writer.write("\t<property name=\"article.skip\" value=\"true\" />\n");
+ }
+ }
else if ("<!-- SOURCE FOLDERS -->".equals(id))
{
for (String sourceFolder : sort(sourceFolders))
@@ -718,7 +784,23 @@ public class AssembleScripts writer.write("\t\t\t<excludepackage name=\"" + packageExclude + "\" />\n");
}
}
- else if ("<!-- DEPENDENCIES -->".equals(id))
+ else if ("<!-- ARTICLE PACKAGES -->".equals(id))
+ {
+ for (String articlePackage : sort(articlePackages))
+ {
+ writer.write("\t\t\t<package name=\"" + articlePackage + "\" />\n");
+ }
+
+ for (String dependency : sort(getAllDependencies()))
+ {
+ JavaDoc javaDoc = ANTLIB.getJavaDoc(dependency);
+ for (String articlePackage : sort(javaDoc.getArticlePackages()))
+ {
+ writer.write("\t\t\t<package name=\"" + articlePackage + "\" />\n");
+ }
+ }
+ }
+ else if ("<!-- JAVADOC DEPENDENCIES -->".equals(id))
{
for (String dependency : sort(getAllDependencies()))
{
@@ -726,6 +808,13 @@ public class AssembleScripts + "/javadoc\" offline=\"true\" packagelistloc=\"plugins/" + dependency + "/javadoc\" />\n");
}
}
+ else if ("<!-- ARTICLE DEPENDENCIES -->".equals(id))
+ {
+ for (String dependency : sort(getAllDependencies()))
+ {
+ writer.write("\t\t\t\t<include name=\"" + dependency + "/src/**/*.java\" />\n");
+ }
+ }
else if ("<!-- GROUPS -->".equals(id))
{
for (SourcePlugin sourcePlugin : getSortedSourcePlugins())
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 new file mode 100644 index 0000000000..faa0357f75 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/TestCDODocumentation.java @@ -0,0 +1,56 @@ +/** + * 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.releng.doc; + +import org.eclipse.emf.cdo.releng.doc.article.impl.ArticleDoclet; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Eike Stepper + */ +public class TestCDODocumentation +{ + private static List<String> arguments = new ArrayList<String>(); + + private static void add(String argument) + { + int space = argument.trim().indexOf(' '); + if (space == -1) + { + arguments.add(argument); + } + else + { + arguments.add(argument.substring(0, space)); + add(argument.substring(space + 1).trim()); + } + } + + 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"); + 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"); + add("-private"); + add("-classpath /develop/ws/cdo/_target/plugins/com.db4o_7.4.155.v20110215-0651.jar;/develop/ws/cdo/_target/plugins/com.google.collect.source_1.0.0.v201105210816.jar;/develop/ws/cdo/_target/plugins/com.google.collect_1.0.0.v201105210816.jar;/develop/ws/cdo/_target/plugins/com.google.inject.source_2.0.0.v201105231817.jar;/develop/ws/cdo/_target/plugins/com.google.inject_2.0.0.v201105231817.jar;/develop/ws/cdo/_target/plugins/com.ibm.icu.source_4.4.2.v20110208.jar;/develop/ws/cdo/_target/plugins/com.ibm.icu_4.4.2.v20110208.jar;/develop/ws/cdo/_target/plugins/com.jcraft.jsch.source_0.1.41.v201101211617.jar;/develop/ws/cdo/_target/plugins/com.jcraft.jsch_0.1.41.v201101211617.jar;/develop/ws/cdo/_target/plugins/com.mysql.jdbc_5.1.11.jar;/develop/ws/cdo/_target/plugins/javax.persistence_2.0.1.jar;/develop/ws/cdo/_target/plugins/javax.servlet.jsp.source_2.0.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/javax.servlet.jsp_2.0.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/javax.servlet.source_2.5.0.v201103041518.jar;/develop/ws/cdo/_target/plugins/javax.servlet_2.5.0.v201103041518.jar;/develop/ws/cdo/_target/plugins/javax.xml_1.3.4.v201005080400.jar;/develop/ws/cdo/_target/plugins/lpg.runtime.java.source_2.0.17.v201004271640.jar;/develop/ws/cdo/_target/plugins/lpg.runtime.java_2.0.17.v201004271640.jar;/develop/ws/cdo/_target/plugins/org.antlr.runtime.source_3.2.0.v201101311130.jar;/develop/ws/cdo/_target/plugins/org.antlr.runtime_3.2.0.v201101311130.jar;/develop/ws/cdo/_target/plugins/org.aopalliance_1.0.0.v201105210816.jar;/develop/ws/cdo/_target/plugins/org.apache.ant.source_1.8.2.v20110505-1300.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/etc/ant-bootstrap.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-antlr.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-bcel.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-bsf.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-log4j.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-oro.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-regexp.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-resolver.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-xalan2.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-commons-logging.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-commons-net.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-jai.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-javamail.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-jdepend.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-jmf.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-jsch.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-junit.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-junit4.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-launcher.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-netrexx.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-swing.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant-testutil.jar;/develop/ws/cdo/_target/plugins/org.apache.ant_1.8.2.v20110505-1300/lib/ant.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.bridge.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.bridge_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.css.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.css_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.dom.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.dom.svg.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.dom.svg_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.dom_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.ext.awt.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.ext.awt_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.parser.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.parser_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.pdf_1.6.0.v201105071520.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.svggen.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.svggen_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.transcoder.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.transcoder_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.util.gui.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.util.gui_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.util.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.util_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.xml.source_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.batik.xml_1.6.0.v201011041432.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.cli.source_1.2.0.v201105210650.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.cli_1.2.0.v201105210650.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.codec.source_1.3.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.codec_1.3.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.el.source_1.0.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.el_1.0.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.httpclient.source_3.1.0.v201012070820.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.httpclient_3.1.0.v201012070820.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.lang.source_2.4.0.v201005080502.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.lang_2.4.0.v201005080502.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.logging_1.0.4.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.commons.logging_1.1.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.derby.source_10.5.1.1_201105231903.jar;/develop/ws/cdo/_target/plugins/org.apache.derby_10.5.1.1_201105231903.jar;/develop/ws/cdo/_target/plugins/org.apache.jasper.source_5.5.17.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.jasper_5.5.17.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.log4j.source_1.2.15.v201012070815.jar;/develop/ws/cdo/_target/plugins/org.apache.log4j_1.2.13.v200903072027.jar;/develop/ws/cdo/_target/plugins/org.apache.log4j_1.2.15.v201012070815.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.analysis.source_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.analysis_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.core.source_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.core_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.highlighter.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.highlighter_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.memory.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.memory_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.misc.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.misc_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.queries.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.queries_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.snowball.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.snowball_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.source_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.spellchecker.source_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene.spellchecker_2.9.1.v20100421-0704.jar;/develop/ws/cdo/_target/plugins/org.apache.lucene_2.9.1.v201101211721.jar;/develop/ws/cdo/_target/plugins/org.apache.xerces_2.9.0.v201101211617.jar;/develop/ws/cdo/_target/plugins/org.apache.xml.resolver_1.2.0.v201005080400.jar;/develop/ws/cdo/_target/plugins/org.apache.xml.serializer_2.7.1.v201005080400.jar;/develop/ws/cdo/_target/plugins/org.dom4j_1.6.1.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.core.source_3.2.300.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.core_3.2.300.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.launching.source_1.0.100.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.launching_1.0.100.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.ui.source_3.5.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ant.ui_3.5.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare.core.source_3.5.200.I20110208-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare.core_3.5.200.I20110208-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare.source_3.5.200.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare.win32.source_1.0.200.I20110510-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare.win32_1.0.200.I20110510-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.compare_3.5.200.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.boot_3.1.200.v20100505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.commands.source_3.6.0.I20110111-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.commands_3.6.0.I20110111-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.contenttype.source_3.4.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.contenttype_3.4.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.beans.source_1.2.100.I20100824-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.beans_1.2.100.I20100824-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.observable.source_1.4.0.I20110222-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.observable_1.4.0.I20110222-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.property.source_1.4.0.I20110222-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.property_1.4.0.I20110222-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding.source_1.4.0.I20110111-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.databinding_1.4.0.I20110111-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.expressions.source_3.4.300.v20110228.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.expressions_3.4.300.v20110228.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.externaltools.source_1.0.100.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.externaltools_1.0.100.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filebuffers.source_3.5.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filebuffers_3.5.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.aix.ppc_1.1.0.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.hpux.ia64_32_1.0.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.linux.x86_1.4.0.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.linux.x86_64_1.2.0.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.macosx_1.3.0.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.solaris.sparc_1.2.0.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.source_1.3.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.win32.x86_1.1.300.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem.win32.x86_64_1.1.300.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.filesystem_1.3.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.jobs.source_3.5.100.v20110404.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.jobs_3.5.100.v20110404.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net.linux.x86_1.1.200.I20110419-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net.linux.x86_64_1.1.0.I20110331-0827.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net.source_1.2.100.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net.win32.x86_1.0.100.I20110331-0827.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net.win32.x86_64_1.0.100.I20110331-0827.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.net_1.2.100.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.resources.source_3.7.100.v20110510-0712.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.resources.win32.x86_3.5.100.v20110423-0524.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.resources_3.7.100.v20110510-0712.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility.auth.source_3.2.200.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility.auth_3.2.200.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility.registry.source_3.5.0.v20110505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility.registry_3.5.0.v20110505/runtime_registry_compatibility.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility.source_3.2.100.v20100505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.compatibility_3.2.100.v20100505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime.source_3.7.0.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.runtime_3.7.0.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.variables.source_3.2.500.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.core.variables_3.2.500.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.debug.core.source_3.7.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.debug.core_3.7.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.debug.ui.source_3.7.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.debug.ui_3.7.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.draw2d.source_3.7.0.v20110425-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.draw2d_3.7.0.v20110425-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.filetransfer.source_5.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.filetransfer_5.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.identity.source_3.1.100.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.identity_3.1.100.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.httpclient.source_4.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.httpclient.ssl.source_1.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.httpclient.ssl_1.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.httpclient_4.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.source_3.2.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.ssl.source_1.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer.ssl_1.0.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.provider.filetransfer_3.2.0.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.source_3.1.300.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.ssl.source_1.0.100.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf.ssl_1.0.100.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ecf_3.1.300.v20110531-2218.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ant.source_2.7.0.v20100905-1633.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ant_2.7.0.v20100905-1633.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ecore.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ecore.ui.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ecore.ui_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ecore_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.source_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ui.source_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen.ui_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.codegen_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.common.source_2.7.0.v20110605-0747.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.common.ui.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.common.ui_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.common_2.7.0.v20110605-0747.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.converter.source_2.5.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.converter_2.5.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.databinding.edit.source_1.2.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.databinding.edit_1.2.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.databinding.source_1.2.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.databinding_1.2.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.change.edit.source_2.5.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.change.edit_2.5.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.change.source_2.7.0.v20110408-2116.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.change_2.7.0.v20110408-2116.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.edit.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.edit_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.editor.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.editor_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.source_2.7.0.v20110605-0747.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.xmi.source_2.7.0.v20110520-1406.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore.xmi_2.7.0.v20110520-1406.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecore_2.7.0.v20110605-0747.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.diagram.source_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.diagram.ui.outline.source_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.diagram.ui.outline_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.diagram_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.filters.source_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.filters_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.properties.source_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.properties_1.0.0.v20110601-1615.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.source_1.0.0.v20110608-1236.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.tabbedproperties.source_1.0.0.v20110601-1614.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools.tabbedproperties_1.0.0.v20110601-1614.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.ecoretools_1.0.0.v20110608-1236.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.edit.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.edit.ui.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.edit.ui_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.edit_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.exporter.source_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.exporter_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.ecore.source_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.ecore_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.java.source_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.java_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.rose.source_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.rose_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer.source_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.importer_2.6.0.v20100521-1846.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore.editor_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2ecore.editor.source_2.5.0.v20110120-0110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2ecore.editor_2.5.0.v20110120-0110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2ecore.source_2.7.0.v20110331-2022.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2ecore_2.7.0.v20110331-2022.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2xml.source_2.7.0.v20110331-2022.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2xml.ui.source_2.6.0.v20110120-0109.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2xml.ui_2.6.0.v20110120-0109.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore2xml_2.7.0.v20110331-2022.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ecore_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.source_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ui.source_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping.ui_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mapping_2.7.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe.core.source_1.1.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe.core_1.1.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe.utils.source_1.1.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe.utils_1.1.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe2.lib.source_2.0.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe2.lib_2.0.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe2.runtime.source_2.0.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.mwe2.runtime_2.0.0.v201106060409.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.annotations.source_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.annotations_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.eclipse.source_1.1.2.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.eclipse_1.1.2.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate.eclipse.source_1.1.2.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate.eclipse_1.1.2.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate.mapper.source_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate.mapper_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate.source_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.hibernate_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo.source_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.teneo_1.2.0.v201107080556.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.transaction.source_1.4.0.v20100331-1738.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.transaction.ui.source_1.4.0.v20090819-1300.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.transaction.ui_1.4.0.v20090819-1300.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.transaction_1.4.0.v20100331-1738.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation.source_1.4.0.v20100428-2315.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation.ui.ide.source_1.3.0.v200901271722.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation.ui.ide_1.3.0.v200901271722.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation.ui.source_1.3.0.v200901271722.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation.ui_1.3.0.v200901271722.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.validation_1.4.0.v20100428-2315.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.workspace.source_1.4.0.v20100224-1706.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.workspace.ui.source_1.3.0.v200901271819.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.workspace.ui_1.3.0.v200901271819.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf.workspace_1.4.0.v20100224-1706.jar;/develop/ws/cdo/_target/plugins/org.eclipse.emf_2.6.0.v20110606-0949.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.app.source_1.3.100.v20110321.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.app_1.3.100.v20110321.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.common.source_3.6.0.v20110523.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.common_3.6.0.v20110523.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.ds.source_1.3.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.ds_1.3.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.event.source_1.2.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.event_1.2.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.frameworkadmin.equinox.source_1.0.300.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.frameworkadmin.equinox_1.0.300.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.frameworkadmin.source_2.0.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.frameworkadmin_2.0.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.jetty.source_2.0.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.jetty_2.0.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.registry.source_1.1.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.registry_1.1.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.servlet.source_1.1.200.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.http.servlet_1.1.200.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.jsp.jasper.registry.source_1.0.200.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.jsp.jasper.registry_1.0.200.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.jsp.jasper.source_1.0.300.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.jsp.jasper_1.0.300.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.launcher.source_1.2.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.artifact.repository.source_1.1.100.v20110519.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.artifact.repository_1.1.100.v20110519.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.console.source_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.console_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.core.source_2.1.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.core_2.1.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.director.app.source_1.0.300.v20110505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.director.app_1.0.300.v20110505.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.director.source_2.1.0.v20110504-1715.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.director_2.1.0.v20110504-1715.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.directorywatcher.source_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.directorywatcher_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.engine.source_2.1.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.engine_2.1.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.extensionlocation.source_1.2.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.extensionlocation_1.2.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.garbagecollector.source_1.0.200.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.garbagecollector_1.0.200.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.jarprocessor.source_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.jarprocessor_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.metadata.repository.source_1.2.0.v20110511-1359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.metadata.repository_1.2.0.v20110511-1359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.metadata.source_2.1.0.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.metadata_2.1.0.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.operations.source_2.1.0.v20110511-1821.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.operations_2.1.0.v20110511-1821.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.publisher.eclipse.source_1.0.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.publisher.eclipse_1.0.0.v20110511/ant_tasks/pdepublishing-ant.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.publisher.eclipse_1.0.0.v20110511/pdepublishing.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.publisher.source_1.2.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.publisher_1.2.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ql.source_2.0.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ql_2.0.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.reconciler.dropins.source_1.1.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.reconciler.dropins_1.1.100.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.repository.source_2.1.0.v20110601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.repository.tools.source_2.0.100.v20110512-1320.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.repository.tools_2.0.100.v20110512-1320.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.repository_2.1.0.v20110601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.touchpoint.eclipse.source_2.1.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_2.1.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.touchpoint.natives.source_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.touchpoint.natives_1.0.300.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.transport.ecf.source_1.0.0.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.transport.ecf_1.0.0.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.importexport.source_1.0.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.importexport_1.0.0.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler.source_1.0.100.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler_1.0.100.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.sdk.source_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.sdk_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui.source_2.1.0.v20110601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.ui_2.1.0.v20110601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.updatechecker.source_1.1.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.updatechecker_1.1.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.updatesite.source_1.0.300.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.p2.updatesite_1.0.300.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.preferences.source_3.4.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.preferences_3.4.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.registry.source_3.5.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.registry_3.5.100.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.macosx.source_1.100.100.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.macosx_1.100.100.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.source_1.1.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.ui.source_1.1.0.v20101004.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.ui_1.1.0.v20101004.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.win32.x86.source_1.0.200.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.win32.x86_1.0.200.v20100503.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.win32.x86_64.source_1.0.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security.win32.x86_64_1.0.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.security_1.1.0.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.simpleconfigurator.manipulator.source_2.0.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.simpleconfigurator.manipulator_2.0.0.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.simpleconfigurator.source_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.simpleconfigurator_1.0.200.v20110502-1955.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.util.source_1.0.300.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.equinox.util_1.0.300.v20110502.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gef.source_3.7.0.v20110407-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gef_3.7.0.v20110407-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.codegen.edit.source_2.2.100.v20100309-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.codegen.edit_2.2.100.v20100309-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.codegen.source_2.2.200.v20101209-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.codegen_2.2.200.v20101209-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.common.source_1.2.0.v20101217-1532.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.common_1.2.0.v20101217-1532.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.graphdef.codegen.source_2.0.101.v20100901-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.graphdef.codegen_2.0.101.v20100901-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.graphdef.source_2.0.100.v20101215-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.graphdef_2.0.100.v20101215-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.core.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.core_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.action.ide.source_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.action.ide_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.action.source_1.5.0.v20110607-1200.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.action_1.5.0.v20110607-1200.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.printing.source_1.4.0.v20100223-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.printing.win32.source_1.4.0.v20100223-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.printing.win32_1.4.0.v20100223-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.printing_1.4.0.v20100223-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.action.source_1.4.0.v20100430-1518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.action_1.4.0.v20100430-1518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.dnd.ide.source_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.dnd.ide_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.dnd.source_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.dnd_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.properties.source_1.3.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.properties_1.3.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services.source_1.3.1.v20101118-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.services_1.3.1.v20101118-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui.source_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.common.ui_1.5.0.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.core.source_1.4.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.core_1.4.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.actions.source_1.4.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.actions_1.4.1.v20101221-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.dnd.source_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.dnd_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.geoshapes.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.geoshapes_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.printing.render.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.printing.render_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.printing.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.printing_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.properties.source_1.4.2.v20101129-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.properties_1.4.2.v20101129-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.providers.ide.source_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.providers.ide_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.providers.source_1.5.0.v20110216-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.providers_1.5.0.v20110216-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.render.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.render_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide.source_1.2.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide_1.2.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.resources.editor.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.resources.editor_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui.source_1.5.0.v20110309-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.diagram.ui_1.5.0.v20110309-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui.render.awt.source_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui.render.awt_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui.render.source_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui.render_1.4.1.v20101119-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui.source_1.5.0.v20110505-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.draw2d.ui_1.5.0.v20110505-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.clipboard.core.source_1.5.0.v20110529-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.clipboard.core_1.5.0.v20110529-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.commands.core.source_1.4.0.v20100423-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.commands.core_1.4.0.v20100423-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.core.source_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.core_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.type.core.source_1.4.0.v20100423-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.type.core_1.4.0.v20100423-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.type.ui.source_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.type.ui_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.ui.properties.source_1.5.0.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.ui.properties_1.5.0.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.ui.source_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.emf.ui_1.2.0.v20090403-1720.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.gef.ui.source_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.gef.ui_1.4.1.v20101222-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation.edit.source_1.4.0.v20100512-1416.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation.edit_1.4.0.v20100512-1416.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation.providers.source_1.3.0.v20100115-2350.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation.providers_1.3.0.v20100115-2350.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation.source_1.5.0.v20110309-2159.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.runtime.notation_1.5.0.v20110309-2159.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.source_1.4.1.v20100716-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.validate.source_1.2.0.v20100302-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.validate_1.2.0.v20100302-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.xpand.qvtlibrary.source_1.1.0.v20100309-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.xpand.qvtlibrary_1.1.0.v20100309-2359.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.xpand.source_2.1.0.v20101217-1532.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf.xpand_2.1.0.v20101217-1532.jar;/develop/ws/cdo/_target/plugins/org.eclipse.gmf_1.4.1.v20100716-2230.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.appserver.source_3.1.400.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.appserver_3.1.400.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.base.source_3.6.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.base_3.6.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.source_3.5.100.v20110426.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.ui.source_3.5.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.ui_3.5.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.webapp.source_3.6.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help.webapp_3.6.0.v20110518.jar;/develop/ws/cdo/_target/plugins/org.eclipse.help_3.5.100.v20110426.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.core.source_3.3.500.v20110420-1015.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.core_3.3.500.v20110420-1015.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.pluggable.core.source_1.0.400.v20110305-1450.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.pluggable.core_1.0.400.v20110305-1450.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.ui.source_3.3.300.v20110305-1450.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.apt.ui_3.3.300.v20110305-1450.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.compiler.apt.source_1.0.400.v0110509-1300.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.compiler.apt_1.0.400.v0110509-1300.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.compiler.tool.source_1.0.100.v_B61.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.compiler.tool_1.0.100.v_B61.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.core.manipulation.source_1.4.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.core.manipulation_1.4.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.core.source_3.7.0.v_B61.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.core_3.7.0.v_B61.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.debug.source_3.7.0.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.debug.ui.source_3.6.0.v20110512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.debug.ui_3.6.0.v20110512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.debug_3.7.0.v20110509/jdi.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.debug_3.7.0.v20110509/jdimodel.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit.core.source_3.7.0.v20110518-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit.core_3.7.0.v20110518-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit.runtime.source_3.4.300.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit.runtime_3.4.300.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit.source_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit4.runtime.source_1.1.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit4.runtime_1.1.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.junit_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching.macosx.source_3.2.100.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching.macosx_3.2.100.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching.source_3.6.0.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching.ui.macosx.source_1.0.100.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching.ui.macosx_1.0.100.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.launching_3.6.0.v20110509.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.source_3.7.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.ui.source_3.7.0.v20110531-1200.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt.ui_3.7.0.v20110531-1200.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jdt_3.7.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface.databinding.source_1.5.0.I20100907-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface.databinding_1.5.0.I20100907-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface.source_3.7.0.I20110522-1430.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface.text.source_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface.text_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jface_3.7.0.I20110522-1430.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jsch.core.source_1.1.300.I20110514-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jsch.core_1.1.300.I20110514-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jsch.ui.source_1.1.300.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.jsch.ui_1.1.300.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ltk.core.refactoring.source_3.5.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ltk.core.refactoring_3.5.200.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ltk.ui.refactoring.source_3.6.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ltk.ui.refactoring_3.6.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.common.source_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.common_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.cst.parser.source_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.cst.parser_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.ecore.imperativeocl.source_3.0.0.v20091209-1553.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.ecore.imperativeocl_3.0.0.v20091209-1553.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.emf.util.source_2.0.100.v20100122-1411.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.emf.util_2.0.100.v20100122-1411.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.project.source_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.project_2.1.0.v20100524-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.runtime.source_2.1.0.v20100606-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.runtime_2.1.0.v20100606-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml.source_3.0.0.v20100606-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.m2m.qvt.oml_3.0.0.v20100606-1530.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ocl.ecore.source_3.1.0.v20110510-2118.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ocl.ecore_3.1.0.v20110510-2118.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ocl.source_3.1.0.v20110606-1427.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ocl_3.1.0.v20110606-1427.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi.services.source_3.3.0.v20110513.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi.services_3.3.0.v20110513.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi.source_3.7.0.v20110613.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi.util.source_3.2.200.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi.util_3.2.200.v20110110.jar;/develop/ws/cdo/_target/plugins/org.eclipse.osgi_3.7.0.v20110613.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.api.tools.source_1.0.300.v20110523-1600.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.api.tools.ui.source_1.0.300.v20110523-1600.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.api.tools.ui_1.0.300.v20110523-1600.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.api.tools_1.0.300.v20110523-1600.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.build.source_3.7.0.v20110512-1320.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/lib/pdebuild-ant.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.build_3.7.0.v20110512-1320/pdebuild.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.core.source_3.7.0.v20110603.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.core_3.7.0.v20110603.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ds.core.source_1.0.100.v20100601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ds.core_1.0.100.v20100601.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ds.ui.source_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ds.ui_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.junit.runtime.source_3.4.100.v20110406.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.junit.runtime_3.4.100.v20110406.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.launching.source_3.6.0.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.launching_3.6.0.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.runtime.source_3.4.200.v20110508.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.runtime_3.4.200.v20110508.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.source_3.6.100.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ua.core.source_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ua.core_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ua.ui.source_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ua.ui_1.0.100.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ui.source_3.6.100.v20110603.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ui.templates.source_3.4.400.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ui.templates_3.4.400.v20110516.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde.ui_3.6.100.v20110603.jar;/develop/ws/cdo/_target/plugins/org.eclipse.pde_3.6.100.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.platform.source_3.7.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.platform_3.7.0.v201106131736/platform.jar;/develop/ws/cdo/_target/plugins/org.eclipse.rcp.source_3.7.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.rcp_3.7.0.v201106131736.jar;/develop/ws/cdo/_target/plugins/org.eclipse.search.source_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.search_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.cocoa.macosx.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.cocoa.macosx.x86_64.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.cocoa.macosx.x86_64_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.cocoa.macosx_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.hpux.ia64_32.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.hpux.ia64_32_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.ppc64.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.ppc64_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.s390.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.s390_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.s390x_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.x86.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.x86_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.x86_64.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.linux.x86_64_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.solaris.sparc.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.solaris.sparc_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.solaris.x86.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.gtk.solaris.x86_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.win32.win32.x86.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.win32.win32.x86_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.win32.win32.x86_64.source_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt.win32.win32.x86_64_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swt_3.7.0.v3735b.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.eclipse.core_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.eclipse.finder_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.eclipse.gef.finder_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.eclipse.spy_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.forms.finder_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.go_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.junit4_x_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.swtbot.swt.finder_2.0.4.20110304_0338-e5aff47-dev-e36.jar;/develop/ws/cdo/_target/plugins/org.eclipse.team.core.source_3.6.0.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.team.core_3.6.0.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.team.ui.source_3.6.100.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.team.ui_3.6.100.I20110525-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.text.source_3.5.100.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.text_3.5.100.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.browser.source_3.3.100.v20110426.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.browser_3.3.100.v20110426.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.cheatsheets.source_3.4.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.cheatsheets_3.4.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.cocoa.source_1.1.0.I20101109-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.cocoa_1.1.0.I20101109-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.console.source_3.5.100.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.console_3.5.100.v20110511.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.editors.source_3.7.0.v20110517-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.editors_3.7.0.v20110517-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.externaltools.source_3.2.0.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.externaltools_3.2.0.v20110506.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.forms.source_3.5.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.forms_3.5.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.ide.application.source_1.0.300.I20110306-2000.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.ide.application_1.0.300.I20110306-2000.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.ide.source_3.7.0.I20110519-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.ide_3.7.0.I20110519-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.intro.source_3.4.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.intro.universal.source_3.2.500.v20110510.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.intro.universal_3.2.500.v20110510/universal.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.intro_3.4.100.v20110425.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.navigator.resources.source_3.4.300.I20110421-1800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.navigator.resources_3.4.300.I20110421-1800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.navigator.source_3.5.100.I20110524-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.navigator_3.5.100.I20110524-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.net.source_1.2.100.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.net_1.2.100.I20110511-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.presentations.r21.source_3.2.200.I20100517-1500.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.presentations.r21_3.2.200.I20100517-1500.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.source_3.7.0.I20110602-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views.log.source_1.0.200.v20110404.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views.log_1.0.200.v20110404.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views.properties.tabbed.source_3.5.200.I20110201-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views.properties.tabbed_3.5.200.I20110201-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views.source_3.6.0.I20110412-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.views_3.6.0.I20110412-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.win32.source_3.2.200.I20100509-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.win32_3.2.200.I20100509-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench.compatibility.source_3.2.100.I20110413-1600.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench.compatibility_3.2.100.I20110413-1600/compatibility.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench.source_3.7.0.I20110519-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench.texteditor.source_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench.texteditor_3.7.0.v20110505-0800.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui.workbench_3.7.0.I20110519-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.ui_3.7.0.I20110602-0100.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.configurator.source_3.3.100.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.configurator_3.3.100.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core.linux.source_3.2.200.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core.linux_3.2.200.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core.source_3.2.500.v20110330.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core.win32.source_3.2.200.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core.win32_3.2.200.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.core_3.2.500.v20110330.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.scheduler.source_3.2.300.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.scheduler_3.2.300.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.ui.source_3.2.300.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.update.ui_3.2.300.v20100512.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xpand.source_1.1.0.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xpand_1.1.0.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xtend.source_1.1.0.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xtend.typesystem.emf.source_1.0.1.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xtend.typesystem.emf_1.0.1.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.xtend_1.1.0.v201106060417.jar;/develop/ws/cdo/_target/plugins/org.eclipse.zest.core.source_1.3.0.v20110221-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.zest.core_1.3.0.v20110221-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.zest.layouts.source_1.1.0.v20110425-2050.jar;/develop/ws/cdo/_target/plugins/org.eclipse.zest.layouts_1.1.0.v20110425-2050.jar;/develop/ws/cdo/_target/plugins/org.h2.source_1.1.117.v201105142352.jar;/develop/ws/cdo/_target/plugins/org.h2_1.1.117.v201105142352.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.core.source_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.core_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.generator.source_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.generator_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.integration.source_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.integration_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.library.source_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.library_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.text.source_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest.text_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hamcrest_1.1.0.v20090501071000.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/antlr-2.7.6.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/c3p0-0.9.1.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/commons-collections-3.1.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/ehcache-1.5.0.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/hibernate3.6-src.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/hibernate3.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/javassist-3.12.0.GA.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/jta-1.1.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/slf4j-api-1.6.1.jar;/develop/ws/cdo/_target/plugins/org.hibernate_3.6.0.201107071603/slf4j-log4j12-1.6.1.jar;/develop/ws/cdo/_target/plugins/org.hsqldb_1.8.1.jar;/develop/ws/cdo/_target/plugins/org.junit.source_3.8.2.v3_8_2_v20100427-1100.jar;/develop/ws/cdo/_target/plugins/org.junit.source_4.8.2.v4_8_2_v20110321-1705.jar;/develop/ws/cdo/_target/plugins/org.junit_3.8.2.v3_8_2_v20100427-1100/junit.jar;/develop/ws/cdo/_target/plugins/org.junit_4.8.2.v4_8_2_v20110321-1705/junit.jar;/develop/ws/cdo/_target/plugins/org.mortbay.jetty.server.source_6.1.23.v201012071420.jar;/develop/ws/cdo/_target/plugins/org.mortbay.jetty.server_6.1.23.v201012071420.jar;/develop/ws/cdo/_target/plugins/org.mortbay.jetty.util.source_6.1.23.v201012071420.jar;/develop/ws/cdo/_target/plugins/org.mortbay.jetty.util_6.1.23.v201012071420.jar;/develop/ws/cdo/_target/plugins/org.objectweb.asm.source_3.3.1.v201105211655.jar;/develop/ws/cdo/_target/plugins/org.objectweb.asm_3.3.1.v201105211655.jar;/develop/ws/cdo/_target/plugins/org.postgresql.jdbc3_8.4.701.v20110215-0651.jar;/develop/ws/cdo/_target/plugins/org.sat4j.core_2.3.0.v20110329.jar;/develop/ws/cdo/_target/plugins/org.sat4j.pb_2.3.0.v20110329.jar;/develop/ws/cdo/_target/plugins/org.w3c.css.sac.source_1.3.1.v200903091627.jar;/develop/ws/cdo/_target/plugins/org.w3c.css.sac_1.3.1.v200903091627.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.events.source_3.0.0.draft20060413_v201105210656.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.events_3.0.0.draft20060413_v201105210656.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.smil.source_1.0.1.v200903091627.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.smil_1.0.1.v200903091627.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.svg.source_1.1.0.v201011041433.jar;/develop/ws/cdo/_target/plugins/org.w3c.dom.svg_1.1.0.v201011041433.jar;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.objectivity.stub/oojava_epl.jar;/develop/ws/cdo/plugins/org.gastro.rcp/org.eclipse.nebula.widgets.gallery_0.5.2.R_0_20090418.jar;/develop/ws/cdo/plugins/org.gastro.rcp/org.eclipse.nebula.widgets.pshelf_1.0.0.HEAD.jar;/develop/ws/cdo/plugins/com.mongodb/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.common.db/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.common/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.editor/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.emf/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.gmf.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.gmf.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel.gmf/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen.dawngenmodel/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.codegen/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.ecore.editor.dawn/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.ecoretools.diagram.dawn/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.emf/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore.diagram.dawn/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore.diagram/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore.editor.dawn/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore.editor/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.examples.acore/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.gmf/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.tests/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn.util/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.dawn/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.defs/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.doc.tutorial/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.doc/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.efs/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.company.edit/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.company/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.hibernate.client/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.hibernate.log4j/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.hibernate.server/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples.server/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.examples/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.explorer/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.location/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.migrator/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.net4j/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng.doc/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng.version.digest.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng.version.digest/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng.version/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.releng/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.db4o/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.db/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.hibernate.teneo/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.hibernate/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.mongodb/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.net4j/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.objectivity/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.ocl/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server.product/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.server/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.team/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.db4o/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.db/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.hibernate/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.mango/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model1/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model2/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model3/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model4/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model4interfaces/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model5/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.model6/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.mongodb/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.objectivity/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.tests/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.defs/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.efs/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.ide/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.location/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.shared/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui.workspace/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.ui/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.workspace.efs/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo.workspace/bin;/develop/ws/cdo/plugins/org.eclipse.emf.cdo/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies.chat.ui/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies.chat/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies.common/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies.server/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies.ui/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.buddies/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.db2/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.derby/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.doc/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.h2/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.hsqldb/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.mysql/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.postgresql/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db.tests/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.db/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.debug/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.defs/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.doc/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.examples/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.http.common/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.http.server/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.http.tests/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.http/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms.admin/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms.api/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms.server.jdbc/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms.server/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms.tests/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jms/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.jvm/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.tcp/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.tests/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.ui.defs/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.ui.shared/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.ui/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.util.defs/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.util.doc/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.util.ui/bin;/develop/ws/cdo/plugins/org.eclipse.net4j.util/bin;/develop/ws/cdo/plugins/org.eclipse.net4j/bin;/develop/ws/cdo/plugins/org.gastro.business.edit/bin;/develop/ws/cdo/plugins/org.gastro.business/bin;/develop/ws/cdo/plugins/org.gastro.inventory.edit/bin;/develop/ws/cdo/plugins/org.gastro.inventory/bin;/develop/ws/cdo/plugins/org.gastro.rcp.department/bin;/develop/ws/cdo/plugins/org.gastro.rcp.table/bin;/develop/ws/cdo/plugins/org.gastro.rcp/bin;/develop/ws/cdo/plugins/org.gastro.server.web/bin;/develop/ws/cdo/plugins/org.gastro.server/bin;/develop/bin/org.eclipse.emf.cdo.releng.doc.supplemental/cglib-2.2.2.jar;/develop/bin/org.eclipse.emf.cdo.releng.doc.supplemental/javax.security.jacc.jar;/develop/bin/org.eclipse.emf.cdo.releng.doc.supplemental/org.apache.xalan_2.7.1.v201005080400.jar;/develop/bin/org.eclipse.emf.cdo.releng.doc.supplemental/bin"); + add("-basefolder /develop/ws/cdo"); + add("-project org.eclipse.emf.cdo.doc"); + add("-source 1.5"); + + String[] array = arguments.toArray(new String[arguments.size()]); + com.sun.tools.javadoc.Main + .execute(TestCDODocumentation.class.getSimpleName(), ArticleDoclet.class.getName(), array); + } +} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Article.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Article.java index cb625363ed..a09909ec85 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Article.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Article.java @@ -1,79 +1,19 @@ /**
- * 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
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
*/
package org.eclipse.emf.cdo.releng.doc.article;
-import com.sun.javadoc.ClassDoc;
-
-
/**
- * @author Eike Stepper
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Article</b></em>'. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getArticle()
+ * @model
+ * @generated
*/
-public class Article extends ArticleElement
+public interface Article extends Chapter
{
- private final CategoryElement parent;
-
- Article(Documentation documentation, ClassDoc classDoc)
- {
- super(classDoc);
- parent = documentation;
- getDocumentation().registerArticleElement(this);
- }
-
- Article(Category category, ClassDoc classDoc)
- {
- super(classDoc);
- parent = category;
- getDocumentation().registerArticleElement(this);
- }
-
- public final Documentation getDocumentation()
- {
- if (parent instanceof Documentation)
- {
- return (Documentation)parent;
- }
-
- return ((Category)parent).getDocumentation();
- }
-
- public final Category getCategory()
- {
- if (parent instanceof Category)
- {
- return (Category)parent;
- }
-
- return null;
- }
-
- public int getLevel()
- {
- return parent.getLevel() + 1;
- }
-
- public void accept(Visitor visitor) throws Exception
- {
- visitor.visit(this);
- }
-
- public String getPath()
- {
- String name = getClassDoc().typeName();
-
- String path = parent.getPath();
- if (path.length() == 0)
- {
- return name;
- }
- return path + "/" + name;
- }
-}
+} // Article
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleDoclet.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleDoclet.java deleted file mode 100644 index bb33d385be..0000000000 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleDoclet.java +++ /dev/null @@ -1,85 +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.releng.doc.article; - -import org.eclipse.emf.cdo.releng.doc.article.util.JavaDoc; - -import com.sun.javadoc.RootDoc; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author Eike Stepper - */ -public class ArticleDoclet // extends JavaDoc -{ - private final List<String> javaDocPaths = new ArrayList<String>(); - - public ArticleDoclet() - { - // super(ArticleDoclet.class); - } - - public final ArticleDoclet javaDocPath(String javaDocPath) - { - javaDocPaths.add(javaDocPath); - return this; - } - - public static int optionLength(String option) - { - if (JavaDoc.OPTION_BASE_FOLDER.equals(option)) - { - return 2; - } - - if (JavaDoc.OPTION_OUTPUT_PATH.equals(option)) - { - return 2; - } - - // Indicate we don't know about it - return -1; - } - - public static boolean start(RootDoc root) - { - long startTime = System.currentTimeMillis(); - String base = JavaDoc.getOption(root, JavaDoc.OPTION_BASE_FOLDER); - String output = JavaDoc.getOption(root, JavaDoc.OPTION_OUTPUT_PATH); - - try - { - Documentation documentation = Documentation.create(root, base, output); - documentation.accept(new DocumentationGenerator()); - } - catch (Error ex) - { - ex.printStackTrace(); - throw ex; - } - catch (RuntimeException ex) - { - ex.printStackTrace(); - throw ex; - } - catch (Exception ex) - { - ex.printStackTrace(); - throw new RuntimeException(ex); - } - - long duration = (System.currentTimeMillis() - startTime) / 1000; - System.out.println("Finished: " + duration + " seconds"); - return true; - } -} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleFactory.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleFactory.java new file mode 100644 index 0000000000..7de983686a --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleFactory.java @@ -0,0 +1,161 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.ecore.EFactory; + +import com.sun.javadoc.RootDoc; + +import java.io.File; + +/** + * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a create method for each non-abstract class of + * the model. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage + * @generated + */ +public interface ArticleFactory extends EFactory +{ + /** + * The singleton instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + ArticleFactory eINSTANCE = org.eclipse.emf.cdo.releng.doc.article.impl.ArticleFactoryImpl.init(); + + /** + * Returns a new object of class '<em>Documentation</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Documentation</em>'. + * @generated + */ + Documentation createDocumentation(); + + /** + * Returns a new object of class '<em>Context</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Context</em>'. + * @generated + */ + Context createContext(); + + Context createContext(RootDoc root, File baseFolder, String project); + + /** + * Returns a new object of class '<em>Category</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Category</em>'. + * @generated + */ + Category createCategory(); + + /** + * Returns a new object of class '<em>Article</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Article</em>'. + * @generated + */ + Article createArticle(); + + /** + * Returns a new object of class '<em>Chapter</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Chapter</em>'. + * @generated + */ + Chapter createChapter(); + + /** + * Returns a new object of class '<em>Snippet</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Snippet</em>'. + * @generated + */ + Snippet createSnippet(); + + /** + * Returns a new object of class '<em>Diagram</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Diagram</em>'. + * @generated + */ + Diagram createDiagram(); + + /** + * Returns a new object of class '<em>Factory</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Factory</em>'. + * @generated + */ + Factory createFactory(); + + /** + * Returns a new object of class '<em>Java Element</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Java Element</em>'. + * @generated + */ + JavaElement createJavaElement(); + + /** + * Returns a new object of class '<em>Callout</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Callout</em>'. + * @generated + */ + Callout createCallout(); + + /** + * Returns a new object of class '<em>External Target</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>External Target</em>'. + * @generated + */ + ExternalTarget createExternalTarget(); + + /** + * Returns a new object of class '<em>Text</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Text</em>'. + * @generated + */ + Text createText(); + + /** + * Returns a new object of class '<em>Link</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Link</em>'. + * @generated + */ + Link createLink(); + + /** + * Returns a new object of class '<em>Embedding</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Embedding</em>'. + * @generated + */ + Embedding createEmbedding(); + + /** + * Returns a new object of class '<em>Source Code</em>'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return a new object of class '<em>Source Code</em>'. + * @generated + */ + SourceCode createSourceCode(); + + /** + * Returns the package supported by this factory. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the package supported by this factory. + * @generated + */ + ArticlePackage getArticlePackage(); + +} // ArticleFactory diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticlePackage.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticlePackage.java new file mode 100644 index 0000000000..65a612e9bd --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticlePackage.java @@ -0,0 +1,2590 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains accessors for the meta objects to represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticleFactory + * @model kind="package" + * @generated + */ +public interface ArticlePackage extends EPackage +{ + /** + * The package name. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + String eNAME = "article"; + + /** + * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + String eNS_URI = "http://www.eclipse.org/ARTICLE/1.0"; + + /** + * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + String eNS_PREFIX = "article"; + + /** + * The singleton instance of the package. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + ArticlePackage eINSTANCE = org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl.init(); + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable <em>Identifiable</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.Identifiable + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getIdentifiable() + * @generated + */ + int IDENTIFIABLE = 14; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int IDENTIFIABLE__ID = 0; + + /** + * The number of structural features of the '<em>Identifiable</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int IDENTIFIABLE_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl <em>Link Target</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getLinkTarget() + * @generated + */ + int LINK_TARGET = 10; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK_TARGET__ID = IDENTIFIABLE__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK_TARGET__LABEL = IDENTIFIABLE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Link Target</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int LINK_TARGET_FEATURE_COUNT = IDENTIFIABLE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl + * <em>Structural Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getStructuralElement() + * @generated + */ + int STRUCTURAL_ELEMENT = 9; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__ID = LINK_TARGET__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__LABEL = LINK_TARGET__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__CHILDREN = LINK_TARGET_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__PARENT = LINK_TARGET_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__TITLE = LINK_TARGET_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__PATH = LINK_TARGET_FEATURE_COUNT + 3; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__FULL_PATH = LINK_TARGET_FEATURE_COUNT + 4; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__OUTPUT_FILE = LINK_TARGET_FEATURE_COUNT + 5; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__DOCUMENTATION = LINK_TARGET_FEATURE_COUNT + 6; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT__DOC = LINK_TARGET_FEATURE_COUNT + 7; + + /** + * The number of structural features of the '<em>Structural Element</em>' class. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int STRUCTURAL_ELEMENT_FEATURE_COUNT = LINK_TARGET_FEATURE_COUNT + 8; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl + * <em>Documentation</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDocumentation() + * @generated + */ + int DOCUMENTATION = 0; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__ID = STRUCTURAL_ELEMENT__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__LABEL = STRUCTURAL_ELEMENT__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__CHILDREN = STRUCTURAL_ELEMENT__CHILDREN; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__PARENT = STRUCTURAL_ELEMENT__PARENT; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__TITLE = STRUCTURAL_ELEMENT__TITLE; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__PATH = STRUCTURAL_ELEMENT__PATH; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__FULL_PATH = STRUCTURAL_ELEMENT__FULL_PATH; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__OUTPUT_FILE = STRUCTURAL_ELEMENT__OUTPUT_FILE; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__DOCUMENTATION = STRUCTURAL_ELEMENT__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__DOC = STRUCTURAL_ELEMENT__DOC; + + /** + * The feature id for the '<em><b>Context</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__CONTEXT = STRUCTURAL_ELEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Embeddable Elements</b></em>' containment reference list. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__EMBEDDABLE_ELEMENTS = STRUCTURAL_ELEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Dependencies</b></em>' reference list. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__DEPENDENCIES = STRUCTURAL_ELEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the '<em><b>Project</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DOCUMENTATION__PROJECT = STRUCTURAL_ELEMENT_FEATURE_COUNT + 3; + + /** + * The number of structural features of the '<em>Documentation</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int DOCUMENTATION_FEATURE_COUNT = STRUCTURAL_ELEMENT_FEATURE_COUNT + 4; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl <em>Context</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getContext() + * @generated + */ + int CONTEXT = 1; + + /** + * The feature id for the '<em><b>Base Folder</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CONTEXT__BASE_FOLDER = 0; + + /** + * The feature id for the '<em><b>Project</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CONTEXT__PROJECT = 1; + + /** + * The feature id for the '<em><b>Documentations</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CONTEXT__DOCUMENTATIONS = 2; + + /** + * The feature id for the '<em><b>Root</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CONTEXT__ROOT = 3; + + /** + * The number of structural features of the '<em>Context</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CONTEXT_FEATURE_COUNT = 4; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl <em>Body</em>}' class. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getBody() + * @generated + */ + int BODY = 15; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__ID = STRUCTURAL_ELEMENT__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__LABEL = STRUCTURAL_ELEMENT__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__CHILDREN = STRUCTURAL_ELEMENT__CHILDREN; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__PARENT = STRUCTURAL_ELEMENT__PARENT; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__TITLE = STRUCTURAL_ELEMENT__TITLE; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__PATH = STRUCTURAL_ELEMENT__PATH; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__FULL_PATH = STRUCTURAL_ELEMENT__FULL_PATH; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__OUTPUT_FILE = STRUCTURAL_ELEMENT__OUTPUT_FILE; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__DOCUMENTATION = STRUCTURAL_ELEMENT__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__DOC = STRUCTURAL_ELEMENT__DOC; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__ELEMENTS = STRUCTURAL_ELEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__HTML = STRUCTURAL_ELEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the '<em><b>Category</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY__CATEGORY = STRUCTURAL_ELEMENT_FEATURE_COUNT + 2; + + /** + * The number of structural features of the '<em>Body</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY_FEATURE_COUNT = STRUCTURAL_ELEMENT_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.CategoryImpl <em>Category</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.CategoryImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getCategory() + * @generated + */ + int CATEGORY = 2; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__ID = BODY__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__LABEL = BODY__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__CHILDREN = BODY__CHILDREN; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__PARENT = BODY__PARENT; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__TITLE = BODY__TITLE; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__PATH = BODY__PATH; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__FULL_PATH = BODY__FULL_PATH; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__OUTPUT_FILE = BODY__OUTPUT_FILE; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__DOCUMENTATION = BODY__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__DOC = BODY__DOC; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__ELEMENTS = BODY__ELEMENTS; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__HTML = BODY__HTML; + + /** + * The feature id for the '<em><b>Category</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY__CATEGORY = BODY__CATEGORY; + + /** + * The number of structural features of the '<em>Category</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CATEGORY_FEATURE_COUNT = BODY_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ChapterImpl <em>Chapter</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ChapterImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getChapter() + * @generated + */ + int CHAPTER = 4; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__ID = BODY__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__LABEL = BODY__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__CHILDREN = BODY__CHILDREN; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__PARENT = BODY__PARENT; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__TITLE = BODY__TITLE; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__PATH = BODY__PATH; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__FULL_PATH = BODY__FULL_PATH; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__OUTPUT_FILE = BODY__OUTPUT_FILE; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__DOCUMENTATION = BODY__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__DOC = BODY__DOC; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__ELEMENTS = BODY__ELEMENTS; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__HTML = BODY__HTML; + + /** + * The feature id for the '<em><b>Category</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__CATEGORY = BODY__CATEGORY; + + /** + * The feature id for the '<em><b>Article</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER__ARTICLE = BODY_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Chapter</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CHAPTER_FEATURE_COUNT = BODY_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ArticleImpl <em>Article</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticleImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getArticle() + * @generated + */ + int ARTICLE = 3; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__ID = CHAPTER__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__LABEL = CHAPTER__LABEL; + + /** + * The feature id for the '<em><b>Children</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__CHILDREN = CHAPTER__CHILDREN; + + /** + * The feature id for the '<em><b>Parent</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__PARENT = CHAPTER__PARENT; + + /** + * The feature id for the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__TITLE = CHAPTER__TITLE; + + /** + * The feature id for the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__PATH = CHAPTER__PATH; + + /** + * The feature id for the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__FULL_PATH = CHAPTER__FULL_PATH; + + /** + * The feature id for the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__OUTPUT_FILE = CHAPTER__OUTPUT_FILE; + + /** + * The feature id for the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__DOCUMENTATION = CHAPTER__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__DOC = CHAPTER__DOC; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__ELEMENTS = CHAPTER__ELEMENTS; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__HTML = CHAPTER__HTML; + + /** + * The feature id for the '<em><b>Category</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__CATEGORY = CHAPTER__CATEGORY; + + /** + * The feature id for the '<em><b>Article</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE__ARTICLE = CHAPTER__ARTICLE; + + /** + * The number of structural features of the '<em>Article</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int ARTICLE_FEATURE_COUNT = CHAPTER_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl + * <em>Embeddable Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getEmbeddableElement() + * @generated + */ + int EMBEDDABLE_ELEMENT = 12; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDABLE_ELEMENT__ID = IDENTIFIABLE__ID; + + /** + * The feature id for the '<em><b>Documentation</b></em>' container reference. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDABLE_ELEMENT__DOCUMENTATION = IDENTIFIABLE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Embeddable Element</em>' class. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDABLE_ELEMENT_FEATURE_COUNT = IDENTIFIABLE_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.SnippetImpl <em>Snippet</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.SnippetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getSnippet() + * @generated + */ + int SNIPPET = 5; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int SNIPPET__ID = EMBEDDABLE_ELEMENT__ID; + + /** + * The feature id for the '<em><b>Documentation</b></em>' container reference. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int SNIPPET__DOCUMENTATION = EMBEDDABLE_ELEMENT__DOCUMENTATION; + + /** + * The feature id for the '<em><b>Callouts</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int SNIPPET__CALLOUTS = EMBEDDABLE_ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Snippet</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int SNIPPET_FEATURE_COUNT = EMBEDDABLE_ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl + * <em>Body Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getBodyElement() + * @generated + */ + int BODY_ELEMENT = 16; + + /** + * The feature id for the '<em><b>Body</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY_ELEMENT__BODY = 0; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY_ELEMENT__HTML = 1; + + /** + * The feature id for the '<em><b>Callout</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int BODY_ELEMENT__CALLOUT = 2; + + /** + * The number of structural features of the '<em>Body Element</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int BODY_ELEMENT_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.DiagramImpl <em>Diagram</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.DiagramImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDiagram() + * @generated + */ + int DIAGRAM = 6; + + /** + * The feature id for the '<em><b>Body</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DIAGRAM__BODY = BODY_ELEMENT__BODY; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DIAGRAM__HTML = BODY_ELEMENT__HTML; + + /** + * The feature id for the '<em><b>Callout</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DIAGRAM__CALLOUT = BODY_ELEMENT__CALLOUT; + + /** + * The feature id for the '<em><b>Code</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DIAGRAM__CODE = BODY_ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Diagram</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int DIAGRAM_FEATURE_COUNT = BODY_ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.FactoryImpl <em>Factory</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.FactoryImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getFactory() + * @generated + */ + int FACTORY = 7; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int FACTORY__ID = EMBEDDABLE_ELEMENT__ID; + + /** + * The feature id for the '<em><b>Documentation</b></em>' container reference. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int FACTORY__DOCUMENTATION = EMBEDDABLE_ELEMENT__DOCUMENTATION; + + /** + * The number of structural features of the '<em>Factory</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int FACTORY_FEATURE_COUNT = EMBEDDABLE_ELEMENT_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.JavaElementImpl + * <em>Java Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.JavaElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getJavaElement() + * @generated + */ + int JAVA_ELEMENT = 8; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int JAVA_ELEMENT__ID = LINK_TARGET__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int JAVA_ELEMENT__LABEL = LINK_TARGET__LABEL; + + /** + * The number of structural features of the '<em>Java Element</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int JAVA_ELEMENT_FEATURE_COUNT = LINK_TARGET_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl <em>Callout</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getCallout() + * @generated + */ + int CALLOUT = 11; + + /** + * The feature id for the '<em><b>Snippet</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CALLOUT__SNIPPET = 0; + + /** + * The feature id for the '<em><b>Elements</b></em>' containment reference list. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int CALLOUT__ELEMENTS = 1; + + /** + * The number of structural features of the '<em>Callout</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int CALLOUT_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ExternalTargetImpl + * <em>External Target</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ExternalTargetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getExternalTarget() + * @generated + */ + int EXTERNAL_TARGET = 13; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EXTERNAL_TARGET__ID = LINK_TARGET__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EXTERNAL_TARGET__LABEL = LINK_TARGET__LABEL; + + /** + * The number of structural features of the '<em>External Target</em>' class. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + * @ordered + */ + int EXTERNAL_TARGET_FEATURE_COUNT = LINK_TARGET_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.TextImpl <em>Text</em>}' class. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.TextImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getText() + * @generated + */ + int TEXT = 17; + + /** + * The feature id for the '<em><b>Body</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int TEXT__BODY = BODY_ELEMENT__BODY; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int TEXT__HTML = BODY_ELEMENT__HTML; + + /** + * The feature id for the '<em><b>Callout</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int TEXT__CALLOUT = BODY_ELEMENT__CALLOUT; + + /** + * The feature id for the '<em><b>Value</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int TEXT__VALUE = BODY_ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Text</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int TEXT_FEATURE_COUNT = BODY_ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkImpl <em>Link</em>}' class. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.LinkImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getLink() + * @generated + */ + int LINK = 18; + + /** + * The feature id for the '<em><b>Body</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK__BODY = BODY_ELEMENT__BODY; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK__HTML = BODY_ELEMENT__HTML; + + /** + * The feature id for the '<em><b>Callout</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK__CALLOUT = BODY_ELEMENT__CALLOUT; + + /** + * The feature id for the '<em><b>Target</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK__TARGET = BODY_ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Link</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int LINK_FEATURE_COUNT = BODY_ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddingImpl <em>Embedding</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddingImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getEmbedding() + * @generated + */ + int EMBEDDING = 19; + + /** + * The feature id for the '<em><b>Body</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDING__BODY = BODY_ELEMENT__BODY; + + /** + * The feature id for the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDING__HTML = BODY_ELEMENT__HTML; + + /** + * The feature id for the '<em><b>Callout</b></em>' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDING__CALLOUT = BODY_ELEMENT__CALLOUT; + + /** + * The feature id for the '<em><b>Element</b></em>' reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDING__ELEMENT = BODY_ELEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the '<em>Embedding</em>' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int EMBEDDING_FEATURE_COUNT = BODY_ELEMENT_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.SourceCodeImpl <em>Source Code</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.SourceCodeImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getSourceCode() + * @generated + */ + int SOURCE_CODE = 20; + + /** + * The feature id for the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int SOURCE_CODE__ID = EXTERNAL_TARGET__ID; + + /** + * The feature id for the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + * @ordered + */ + int SOURCE_CODE__LABEL = EXTERNAL_TARGET__LABEL; + + /** + * The number of structural features of the '<em>Source Code</em>' class. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + * @ordered + */ + int SOURCE_CODE_FEATURE_COUNT = EXTERNAL_TARGET_FEATURE_COUNT + 0; + + /** + * The meta object id for the '<em>Root Doc</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see com.sun.javadoc.RootDoc + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getRootDoc() + * @generated + */ + int ROOT_DOC = 21; + + /** + * The meta object id for the '<em>File</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see java.io.File + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getFile() + * @generated + */ + int FILE = 22; + + /** + * The meta object id for the '<em>Doc</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see com.sun.javadoc.Doc + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDoc() + * @generated + */ + int DOC = 23; + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Documentation + * <em>Documentation</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Documentation</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation + * @generated + */ + EClass getDocumentation(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext <em>Context</em>}'. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @return the meta object for the container reference '<em>Context</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext() + * @see #getDocumentation() + * @generated + */ + EReference getDocumentation_Context(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getEmbeddableElements <em>Embeddable Elements</em>}'. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Embeddable Elements</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getEmbeddableElements() + * @see #getDocumentation() + * @generated + */ + EReference getDocumentation_EmbeddableElements(); + + /** + * Returns the meta object for the reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getDependencies <em>Dependencies</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference list '<em>Dependencies</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getDependencies() + * @see #getDocumentation() + * @generated + */ + EReference getDocumentation_Dependencies(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getProject + * <em>Project</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Project</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getProject() + * @see #getDocumentation() + * @generated + */ + EAttribute getDocumentation_Project(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Context <em>Context</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Context</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Context + * @generated + */ + EClass getContext(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Context#getBaseFolder + * <em>Base Folder</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Base Folder</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Context#getBaseFolder() + * @see #getContext() + * @generated + */ + EAttribute getContext_BaseFolder(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Context#getProject + * <em>Project</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Project</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Context#getProject() + * @see #getContext() + * @generated + */ + EAttribute getContext_Project(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Context#getDocumentations <em>Documentations</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Documentations</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Context#getDocumentations() + * @see #getContext() + * @generated + */ + EReference getContext_Documentations(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Context#getRoot + * <em>Root</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Root</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Context#getRoot() + * @see #getContext() + * @generated + */ + EAttribute getContext_Root(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Category <em>Category</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Category</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Category + * @generated + */ + EClass getCategory(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Article <em>Article</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Article</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Article + * @generated + */ + EClass getArticle(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Chapter <em>Chapter</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Chapter</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Chapter + * @generated + */ + EClass getChapter(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.releng.doc.article.Chapter#getArticle + * <em>Article</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference '<em>Article</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Chapter#getArticle() + * @see #getChapter() + * @generated + */ + EReference getChapter_Article(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Snippet <em>Snippet</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Snippet</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Snippet + * @generated + */ + EClass getSnippet(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Snippet#getCallouts <em>Callouts</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Callouts</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Snippet#getCallouts() + * @see #getSnippet() + * @generated + */ + EReference getSnippet_Callouts(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Diagram <em>Diagram</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Diagram</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Diagram + * @generated + */ + EClass getDiagram(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Diagram#getCode + * <em>Code</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Code</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Diagram#getCode() + * @see #getDiagram() + * @generated + */ + EAttribute getDiagram_Code(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Factory <em>Factory</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Factory</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Factory + * @generated + */ + EClass getFactory(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.JavaElement <em>Java Element</em>} + * '. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Java Element</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.JavaElement + * @generated + */ + EClass getJavaElement(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement + * <em>Structural Element</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Structural Element</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement + * @generated + */ + EClass getStructuralElement(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getChildren <em>Children</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Children</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getChildren() + * @see #getStructuralElement() + * @generated + */ + EReference getStructuralElement_Children(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent <em>Parent</em>}'. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @return the meta object for the container reference '<em>Parent</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent() + * @see #getStructuralElement() + * @generated + */ + EReference getStructuralElement_Parent(); + + /** + * Returns the meta object for the attribute ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getTitle <em>Title</em>}'. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Title</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getTitle() + * @see #getStructuralElement() + * @generated + */ + EAttribute getStructuralElement_Title(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getPath + * <em>Path</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Path</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getPath() + * @see #getStructuralElement() + * @generated + */ + EAttribute getStructuralElement_Path(); + + /** + * Returns the meta object for the attribute ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getFullPath <em>Full Path</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Full Path</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getFullPath() + * @see #getStructuralElement() + * @generated + */ + EAttribute getStructuralElement_FullPath(); + + /** + * Returns the meta object for the attribute ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getOutputFile <em>Output File</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Output File</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getOutputFile() + * @see #getStructuralElement() + * @generated + */ + EAttribute getStructuralElement_OutputFile(); + + /** + * Returns the meta object for the reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getDocumentation <em>Documentation</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference '<em>Documentation</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getDocumentation() + * @see #getStructuralElement() + * @generated + */ + EReference getStructuralElement_Documentation(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getDoc + * <em>Doc</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Doc</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getDoc() + * @see #getStructuralElement() + * @generated + */ + EAttribute getStructuralElement_Doc(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.LinkTarget <em>Link Target</em>}'. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Link Target</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.LinkTarget + * @generated + */ + EClass getLinkTarget(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.LinkTarget#getLabel + * <em>Label</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Label</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.LinkTarget#getLabel() + * @see #getLinkTarget() + * @generated + */ + EAttribute getLinkTarget_Label(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Callout <em>Callout</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Callout</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Callout + * @generated + */ + EClass getCallout(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet <em>Snippet</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for the container reference '<em>Snippet</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet() + * @see #getCallout() + * @generated + */ + EReference getCallout_Snippet(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Callout#getElements <em>Elements</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Callout#getElements() + * @see #getCallout() + * @generated + */ + EReference getCallout_Elements(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement + * <em>Embeddable Element</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Embeddable Element</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement + * @generated + */ + EClass getEmbeddableElement(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation <em>Documentation</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the container reference '<em>Documentation</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation() + * @see #getEmbeddableElement() + * @generated + */ + EReference getEmbeddableElement_Documentation(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.ExternalTarget + * <em>External Target</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>External Target</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.ExternalTarget + * @generated + */ + EClass getExternalTarget(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable + * <em>Identifiable</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Identifiable</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Identifiable + * @generated + */ + EClass getIdentifiable(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable#getId + * <em>Id</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Id</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Identifiable#getId() + * @see #getIdentifiable() + * @generated + */ + EAttribute getIdentifiable_Id(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Body <em>Body</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Body</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Body + * @generated + */ + EClass getBody(); + + /** + * Returns the meta object for the containment reference list ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Body#getElements <em>Elements</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for the containment reference list '<em>Elements</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Body#getElements() + * @see #getBody() + * @generated + */ + EReference getBody_Elements(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Body#getHtml + * <em>Html</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Html</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Body#getHtml() + * @see #getBody() + * @generated + */ + EAttribute getBody_Html(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.releng.doc.article.Body#getCategory + * <em>Category</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference '<em>Category</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Body#getCategory() + * @see #getBody() + * @generated + */ + EReference getBody_Category(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement <em>Body Element</em>} + * '. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Body Element</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement + * @generated + */ + EClass getBodyElement(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody <em>Body</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for the container reference '<em>Body</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody() + * @see #getBodyElement() + * @generated + */ + EReference getBodyElement_Body(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getHtml + * <em>Html</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Html</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement#getHtml() + * @see #getBodyElement() + * @generated + */ + EAttribute getBodyElement_Html(); + + /** + * Returns the meta object for the container reference ' + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout <em>Callout</em>}'. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @return the meta object for the container reference '<em>Callout</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout() + * @see #getBodyElement() + * @generated + */ + EReference getBodyElement_Callout(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Text <em>Text</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Text</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Text + * @generated + */ + EClass getText(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.emf.cdo.releng.doc.article.Text#getValue + * <em>Value</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the attribute '<em>Value</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Text#getValue() + * @see #getText() + * @generated + */ + EAttribute getText_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Link <em>Link</em>}'. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Link</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Link + * @generated + */ + EClass getLink(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.releng.doc.article.Link#getTarget + * <em>Target</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference '<em>Target</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Link#getTarget() + * @see #getLink() + * @generated + */ + EReference getLink_Target(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.Embedding <em>Embedding</em>}'. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Embedding</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Embedding + * @generated + */ + EClass getEmbedding(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.emf.cdo.releng.doc.article.Embedding#getElement + * <em>Element</em>}'. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for the reference '<em>Element</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.Embedding#getElement() + * @see #getEmbedding() + * @generated + */ + EReference getEmbedding_Element(); + + /** + * Returns the meta object for class '{@link org.eclipse.emf.cdo.releng.doc.article.SourceCode <em>Source Code</em>}'. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the meta object for class '<em>Source Code</em>'. + * @see org.eclipse.emf.cdo.releng.doc.article.SourceCode + * @generated + */ + EClass getSourceCode(); + + /** + * Returns the meta object for data type '{@link com.sun.javadoc.RootDoc <em>Root Doc</em>}'. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @return the meta object for data type '<em>Root Doc</em>'. + * @see com.sun.javadoc.RootDoc + * @model instanceClass="com.sun.javadoc.RootDoc" serializeable="false" + * @generated + */ + EDataType getRootDoc(); + + /** + * Returns the meta object for data type '{@link java.io.File <em>File</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for data type '<em>File</em>'. + * @see java.io.File + * @model instanceClass="java.io.File" + * @generated + */ + EDataType getFile(); + + /** + * Returns the meta object for data type '{@link com.sun.javadoc.Doc <em>Doc</em>}'. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @return the meta object for data type '<em>Doc</em>'. + * @see com.sun.javadoc.Doc + * @model instanceClass="com.sun.javadoc.Doc" serializeable="false" + * @generated + */ + EDataType getDoc(); + + /** + * Returns the factory that creates the instances of the model. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the factory that creates the instances of the model. + * @generated + */ + ArticleFactory getArticleFactory(); + + /** + * <!-- begin-user-doc --> Defines literals for the meta objects that represent + * <ul> + * <li>each class,</li> + * <li>each feature of each class,</li> + * <li>each enum,</li> + * <li>and each data type</li> + * </ul> + * <!-- end-user-doc --> + * + * @generated + */ + interface Literals + { + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl + * <em>Documentation</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDocumentation() + * @generated + */ + EClass DOCUMENTATION = eINSTANCE.getDocumentation(); + + /** + * The meta object literal for the '<em><b>Context</b></em>' container reference feature. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + EReference DOCUMENTATION__CONTEXT = eINSTANCE.getDocumentation_Context(); + + /** + * The meta object literal for the '<em><b>Embeddable Elements</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference DOCUMENTATION__EMBEDDABLE_ELEMENTS = eINSTANCE.getDocumentation_EmbeddableElements(); + + /** + * The meta object literal for the '<em><b>Dependencies</b></em>' reference list feature. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + EReference DOCUMENTATION__DEPENDENCIES = eINSTANCE.getDocumentation_Dependencies(); + + /** + * The meta object literal for the '<em><b>Project</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute DOCUMENTATION__PROJECT = eINSTANCE.getDocumentation_Project(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl <em>Context</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getContext() + * @generated + */ + EClass CONTEXT = eINSTANCE.getContext(); + + /** + * The meta object literal for the '<em><b>Base Folder</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute CONTEXT__BASE_FOLDER = eINSTANCE.getContext_BaseFolder(); + + /** + * The meta object literal for the '<em><b>Project</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute CONTEXT__PROJECT = eINSTANCE.getContext_Project(); + + /** + * The meta object literal for the '<em><b>Documentations</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference CONTEXT__DOCUMENTATIONS = eINSTANCE.getContext_Documentations(); + + /** + * The meta object literal for the '<em><b>Root</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute CONTEXT__ROOT = eINSTANCE.getContext_Root(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.CategoryImpl + * <em>Category</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.CategoryImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getCategory() + * @generated + */ + EClass CATEGORY = eINSTANCE.getCategory(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ArticleImpl <em>Article</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticleImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getArticle() + * @generated + */ + EClass ARTICLE = eINSTANCE.getArticle(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ChapterImpl <em>Chapter</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ChapterImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getChapter() + * @generated + */ + EClass CHAPTER = eINSTANCE.getChapter(); + + /** + * The meta object literal for the '<em><b>Article</b></em>' reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference CHAPTER__ARTICLE = eINSTANCE.getChapter_Article(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.SnippetImpl <em>Snippet</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.SnippetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getSnippet() + * @generated + */ + EClass SNIPPET = eINSTANCE.getSnippet(); + + /** + * The meta object literal for the '<em><b>Callouts</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference SNIPPET__CALLOUTS = eINSTANCE.getSnippet_Callouts(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.DiagramImpl <em>Diagram</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.DiagramImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDiagram() + * @generated + */ + EClass DIAGRAM = eINSTANCE.getDiagram(); + + /** + * The meta object literal for the '<em><b>Code</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute DIAGRAM__CODE = eINSTANCE.getDiagram_Code(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.FactoryImpl <em>Factory</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.FactoryImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getFactory() + * @generated + */ + EClass FACTORY = eINSTANCE.getFactory(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.JavaElementImpl + * <em>Java Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.JavaElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getJavaElement() + * @generated + */ + EClass JAVA_ELEMENT = eINSTANCE.getJavaElement(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl + * <em>Structural Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getStructuralElement() + * @generated + */ + EClass STRUCTURAL_ELEMENT = eINSTANCE.getStructuralElement(); + + /** + * The meta object literal for the '<em><b>Children</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference STRUCTURAL_ELEMENT__CHILDREN = eINSTANCE.getStructuralElement_Children(); + + /** + * The meta object literal for the '<em><b>Parent</b></em>' container reference feature. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + EReference STRUCTURAL_ELEMENT__PARENT = eINSTANCE.getStructuralElement_Parent(); + + /** + * The meta object literal for the '<em><b>Title</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute STRUCTURAL_ELEMENT__TITLE = eINSTANCE.getStructuralElement_Title(); + + /** + * The meta object literal for the '<em><b>Path</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute STRUCTURAL_ELEMENT__PATH = eINSTANCE.getStructuralElement_Path(); + + /** + * The meta object literal for the '<em><b>Full Path</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute STRUCTURAL_ELEMENT__FULL_PATH = eINSTANCE.getStructuralElement_FullPath(); + + /** + * The meta object literal for the '<em><b>Output File</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute STRUCTURAL_ELEMENT__OUTPUT_FILE = eINSTANCE.getStructuralElement_OutputFile(); + + /** + * The meta object literal for the '<em><b>Documentation</b></em>' reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference STRUCTURAL_ELEMENT__DOCUMENTATION = eINSTANCE.getStructuralElement_Documentation(); + + /** + * The meta object literal for the '<em><b>Doc</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute STRUCTURAL_ELEMENT__DOC = eINSTANCE.getStructuralElement_Doc(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl + * <em>Link Target</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getLinkTarget() + * @generated + */ + EClass LINK_TARGET = eINSTANCE.getLinkTarget(); + + /** + * The meta object literal for the '<em><b>Label</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute LINK_TARGET__LABEL = eINSTANCE.getLinkTarget_Label(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl <em>Callout</em>} + * ' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getCallout() + * @generated + */ + EClass CALLOUT = eINSTANCE.getCallout(); + + /** + * The meta object literal for the '<em><b>Snippet</b></em>' container reference feature. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + EReference CALLOUT__SNIPPET = eINSTANCE.getCallout_Snippet(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference CALLOUT__ELEMENTS = eINSTANCE.getCallout_Elements(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl + * <em>Embeddable Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getEmbeddableElement() + * @generated + */ + EClass EMBEDDABLE_ELEMENT = eINSTANCE.getEmbeddableElement(); + + /** + * The meta object literal for the '<em><b>Documentation</b></em>' container reference feature. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @generated + */ + EReference EMBEDDABLE_ELEMENT__DOCUMENTATION = eINSTANCE.getEmbeddableElement_Documentation(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.ExternalTargetImpl + * <em>External Target</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ExternalTargetImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getExternalTarget() + * @generated + */ + EClass EXTERNAL_TARGET = eINSTANCE.getExternalTarget(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable + * <em>Identifiable</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.Identifiable + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getIdentifiable() + * @generated + */ + EClass IDENTIFIABLE = eINSTANCE.getIdentifiable(); + + /** + * The meta object literal for the '<em><b>Id</b></em>' attribute feature. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @generated + */ + EAttribute IDENTIFIABLE__ID = eINSTANCE.getIdentifiable_Id(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl <em>Body</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getBody() + * @generated + */ + EClass BODY = eINSTANCE.getBody(); + + /** + * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + EReference BODY__ELEMENTS = eINSTANCE.getBody_Elements(); + + /** + * The meta object literal for the '<em><b>Html</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute BODY__HTML = eINSTANCE.getBody_Html(); + + /** + * The meta object literal for the '<em><b>Category</b></em>' reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference BODY__CATEGORY = eINSTANCE.getBody_Category(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl + * <em>Body Element</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getBodyElement() + * @generated + */ + EClass BODY_ELEMENT = eINSTANCE.getBodyElement(); + + /** + * The meta object literal for the '<em><b>Body</b></em>' container reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference BODY_ELEMENT__BODY = eINSTANCE.getBodyElement_Body(); + + /** + * The meta object literal for the '<em><b>Html</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute BODY_ELEMENT__HTML = eINSTANCE.getBodyElement_Html(); + + /** + * The meta object literal for the '<em><b>Callout</b></em>' container reference feature. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @generated + */ + EReference BODY_ELEMENT__CALLOUT = eINSTANCE.getBodyElement_Callout(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.TextImpl <em>Text</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.TextImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getText() + * @generated + */ + EClass TEXT = eINSTANCE.getText(); + + /** + * The meta object literal for the '<em><b>Value</b></em>' attribute feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EAttribute TEXT__VALUE = eINSTANCE.getText_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkImpl <em>Link</em>}' + * class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.LinkImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getLink() + * @generated + */ + EClass LINK = eINSTANCE.getLink(); + + /** + * The meta object literal for the '<em><b>Target</b></em>' reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference LINK__TARGET = eINSTANCE.getLink_Target(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddingImpl + * <em>Embedding</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddingImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getEmbedding() + * @generated + */ + EClass EMBEDDING = eINSTANCE.getEmbedding(); + + /** + * The meta object literal for the '<em><b>Element</b></em>' reference feature. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @generated + */ + EReference EMBEDDING__ELEMENT = eINSTANCE.getEmbedding_Element(); + + /** + * The meta object literal for the '{@link org.eclipse.emf.cdo.releng.doc.article.impl.SourceCodeImpl + * <em>Source Code</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.impl.SourceCodeImpl + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getSourceCode() + * @generated + */ + EClass SOURCE_CODE = eINSTANCE.getSourceCode(); + + /** + * The meta object literal for the '<em>Root Doc</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see com.sun.javadoc.RootDoc + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getRootDoc() + * @generated + */ + EDataType ROOT_DOC = eINSTANCE.getRootDoc(); + + /** + * The meta object literal for the '<em>File</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see java.io.File + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getFile() + * @generated + */ + EDataType FILE = eINSTANCE.getFile(); + + /** + * The meta object literal for the '<em>Doc</em>' data type. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see com.sun.javadoc.Doc + * @see org.eclipse.emf.cdo.releng.doc.article.impl.ArticlePackageImpl#getDoc() + * @generated + */ + EDataType DOC = eINSTANCE.getDoc(); + + } + +} // ArticlePackage diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Body.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Body.java new file mode 100644 index 0000000000..77ad057d49 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Body.java @@ -0,0 +1,75 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Body</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Body#getElements <em>Elements</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Body#getHtml <em>Html</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Body#getCategory <em>Category</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBody() + * @model abstract="true" + * @generated + */ +public interface Body extends StructuralElement +{ + /** + * Returns the value of the '<em><b>Elements</b></em>' containment reference list. The list contents are of type + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement}. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody <em>Body</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' containment reference list isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Elements</em>' containment reference list. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBody_Elements() + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody + * @model opposite="body" containment="true" + * @generated + */ + EList<BodyElement> getElements(); + + /** + * Returns the value of the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Html</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Html</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBody_Html() + * @model changeable="false" derived="true" + * @generated + */ + String getHtml(); + + /** + * Returns the value of the '<em><b>Category</b></em>' reference. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Category</em>' reference isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Category</em>' reference. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBody_Category() + * @model resolveProxies="false" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + Category getCategory(); + +} // Body diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/BodyElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/BodyElement.java new file mode 100644 index 0000000000..17bd23b6b0 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/BodyElement.java @@ -0,0 +1,100 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Body Element</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody <em>Body</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getHtml <em>Html</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout <em>Callout</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBodyElement() + * @model abstract="true" + * @generated + */ +public interface BodyElement extends EObject +{ + /** + * Returns the value of the '<em><b>Body</b></em>' container reference. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Body#getElements <em>Elements</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Body</em>' container reference isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Body</em>' container reference. + * @see #setBody(Body) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBodyElement_Body() + * @see org.eclipse.emf.cdo.releng.doc.article.Body#getElements + * @model opposite="elements" resolveProxies="false" transient="false" + * @generated + */ + Body getBody(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getBody <em>Body</em>}' container + * reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Body</em>' container reference. + * @see #getBody() + * @generated + */ + void setBody(Body value); + + /** + * Returns the value of the '<em><b>Html</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Html</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Html</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBodyElement_Html() + * @model changeable="false" derived="true" + * @generated + */ + String getHtml(); + + /** + * Returns the value of the '<em><b>Callout</b></em>' container reference. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Callout#getElements <em>Elements</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Callout</em>' container reference isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Callout</em>' container reference. + * @see #setCallout(Callout) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getBodyElement_Callout() + * @see org.eclipse.emf.cdo.releng.doc.article.Callout#getElements + * @model opposite="elements" resolveProxies="false" transient="false" + * @generated + */ + Callout getCallout(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout <em>Callout</em>}' + * container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Callout</em>' container reference. + * @see #getCallout() + * @generated + */ + void setCallout(Callout value); + +} // BodyElement diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Callout.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Callout.java new file mode 100644 index 0000000000..b5ca1ae905 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Callout.java @@ -0,0 +1,75 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Callout</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet <em>Snippet</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Callout#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getCallout() + * @model + * @generated + */ +public interface Callout extends EObject +{ + /** + * Returns the value of the '<em><b>Snippet</b></em>' container reference. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Snippet#getCallouts <em>Callouts</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Snippet</em>' container reference isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Snippet</em>' container reference. + * @see #setSnippet(Snippet) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getCallout_Snippet() + * @see org.eclipse.emf.cdo.releng.doc.article.Snippet#getCallouts + * @model opposite="callouts" resolveProxies="false" required="true" transient="false" + * @generated + */ + Snippet getSnippet(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet <em>Snippet</em>}' + * container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Snippet</em>' container reference. + * @see #getSnippet() + * @generated + */ + void setSnippet(Snippet value); + + /** + * Returns the value of the '<em><b>Elements</b></em>' containment reference list. The list contents are of type + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement}. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout <em>Callout</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Elements</em>' containment reference list isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Elements</em>' containment reference list. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getCallout_Elements() + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement#getCallout + * @model opposite="callout" containment="true" required="true" + * @generated + */ + EList<BodyElement> getElements(); + +} // Callout diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Category.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Category.java index bdc6895b6c..4b2b2a87b5 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Category.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Category.java @@ -1,68 +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
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
*/
package org.eclipse.emf.cdo.releng.doc.article;
-import com.sun.javadoc.PackageDoc;
-
-
/**
- * @author Eike Stepper
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Category</b></em>'. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getCategory()
+ * @model
+ * @generated
*/
-public class Category extends CategoryElement
+public interface Category extends Body
{
- private final String name;
-
- private PackageDoc packageDoc;
-
- Category(CategoryElement parent, String name)
- {
- super(parent);
- this.name = name;
- }
-
- public final String getName()
- {
- return name;
- }
-
- public final PackageDoc getPackageDoc()
- {
- return packageDoc;
- }
-
- @Override
- public String getPath()
- {
- Category parent = getParent();
- if (parent == null)
- {
- return name;
- }
-
- return parent.getPath() + "/" + name;
- }
-
- public void accept(Visitor visitor) throws Exception
- {
- visitor.visit(this);
- }
-
- @Override
- public String toString()
- {
- return name;
- }
-
- final void setPackageDoc(PackageDoc packageDoc)
- {
- this.packageDoc = packageDoc;
- }
-}
+} // Category
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Chapter.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Chapter.java new file mode 100644 index 0000000000..924cc99510 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Chapter.java @@ -0,0 +1,39 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Chapter</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Chapter#getArticle <em>Article</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getChapter() + * @model + * @generated + */ +public interface Chapter extends Body +{ + + /** + * Returns the value of the '<em><b>Article</b></em>' reference. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Article</em>' reference isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Article</em>' reference. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getChapter_Article() + * @model resolveProxies="false" required="true" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + Article getArticle(); +} // Chapter diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Context.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Context.java new file mode 100644 index 0000000000..11d7113fc1 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Context.java @@ -0,0 +1,106 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EObject; + +import com.sun.javadoc.RootDoc; + +import java.io.File; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Context</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Context#getBaseFolder <em>Base Folder</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Context#getProject <em>Project</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Context#getDocumentations <em>Documentations</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Context#getRoot <em>Root</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getContext() + * @model + * @generated + */ +public interface Context extends EObject +{ + /** + * Returns the value of the '<em><b>Base Folder</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Base Folder</em>' attribute isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Base Folder</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getContext_BaseFolder() + * @model dataType="org.eclipse.emf.cdo.releng.doc.article.File" required="true" changeable="false" + * @generated + */ + File getBaseFolder(); + + /** + * Returns the value of the '<em><b>Project</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Project</em>' attribute isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Project</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getContext_Project() + * @model required="true" changeable="false" + * @generated + */ + String getProject(); + + /** + * Returns the value of the '<em><b>Documentations</b></em>' containment reference list. The list contents are of type + * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation}. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext <em>Context</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Documentations</em>' containment reference list isn't clear, there really should be more + * of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Documentations</em>' containment reference list. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getContext_Documentations() + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext + * @model opposite="context" containment="true" required="true" + * @generated + */ + EList<Documentation> getDocumentations(); + + /** + * Returns the value of the '<em><b>Root</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Root</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Root</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getContext_Root() + * @model dataType="org.eclipse.emf.cdo.releng.doc.article.RootDoc" required="true" transient="true" + * changeable="false" volatile="true" + * @generated + */ + RootDoc getRoot(); + + Documentation getDocumentation(); + + Documentation getDocumentation(String id); + + boolean isRegistered(Object id); + + void register(Object id, Object value); + + Object lookup(Object id); +} // Context diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Diagram.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Diagram.java new file mode 100644 index 0000000000..29e619f3d0 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Diagram.java @@ -0,0 +1,50 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Diagram</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Diagram#getCode <em>Code</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDiagram() + * @model + * @generated + */ +public interface Diagram extends BodyElement +{ + /** + * Returns the value of the '<em><b>Code</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Code</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Code</em>' attribute. + * @see #setCode(String) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDiagram_Code() + * @model required="true" + * @generated + */ + String getCode(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Diagram#getCode <em>Code</em>}' attribute. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Code</em>' attribute. + * @see #getCode() + * @generated + */ + void setCode(String value); + +} // Diagram 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 6f92de0349..cbc7b94eca 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 @@ -1,159 +1,109 @@ /**
- * 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
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
*/
package org.eclipse.emf.cdo.releng.doc.article;
-import com.sun.javadoc.ClassDoc;
-import com.sun.javadoc.PackageDoc;
-import com.sun.javadoc.RootDoc;
-import com.sun.javadoc.Tag;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
+import org.eclipse.emf.common.util.EList;
/**
- * @author Eike Stepper
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Documentation</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getEmbeddableElements <em>Embeddable Elements</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getDependencies <em>Dependencies</em>}</li>
+ * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getProject <em>Project</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDocumentation()
+ * @model
+ * @generated
*/
-public class Documentation extends CategoryElement
+public interface Documentation extends StructuralElement
{
- private final RootDoc root;
-
- private final File baseFolder;
-
- private final String outputPath;
-
- private final Map<ClassDoc, ArticleElement> articleElements = new HashMap<ClassDoc, ArticleElement>();
-
- Documentation(RootDoc root, String base, String outputPath) throws IOException
- {
- super(null);
- this.root = root;
- this.outputPath = outputPath;
-
- baseFolder = new File(base).getCanonicalFile();
- if (!baseFolder.exists())
- {
- if (!baseFolder.mkdirs())
- {
- throw new IOException("Could not create " + base);
- }
- }
- }
-
- void registerArticleElement(ArticleElement articleElement)
- {
- articleElements.put(articleElement.getClassDoc(), articleElement);
- }
-
- boolean isTutorialClass(ClassDoc classDoc)
- {
- for (ClassDoc doc : root.classes())
- {
- if (doc == classDoc)
- {
- return true;
- }
- }
-
- return false;
- }
-
- boolean isExampleClass(ClassDoc classDoc)
- {
- Tag[] exampleTags = classDoc.tags("@example");
- return exampleTags != null && exampleTags.length != 0;
- }
-
- @Override
- public Documentation getDocumentation()
- {
- return this;
- }
-
- public final Map<ClassDoc, ArticleElement> getArticleElements()
- {
- return articleElements;
- }
-
- public final RootDoc getRoot()
- {
- return root;
- }
-
- public final File getBaseFolder()
- {
- return baseFolder;
- }
-
- public final String getOutputPath()
- {
- return outputPath;
- }
-
- public File getOutputFolder()
- {
- return new File(baseFolder, outputPath);
- }
-
- @Override
- public String getPath()
- {
- return "";
- }
-
- @Override
- public String toString()
- {
- return Documentation.class.getSimpleName();
- }
-
- public void accept(Visitor visitor) throws Exception
- {
- visitor.visit(this);
- }
-
- public static Documentation create(RootDoc root, String base, String outputPath) throws Exception
- {
- Documentation documentation = new Documentation(root, base, outputPath);
- processTopLevelClasses(documentation);
- documentation.accept(new DocumentationResolver());
-
- return documentation;
- }
-
- private static void processTopLevelClasses(Documentation documentation)
- {
- for (ClassDoc classDoc : documentation.getRoot().classes())
- {
- if (classDoc.containingClass() == null && !classDoc.isPackagePrivate())
- {
- PackageDoc containingPackage = classDoc.containingPackage();
- Category category = documentation.getCategory(containingPackage.name());
- category.setPackageDoc(containingPackage);
-
- Article article = new Article(category, classDoc);
- category.getArticles().add(article);
- processClass(article);
- }
- }
- }
-
- private static void processClass(ArticleElement parent)
- {
- for (ClassDoc classDoc : parent.getClassDoc().innerClasses())
- {
- Section section = new Section(parent, classDoc);
- parent.getSections().add(section);
- processClass(section);
- }
- }
-}
+ /**
+ * Returns the value of the '<em><b>Context</b></em>' container reference. It is bidirectional and its opposite is '
+ * {@link org.eclipse.emf.cdo.releng.doc.article.Context#getDocumentations <em>Documentations</em>}'. <!--
+ * begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Context</em>' container reference isn't clear, there really should be more of a
+ * description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Context</em>' container reference.
+ * @see #setContext(Context)
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDocumentation_Context()
+ * @see org.eclipse.emf.cdo.releng.doc.article.Context#getDocumentations
+ * @model opposite="documentations" resolveProxies="false" required="true" transient="false"
+ * @generated
+ */
+ Context getContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getContext <em>Context</em>}'
+ * container reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Context</em>' container reference.
+ * @see #getContext()
+ * @generated
+ */
+ void setContext(Context value);
+
+ /**
+ * Returns the value of the '<em><b>Embeddable Elements</b></em>' containment reference list. The list contents are of
+ * type {@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement}. It is bidirectional and its opposite is '
+ * {@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation <em>Documentation</em>}'. <!--
+ * begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Embeddable Elements</em>' containment reference list isn't clear, there really should be
+ * more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Embeddable Elements</em>' containment reference list.
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDocumentation_EmbeddableElements()
+ * @see org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation
+ * @model opposite="documentation" containment="true"
+ * @generated
+ */
+ EList<EmbeddableElement> getEmbeddableElements();
+
+ /**
+ * Returns the value of the '<em><b>Dependencies</b></em>' reference list. The list contents are of type
+ * {@link org.eclipse.emf.cdo.releng.doc.article.Documentation}. <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dependencies</em>' reference list isn't clear, there really should be more of a
+ * description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Dependencies</em>' reference list.
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDocumentation_Dependencies()
+ * @model resolveProxies="false"
+ * @generated
+ */
+ EList<Documentation> getDependencies();
+
+ /**
+ * Returns the value of the '<em><b>Project</b></em>' attribute. <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Project</em>' attribute isn't clear, there really should be more of a description
+ * here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Project</em>' attribute.
+ * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getDocumentation_Project()
+ * @model required="true" changeable="false"
+ * @generated
+ */
+ String getProject();
+
+} // Documentation
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/EmbeddableElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/EmbeddableElement.java new file mode 100644 index 0000000000..7bfe71e8db --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/EmbeddableElement.java @@ -0,0 +1,63 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Embeddable Element</b></em>'. <!-- end-user-doc + * --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation <em>Documentation</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getEmbeddableElement() + * @model abstract="true" + * @generated + */ +public interface EmbeddableElement extends Identifiable +{ + /** + * Returns the value of the '<em><b>Documentation</b></em>' container reference. It is bidirectional and its opposite + * is '{@link org.eclipse.emf.cdo.releng.doc.article.Documentation#getEmbeddableElements <em>Embeddable Elements</em>} + * '. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Documentation</em>' container reference isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Documentation</em>' container reference. + * @see #setDocumentation(Documentation) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getEmbeddableElement_Documentation() + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation#getEmbeddableElements + * @model opposite="embeddableElements" resolveProxies="false" required="true" transient="false" + * @generated + */ + Documentation getDocumentation(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement#getDocumentation + * <em>Documentation</em>}' container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Documentation</em>' container reference. + * @see #getDocumentation() + * @generated + */ + void setDocumentation(Documentation value); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @model required="true" embedderRequired="true" + * @generated + */ + String getHtml(Embedding embedder); + +} // EmbeddableElement diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Embedding.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Embedding.java new file mode 100644 index 0000000000..2f107babb8 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Embedding.java @@ -0,0 +1,51 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Embedding</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Embedding#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getEmbedding() + * @model + * @generated + */ +public interface Embedding extends BodyElement +{ + /** + * Returns the value of the '<em><b>Element</b></em>' reference. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Element</em>' reference isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Element</em>' reference. + * @see #setElement(EmbeddableElement) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getEmbedding_Element() + * @model resolveProxies="false" required="true" + * @generated + */ + EmbeddableElement getElement(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Embedding#getElement <em>Element</em>}' + * reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Element</em>' reference. + * @see #getElement() + * @generated + */ + void setElement(EmbeddableElement value); + +} // Embedding diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ExternalTarget.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ExternalTarget.java new file mode 100644 index 0000000000..6e3137479e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ExternalTarget.java @@ -0,0 +1,18 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>External Target</b></em>'. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getExternalTarget() + * @model + * @generated + */ +public interface ExternalTarget extends LinkTarget +{ +} // ExternalTarget diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Factory.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Factory.java new file mode 100644 index 0000000000..530000ca54 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Factory.java @@ -0,0 +1,18 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Factory</b></em>'. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getFactory() + * @model + * @generated + */ +public interface Factory extends EmbeddableElement +{ +} // Factory diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Identifiable.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Identifiable.java new file mode 100644 index 0000000000..7e971847a8 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Identifiable.java @@ -0,0 +1,40 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Identifiable</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable#getId <em>Id</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getIdentifiable() + * @model interface="true" abstract="true" + * @generated + */ +public interface Identifiable extends EObject +{ + /** + * Returns the value of the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Id</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Id</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getIdentifiable_Id() + * @model required="true" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + Object getId(); + +} // Identifiable diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/JavaElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/JavaElement.java new file mode 100644 index 0000000000..719e289cf3 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/JavaElement.java @@ -0,0 +1,18 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Java Element</b></em>'. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getJavaElement() + * @model + * @generated + */ +public interface JavaElement extends LinkTarget +{ +} // JavaElement diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Link.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Link.java new file mode 100644 index 0000000000..db9ea8ca74 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Link.java @@ -0,0 +1,50 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Link</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Link#getTarget <em>Target</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getLink() + * @model + * @generated + */ +public interface Link extends BodyElement +{ + /** + * Returns the value of the '<em><b>Target</b></em>' reference. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Target</em>' reference isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Target</em>' reference. + * @see #setTarget(LinkTarget) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getLink_Target() + * @model resolveProxies="false" + * @generated + */ + LinkTarget getTarget(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Link#getTarget <em>Target</em>}' reference. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Target</em>' reference. + * @see #getTarget() + * @generated + */ + void setTarget(LinkTarget value); + +} // Link diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/LinkTarget.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/LinkTarget.java new file mode 100644 index 0000000000..91911e6f66 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/LinkTarget.java @@ -0,0 +1,46 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Link Target</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.LinkTarget#getLabel <em>Label</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getLinkTarget() + * @model abstract="true" + * @generated + */ +public interface LinkTarget extends Identifiable +{ + /** + * Returns the value of the '<em><b>Label</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Label</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Label</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getLinkTarget_Label() + * @model required="true" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + String getLabel(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @model required="true" sourceRequired="true" + * @generated + */ + String linkFrom(StructuralElement source); + +} // LinkTarget diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Snippet.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Snippet.java new file mode 100644 index 0000000000..c617fa880d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Snippet.java @@ -0,0 +1,44 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.common.util.EList; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Snippet</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Snippet#getCallouts <em>Callouts</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getSnippet() + * @model + * @generated + */ +public interface Snippet extends EmbeddableElement +{ + /** + * Returns the value of the '<em><b>Callouts</b></em>' containment reference list. The list contents are of type + * {@link org.eclipse.emf.cdo.releng.doc.article.Callout}. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet <em>Snippet</em>}'. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Callouts</em>' containment reference list isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Callouts</em>' containment reference list. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getSnippet_Callouts() + * @see org.eclipse.emf.cdo.releng.doc.article.Callout#getSnippet + * @model opposite="snippet" containment="true" + * @generated + */ + EList<Callout> getCallouts(); + +} // Snippet diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/SourceCode.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/SourceCode.java new file mode 100644 index 0000000000..c3fb3a4fc0 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/SourceCode.java @@ -0,0 +1,18 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Source Code</b></em>'. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getSourceCode() + * @model + * @generated + */ +public interface SourceCode extends ExternalTarget +{ +} // SourceCode diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/StructuralElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/StructuralElement.java new file mode 100644 index 0000000000..cade941d93 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/StructuralElement.java @@ -0,0 +1,183 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +import org.eclipse.emf.common.util.EList; + +import com.sun.javadoc.Doc; + +import java.io.File; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Structural Element</b></em>'. <!-- end-user-doc + * --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getChildren <em>Children</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent <em>Parent</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getTitle <em>Title</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getPath <em>Path</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getFullPath <em>Full Path</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getOutputFile <em>Output File</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getDocumentation <em>Documentation</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement() + * @model abstract="true" + * @generated + */ +public interface StructuralElement extends LinkTarget +{ + /** + * Returns the value of the '<em><b>Children</b></em>' containment reference list. The list contents are of type + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement}. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent <em>Parent</em>}'. <!-- begin-user-doc + * --> + * <p> + * If the meaning of the '<em>Children</em>' containment reference list isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Children</em>' containment reference list. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Children() + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent + * @model opposite="parent" containment="true" + * @generated + */ + EList<StructuralElement> getChildren(); + + /** + * Returns the value of the '<em><b>Parent</b></em>' container reference. It is bidirectional and its opposite is ' + * {@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getChildren <em>Children</em>}'. <!-- + * begin-user-doc --> + * <p> + * If the meaning of the '<em>Parent</em>' container reference isn't clear, there really should be more of a + * description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Parent</em>' container reference. + * @see #setParent(StructuralElement) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Parent() + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getChildren + * @model opposite="children" resolveProxies="false" transient="false" + * @generated + */ + StructuralElement getParent(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement#getParent <em>Parent</em>}' + * container reference. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Parent</em>' container reference. + * @see #getParent() + * @generated + */ + void setParent(StructuralElement value); + + /** + * Returns the value of the '<em><b>Title</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Title</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Title</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Title() + * @model required="true" changeable="false" + * @generated + */ + String getTitle(); + + /** + * Returns the value of the '<em><b>Path</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Path</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Path</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Path() + * @model required="true" changeable="false" + * @generated + */ + String getPath(); + + /** + * Returns the value of the '<em><b>Full Path</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Full Path</em>' attribute isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Full Path</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_FullPath() + * @model required="true" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + String getFullPath(); + + /** + * Returns the value of the '<em><b>Output File</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Output File</em>' attribute isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Output File</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_OutputFile() + * @model dataType="org.eclipse.emf.cdo.releng.doc.article.File" required="true" transient="true" changeable="false" + * volatile="true" derived="true" + * @generated + */ + File getOutputFile(); + + /** + * Returns the value of the '<em><b>Documentation</b></em>' reference. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Documentation</em>' reference isn't clear, there really should be more of a description + * here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Documentation</em>' reference. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Documentation() + * @model resolveProxies="false" required="true" transient="true" changeable="false" volatile="true" derived="true" + * @generated + */ + Documentation getDocumentation(); + + /** + * Returns the value of the '<em><b>Doc</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Doc</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Doc</em>' attribute. + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getStructuralElement_Doc() + * @model dataType="org.eclipse.emf.cdo.releng.doc.article.Doc" required="true" transient="true" changeable="false" + * volatile="true" + * @generated + */ + Doc getDoc(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @model + * @generated + */ + void generate(); + +} // StructuralElement diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Text.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Text.java new file mode 100644 index 0000000000..4ddfc6265d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Text.java @@ -0,0 +1,50 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article; + +/** + * <!-- begin-user-doc --> A representation of the model object '<em><b>Text</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are supported: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.Text#getValue <em>Value</em>}</li> + * </ul> + * </p> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getText() + * @model + * @generated + */ +public interface Text extends BodyElement +{ + /** + * Returns the value of the '<em><b>Value</b></em>' attribute. <!-- begin-user-doc --> + * <p> + * If the meaning of the '<em>Value</em>' attribute isn't clear, there really should be more of a description here... + * </p> + * <!-- end-user-doc --> + * + * @return the value of the '<em>Value</em>' attribute. + * @see #setValue(String) + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#getText_Value() + * @model required="true" + * @generated + */ + String getValue(); + + /** + * Sets the value of the '{@link org.eclipse.emf.cdo.releng.doc.article.Text#getValue <em>Value</em>}' attribute. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @param value + * the new value of the '<em>Value</em>' attribute. + * @see #getValue() + * @generated + */ + void setValue(String value); + +} // Text diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleDoclet.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleDoclet.java new file mode 100644 index 0000000000..8033bcf993 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleDoclet.java @@ -0,0 +1,208 @@ +/** + * 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.releng.doc.article.impl; + +import org.eclipse.emf.cdo.releng.doc.article.ArticleFactory; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleException; + +import com.sun.javadoc.ClassDoc; +import com.sun.javadoc.RootDoc; + +import java.io.File; +import java.text.SimpleDateFormat; +import java.util.HashSet; +import java.util.Set; + +/** + * @author Eike Stepper + */ +public class ArticleDoclet +{ + public static final String OPTION_START_TIME = "-starttime"; + + public static final String OPTION_PRIVATE = "-private"; + + public static final String OPTION_PROJECT = "-project"; + + public static final String OPTION_BASE_FOLDER = "-basefolder"; + + public static boolean hasOption(RootDoc root, String optionName) + { + for (String[] option : root.options()) + { + if (optionName.equalsIgnoreCase(option[0])) + { + return true; + } + } + + return false; + } + + public static String getOption(RootDoc root, String optionName) + { + for (String[] option : root.options()) + { + if (optionName.equalsIgnoreCase(option[0])) + { + // FIXME Multi-argument options? + return option[1]; + } + } + + return ""; + } + + public static void dumpOptions(RootDoc root) + { + Set<String> sourcepath = new HashSet<String>(); + Set<String> subpackages = new HashSet<String>(); + for (ClassDoc classDoc : root.classes()) + { + sourcepath.add(classDoc.position().file().getAbsolutePath()); + subpackages.add(classDoc.containingPackage().name()); + } + + System.out.print("-sourcepath"); + String sep = " "; + for (String string : sourcepath) + { + System.out.print(sep); + System.out.print(string.replace('\\', '/').replaceAll("C:/", "/")); + sep = ";"; + } + + System.out.println(); + System.out.print("-subpackages"); + sep = " "; + for (String string : subpackages) + { + System.out.print(sep); + System.out.print(string); + sep = ":"; + } + + System.out.println(); + for (String[] option : root.options()) + { + System.out.print(option[0]); + for (int i = 1; i < option.length; i++) + { + String value = option[i]; + System.out.print(" " + value.replace('\\', '/').replaceAll("C:/", "/")); + } + + System.out.println(); + } + + System.out.println(); + } + + public static int optionLength(String option) + { + if (OPTION_BASE_FOLDER.equals(option)) + { + return 2; + } + + if (OPTION_START_TIME.equals(option)) + { + return 2; + } + + if (OPTION_PROJECT.equals(option)) + { + return 2; + } + + // Indicate we don't know about it + return -1; + } + + public static boolean start(RootDoc root) + { + // dumpOptions(root); + + long startTime = System.currentTimeMillis(); + + try + { + String timeOption = getOption(root, OPTION_START_TIME); + if (timeOption.length() != 0) + { + try + { + startTime = new SimpleDateFormat("y-M-D-H-m-s-S").parse(timeOption).getTime(); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + } + + if (!hasOption(root, OPTION_PRIVATE)) + { + throw new ArticleException("Missing option: " + OPTION_PRIVATE); + } + + File baseFolder = new File(getOption(root, OPTION_BASE_FOLDER)); + String project = getOption(root, OPTION_PROJECT); + + Context context = ArticleFactory.eINSTANCE.createContext(root, baseFolder, project); + + Documentation documentation = context.getDocumentation(); + documentation.generate(); + + return true; + } + catch (ArticleException ex) + { + System.err.println(ex.getMessage()); + } + catch (Error ex) + { + ex.printStackTrace(); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + finally + { + long duration = (System.currentTimeMillis() - startTime) / 1000; + System.out.println("Total time: " + duration + " seconds"); + } + + return false; + } + + static + { + // Preload classes + new ArticleImpl(); + new CalloutImpl(); + new CategoryImpl(); + new ChapterImpl(); + new ContextImpl(); + new DiagramImpl(); + new DocumentationImpl(); + new EmbeddingImpl(); + new ExternalTargetImpl(); + new FactoryImpl(); + new JavaElementImpl(); + new LinkImpl(); + new SnippetImpl(); + new SourceCodeImpl(); + new TextImpl(); + } +} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleFactoryImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleFactoryImpl.java new file mode 100644 index 0000000000..9c2ea87fe6 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleFactoryImpl.java @@ -0,0 +1,369 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.ArticleFactory; +import org.eclipse.emf.cdo.releng.doc.article.ArticlePackage; +import org.eclipse.emf.cdo.releng.doc.article.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Category; +import org.eclipse.emf.cdo.releng.doc.article.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Diagram; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.ExternalTarget; +import org.eclipse.emf.cdo.releng.doc.article.Factory; +import org.eclipse.emf.cdo.releng.doc.article.JavaElement; +import org.eclipse.emf.cdo.releng.doc.article.Link; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; +import org.eclipse.emf.cdo.releng.doc.article.SourceCode; +import org.eclipse.emf.cdo.releng.doc.article.Text; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.impl.EFactoryImpl; +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import com.sun.javadoc.RootDoc; + +import java.io.File; + +/** + * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc --> + * + * @generated + */ +public class ArticleFactoryImpl extends EFactoryImpl implements ArticleFactory +{ + /** + * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public static ArticleFactory init() + { + try + { + ArticleFactory theArticleFactory = (ArticleFactory)EPackage.Registry.INSTANCE + .getEFactory("http://www.eclipse.org/ARTICLE/1.0"); + if (theArticleFactory != null) + { + return theArticleFactory; + } + } + catch (Exception exception) + { + EcorePlugin.INSTANCE.log(exception); + } + return new ArticleFactoryImpl(); + } + + /** + * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ArticleFactoryImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public EObject create(EClass eClass) + { + switch (eClass.getClassifierID()) + { + case ArticlePackage.DOCUMENTATION: + return createDocumentation(); + case ArticlePackage.CONTEXT: + return createContext(); + case ArticlePackage.CATEGORY: + return createCategory(); + case ArticlePackage.ARTICLE: + return createArticle(); + case ArticlePackage.CHAPTER: + return createChapter(); + case ArticlePackage.SNIPPET: + return createSnippet(); + case ArticlePackage.DIAGRAM: + return createDiagram(); + case ArticlePackage.FACTORY: + return createFactory(); + case ArticlePackage.JAVA_ELEMENT: + return createJavaElement(); + case ArticlePackage.CALLOUT: + return createCallout(); + case ArticlePackage.EXTERNAL_TARGET: + return createExternalTarget(); + case ArticlePackage.TEXT: + return createText(); + case ArticlePackage.LINK: + return createLink(); + case ArticlePackage.EMBEDDING: + return createEmbedding(); + case ArticlePackage.SOURCE_CODE: + return createSourceCode(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) + { + switch (eDataType.getClassifierID()) + { + case ArticlePackage.FILE: + return createFileFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) + { + switch (eDataType.getClassifierID()) + { + case ArticlePackage.FILE: + return convertFileToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Documentation createDocumentation() + { + DocumentationImpl documentation = new DocumentationImpl(); + return documentation; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Context createContext() + { + ContextImpl context = new ContextImpl(); + return context; + } + + public Context createContext(RootDoc root, File baseFolder, String project) + { + return new ContextImpl(root, baseFolder, project); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Category createCategory() + { + CategoryImpl category = new CategoryImpl(); + return category; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Article createArticle() + { + ArticleImpl article = new ArticleImpl(); + return article; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Chapter createChapter() + { + ChapterImpl chapter = new ChapterImpl(); + return chapter; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Snippet createSnippet() + { + SnippetImpl snippet = new SnippetImpl(); + return snippet; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Diagram createDiagram() + { + DiagramImpl diagram = new DiagramImpl(); + return diagram; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Factory createFactory() + { + FactoryImpl factory = new FactoryImpl(); + return factory; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public JavaElement createJavaElement() + { + JavaElementImpl javaElement = new JavaElementImpl(); + return javaElement; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Callout createCallout() + { + CalloutImpl callout = new CalloutImpl(); + return callout; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ExternalTarget createExternalTarget() + { + ExternalTargetImpl externalTarget = new ExternalTargetImpl(); + return externalTarget; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Text createText() + { + TextImpl text = new TextImpl(); + return text; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Link createLink() + { + LinkImpl link = new LinkImpl(); + return link; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Embedding createEmbedding() + { + EmbeddingImpl embedding = new EmbeddingImpl(); + return embedding; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public SourceCode createSourceCode() + { + SourceCodeImpl sourceCode = new SourceCodeImpl(); + return sourceCode; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public File createFileFromString(EDataType eDataType, String initialValue) + { + return (File)super.createFromString(eDataType, initialValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String convertFileToString(EDataType eDataType, Object instanceValue) + { + return super.convertToString(eDataType, instanceValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ArticlePackage getArticlePackage() + { + return (ArticlePackage)getEPackage(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @deprecated + * @generated + */ + @Deprecated + public static ArticlePackage getPackage() + { + return ArticlePackage.eINSTANCE; + } + +} // ArticleFactoryImpl 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 new file mode 100644 index 0000000000..59403ae350 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticleImpl.java @@ -0,0 +1,52 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.ecore.EClass; + +import com.sun.javadoc.ClassDoc; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Article</b></em>'. <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class ArticleImpl extends ChapterImpl implements Article +{ + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected ArticleImpl() + { + super(); + } + + ArticleImpl(StructuralElement parent, ClassDoc classDoc) + { + super(parent, classDoc); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.ARTICLE; + } + +} // ArticleImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticlePackageImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticlePackageImpl.java new file mode 100644 index 0000000000..78f86c482a --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ArticlePackageImpl.java @@ -0,0 +1,1169 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.ArticleFactory; +import org.eclipse.emf.cdo.releng.doc.article.ArticlePackage; +import org.eclipse.emf.cdo.releng.doc.article.Body; +import org.eclipse.emf.cdo.releng.doc.article.BodyElement; +import org.eclipse.emf.cdo.releng.doc.article.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Category; +import org.eclipse.emf.cdo.releng.doc.article.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Diagram; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.ExternalTarget; +import org.eclipse.emf.cdo.releng.doc.article.Factory; +import org.eclipse.emf.cdo.releng.doc.article.Identifiable; +import org.eclipse.emf.cdo.releng.doc.article.JavaElement; +import org.eclipse.emf.cdo.releng.doc.article.Link; +import org.eclipse.emf.cdo.releng.doc.article.LinkTarget; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; +import org.eclipse.emf.cdo.releng.doc.article.SourceCode; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.Text; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EOperation; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import com.sun.javadoc.Doc; +import com.sun.javadoc.RootDoc; + +import java.io.File; + +/** + * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc --> + * + * @generated + */ +public class ArticlePackageImpl extends EPackageImpl implements ArticlePackage +{ + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass documentationEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass contextEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass categoryEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass articleEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass chapterEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass snippetEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass diagramEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass factoryEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass javaElementEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass structuralElementEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass linkTargetEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass calloutEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass embeddableElementEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass externalTargetEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass identifiableEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass bodyEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass bodyElementEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass textEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass linkEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass embeddingEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EClass sourceCodeEClass = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EDataType rootDocEDataType = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EDataType fileEDataType = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private EDataType docEDataType = null; + + /** + * Creates an instance of the model <b>Package</b>, registered with {@link org.eclipse.emf.ecore.EPackage.Registry + * EPackage.Registry} by the package package URI value. + * <p> + * Note: the correct way to create the package is via the static factory method {@link #init init()}, which also + * performs initialization of the package, or returns the registered package, if one already exists. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage#eNS_URI + * @see #init() + * @generated + */ + private ArticlePackageImpl() + { + super(eNS_URI, ArticleFactory.eINSTANCE); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. + * <p> + * This method is used to initialize {@link ArticlePackage#eINSTANCE} when that field is accessed. Clients should not + * invoke it directly. Instead, they should simply access that field to obtain the package. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static ArticlePackage init() + { + if (isInited) + return (ArticlePackage)EPackage.Registry.INSTANCE.getEPackage(ArticlePackage.eNS_URI); + + // Obtain or create and register package + ArticlePackageImpl theArticlePackage = (ArticlePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ArticlePackageImpl ? EPackage.Registry.INSTANCE + .get(eNS_URI) : new ArticlePackageImpl()); + + isInited = true; + + // Create package meta-data objects + theArticlePackage.createPackageContents(); + + // Initialize created meta-data + theArticlePackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theArticlePackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(ArticlePackage.eNS_URI, theArticlePackage); + return theArticlePackage; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getDocumentation() + { + return documentationEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getDocumentation_Context() + { + return (EReference)documentationEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getDocumentation_EmbeddableElements() + { + return (EReference)documentationEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getDocumentation_Dependencies() + { + return (EReference)documentationEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getDocumentation_Project() + { + return (EAttribute)documentationEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getContext() + { + return contextEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getContext_BaseFolder() + { + return (EAttribute)contextEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getContext_Project() + { + return (EAttribute)contextEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getContext_Documentations() + { + return (EReference)contextEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getContext_Root() + { + return (EAttribute)contextEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getCategory() + { + return categoryEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getArticle() + { + return articleEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getChapter() + { + return chapterEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getChapter_Article() + { + return (EReference)chapterEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getSnippet() + { + return snippetEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getSnippet_Callouts() + { + return (EReference)snippetEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getDiagram() + { + return diagramEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getDiagram_Code() + { + return (EAttribute)diagramEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getFactory() + { + return factoryEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getJavaElement() + { + return javaElementEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getStructuralElement() + { + return structuralElementEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getStructuralElement_Children() + { + return (EReference)structuralElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getStructuralElement_Parent() + { + return (EReference)structuralElementEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getStructuralElement_Title() + { + return (EAttribute)structuralElementEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getStructuralElement_Path() + { + return (EAttribute)structuralElementEClass.getEStructuralFeatures().get(3); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getStructuralElement_FullPath() + { + return (EAttribute)structuralElementEClass.getEStructuralFeatures().get(4); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getStructuralElement_OutputFile() + { + return (EAttribute)structuralElementEClass.getEStructuralFeatures().get(5); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getStructuralElement_Documentation() + { + return (EReference)structuralElementEClass.getEStructuralFeatures().get(6); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getStructuralElement_Doc() + { + return (EAttribute)structuralElementEClass.getEStructuralFeatures().get(7); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getLinkTarget() + { + return linkTargetEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getLinkTarget_Label() + { + return (EAttribute)linkTargetEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getCallout() + { + return calloutEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getCallout_Snippet() + { + return (EReference)calloutEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getCallout_Elements() + { + return (EReference)calloutEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getEmbeddableElement() + { + return embeddableElementEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getEmbeddableElement_Documentation() + { + return (EReference)embeddableElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getExternalTarget() + { + return externalTargetEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getIdentifiable() + { + return identifiableEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getIdentifiable_Id() + { + return (EAttribute)identifiableEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getBody() + { + return bodyEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getBody_Elements() + { + return (EReference)bodyEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getBody_Html() + { + return (EAttribute)bodyEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getBody_Category() + { + return (EReference)bodyEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getBodyElement() + { + return bodyElementEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getBodyElement_Body() + { + return (EReference)bodyElementEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getBodyElement_Html() + { + return (EAttribute)bodyElementEClass.getEStructuralFeatures().get(1); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getBodyElement_Callout() + { + return (EReference)bodyElementEClass.getEStructuralFeatures().get(2); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getText() + { + return textEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EAttribute getText_Value() + { + return (EAttribute)textEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getLink() + { + return linkEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getLink_Target() + { + return (EReference)linkEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getEmbedding() + { + return embeddingEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EReference getEmbedding_Element() + { + return (EReference)embeddingEClass.getEStructuralFeatures().get(0); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EClass getSourceCode() + { + return sourceCodeEClass; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EDataType getRootDoc() + { + return rootDocEDataType; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EDataType getFile() + { + return fileEDataType; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EDataType getDoc() + { + return docEDataType; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ArticleFactory getArticleFactory() + { + return (ArticleFactory)getEFactoryInstance(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is guarded to have no affect on any invocation but its + * first. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void createPackageContents() + { + if (isCreated) + return; + isCreated = true; + + // Create classes and their features + documentationEClass = createEClass(DOCUMENTATION); + createEReference(documentationEClass, DOCUMENTATION__CONTEXT); + createEReference(documentationEClass, DOCUMENTATION__EMBEDDABLE_ELEMENTS); + createEReference(documentationEClass, DOCUMENTATION__DEPENDENCIES); + createEAttribute(documentationEClass, DOCUMENTATION__PROJECT); + + contextEClass = createEClass(CONTEXT); + createEAttribute(contextEClass, CONTEXT__BASE_FOLDER); + createEAttribute(contextEClass, CONTEXT__PROJECT); + createEReference(contextEClass, CONTEXT__DOCUMENTATIONS); + createEAttribute(contextEClass, CONTEXT__ROOT); + + categoryEClass = createEClass(CATEGORY); + + articleEClass = createEClass(ARTICLE); + + chapterEClass = createEClass(CHAPTER); + createEReference(chapterEClass, CHAPTER__ARTICLE); + + snippetEClass = createEClass(SNIPPET); + createEReference(snippetEClass, SNIPPET__CALLOUTS); + + diagramEClass = createEClass(DIAGRAM); + createEAttribute(diagramEClass, DIAGRAM__CODE); + + factoryEClass = createEClass(FACTORY); + + javaElementEClass = createEClass(JAVA_ELEMENT); + + structuralElementEClass = createEClass(STRUCTURAL_ELEMENT); + createEReference(structuralElementEClass, STRUCTURAL_ELEMENT__CHILDREN); + createEReference(structuralElementEClass, STRUCTURAL_ELEMENT__PARENT); + createEAttribute(structuralElementEClass, STRUCTURAL_ELEMENT__TITLE); + createEAttribute(structuralElementEClass, STRUCTURAL_ELEMENT__PATH); + createEAttribute(structuralElementEClass, STRUCTURAL_ELEMENT__FULL_PATH); + createEAttribute(structuralElementEClass, STRUCTURAL_ELEMENT__OUTPUT_FILE); + createEReference(structuralElementEClass, STRUCTURAL_ELEMENT__DOCUMENTATION); + createEAttribute(structuralElementEClass, STRUCTURAL_ELEMENT__DOC); + + linkTargetEClass = createEClass(LINK_TARGET); + createEAttribute(linkTargetEClass, LINK_TARGET__LABEL); + + calloutEClass = createEClass(CALLOUT); + createEReference(calloutEClass, CALLOUT__SNIPPET); + createEReference(calloutEClass, CALLOUT__ELEMENTS); + + embeddableElementEClass = createEClass(EMBEDDABLE_ELEMENT); + createEReference(embeddableElementEClass, EMBEDDABLE_ELEMENT__DOCUMENTATION); + + externalTargetEClass = createEClass(EXTERNAL_TARGET); + + identifiableEClass = createEClass(IDENTIFIABLE); + createEAttribute(identifiableEClass, IDENTIFIABLE__ID); + + bodyEClass = createEClass(BODY); + createEReference(bodyEClass, BODY__ELEMENTS); + createEAttribute(bodyEClass, BODY__HTML); + createEReference(bodyEClass, BODY__CATEGORY); + + bodyElementEClass = createEClass(BODY_ELEMENT); + createEReference(bodyElementEClass, BODY_ELEMENT__BODY); + createEAttribute(bodyElementEClass, BODY_ELEMENT__HTML); + createEReference(bodyElementEClass, BODY_ELEMENT__CALLOUT); + + textEClass = createEClass(TEXT); + createEAttribute(textEClass, TEXT__VALUE); + + linkEClass = createEClass(LINK); + createEReference(linkEClass, LINK__TARGET); + + embeddingEClass = createEClass(EMBEDDING); + createEReference(embeddingEClass, EMBEDDING__ELEMENT); + + sourceCodeEClass = createEClass(SOURCE_CODE); + + // Create data types + rootDocEDataType = createEDataType(ROOT_DOC); + fileEDataType = createEDataType(FILE); + docEDataType = createEDataType(DOC); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This method is guarded to have no affect on any + * invocation but its first. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void initializePackageContents() + { + if (isInitialized) + return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + documentationEClass.getESuperTypes().add(this.getStructuralElement()); + categoryEClass.getESuperTypes().add(this.getBody()); + articleEClass.getESuperTypes().add(this.getChapter()); + chapterEClass.getESuperTypes().add(this.getBody()); + snippetEClass.getESuperTypes().add(this.getEmbeddableElement()); + diagramEClass.getESuperTypes().add(this.getBodyElement()); + factoryEClass.getESuperTypes().add(this.getEmbeddableElement()); + javaElementEClass.getESuperTypes().add(this.getLinkTarget()); + structuralElementEClass.getESuperTypes().add(this.getLinkTarget()); + linkTargetEClass.getESuperTypes().add(this.getIdentifiable()); + embeddableElementEClass.getESuperTypes().add(this.getIdentifiable()); + externalTargetEClass.getESuperTypes().add(this.getLinkTarget()); + bodyEClass.getESuperTypes().add(this.getStructuralElement()); + textEClass.getESuperTypes().add(this.getBodyElement()); + linkEClass.getESuperTypes().add(this.getBodyElement()); + embeddingEClass.getESuperTypes().add(this.getBodyElement()); + sourceCodeEClass.getESuperTypes().add(this.getExternalTarget()); + + // Initialize classes and features; add operations and parameters + initEClass(documentationEClass, Documentation.class, "Documentation", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getDocumentation_Context(), this.getContext(), this.getContext_Documentations(), "context", null, 1, + 1, Documentation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getDocumentation_EmbeddableElements(), this.getEmbeddableElement(), + this.getEmbeddableElement_Documentation(), "embeddableElements", null, 0, -1, Documentation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getDocumentation_Dependencies(), this.getDocumentation(), null, "dependencies", null, 0, -1, + Documentation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDocumentation_Project(), ecorePackage.getEString(), "project", null, 1, 1, Documentation.class, + !IS_TRANSIENT, !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(contextEClass, Context.class, "Context", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getContext_BaseFolder(), this.getFile(), "baseFolder", null, 1, 1, Context.class, !IS_TRANSIENT, + !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getContext_Project(), ecorePackage.getEString(), "project", null, 1, 1, Context.class, + !IS_TRANSIENT, !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getContext_Documentations(), this.getDocumentation(), this.getDocumentation_Context(), + "documentations", null, 1, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getContext_Root(), this.getRootDoc(), "root", null, 1, 1, Context.class, IS_TRANSIENT, IS_VOLATILE, + !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(categoryEClass, Category.class, "Category", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(articleEClass, Article.class, "Article", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(chapterEClass, Chapter.class, "Chapter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getChapter_Article(), this.getArticle(), null, "article", null, 1, 1, Chapter.class, IS_TRANSIENT, + IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, + IS_ORDERED); + + initEClass(snippetEClass, Snippet.class, "Snippet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getSnippet_Callouts(), this.getCallout(), this.getCallout_Snippet(), "callouts", null, 0, -1, + Snippet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(diagramEClass, Diagram.class, "Diagram", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDiagram_Code(), ecorePackage.getEString(), "code", null, 1, 1, Diagram.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(factoryEClass, Factory.class, "Factory", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(javaElementEClass, JavaElement.class, "JavaElement", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(structuralElementEClass, StructuralElement.class, "StructuralElement", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getStructuralElement_Children(), this.getStructuralElement(), this.getStructuralElement_Parent(), + "children", null, 0, -1, StructuralElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getStructuralElement_Parent(), this.getStructuralElement(), this.getStructuralElement_Children(), + "parent", null, 0, 1, StructuralElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getStructuralElement_Title(), ecorePackage.getEString(), "title", null, 1, 1, + StructuralElement.class, !IS_TRANSIENT, !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getStructuralElement_Path(), ecorePackage.getEString(), "path", null, 1, 1, StructuralElement.class, + !IS_TRANSIENT, !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getStructuralElement_FullPath(), ecorePackage.getEString(), "fullPath", null, 1, 1, + StructuralElement.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + IS_DERIVED, IS_ORDERED); + initEAttribute(getStructuralElement_OutputFile(), this.getFile(), "outputFile", null, 1, 1, + StructuralElement.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + IS_DERIVED, IS_ORDERED); + initEReference(getStructuralElement_Documentation(), this.getDocumentation(), null, "documentation", null, 1, 1, + StructuralElement.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getStructuralElement_Doc(), this.getDoc(), "doc", null, 1, 1, StructuralElement.class, IS_TRANSIENT, + IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + addEOperation(structuralElementEClass, null, "generate", 0, 1, IS_UNIQUE, IS_ORDERED); + + initEClass(linkTargetEClass, LinkTarget.class, "LinkTarget", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLinkTarget_Label(), ecorePackage.getEString(), "label", null, 1, 1, LinkTarget.class, + IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + EOperation op = addEOperation(linkTargetEClass, ecorePackage.getEString(), "linkFrom", 1, 1, IS_UNIQUE, IS_ORDERED); + addEParameter(op, this.getStructuralElement(), "source", 1, 1, IS_UNIQUE, IS_ORDERED); + + initEClass(calloutEClass, Callout.class, "Callout", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getCallout_Snippet(), this.getSnippet(), this.getSnippet_Callouts(), "snippet", null, 1, 1, + Callout.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getCallout_Elements(), this.getBodyElement(), this.getBodyElement_Callout(), "elements", null, 1, + -1, Callout.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(embeddableElementEClass, EmbeddableElement.class, "EmbeddableElement", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getEmbeddableElement_Documentation(), this.getDocumentation(), + this.getDocumentation_EmbeddableElements(), "documentation", null, 1, 1, EmbeddableElement.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + op = addEOperation(embeddableElementEClass, ecorePackage.getEString(), "getHtml", 1, 1, IS_UNIQUE, IS_ORDERED); + addEParameter(op, this.getEmbedding(), "embedder", 1, 1, IS_UNIQUE, IS_ORDERED); + + initEClass(externalTargetEClass, ExternalTarget.class, "ExternalTarget", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(identifiableEClass, Identifiable.class, "Identifiable", IS_ABSTRACT, IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIdentifiable_Id(), ecorePackage.getEJavaObject(), "id", null, 1, 1, Identifiable.class, + IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(bodyEClass, Body.class, "Body", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getBody_Elements(), this.getBodyElement(), this.getBodyElement_Body(), "elements", null, 0, -1, + Body.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getBody_Html(), ecorePackage.getEString(), "html", null, 0, 1, Body.class, !IS_TRANSIENT, + !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEReference(getBody_Category(), this.getCategory(), null, "category", null, 0, 1, Body.class, IS_TRANSIENT, + IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, + IS_ORDERED); + + initEClass(bodyElementEClass, BodyElement.class, "BodyElement", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getBodyElement_Body(), this.getBody(), this.getBody_Elements(), "body", null, 0, 1, + BodyElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getBodyElement_Html(), ecorePackage.getEString(), "html", null, 0, 1, BodyElement.class, + !IS_TRANSIENT, !IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEReference(getBodyElement_Callout(), this.getCallout(), this.getCallout_Elements(), "callout", null, 0, 1, + BodyElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(textEClass, Text.class, "Text", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getText_Value(), ecorePackage.getEString(), "value", null, 1, 1, Text.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(linkEClass, Link.class, "Link", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getLink_Target(), this.getLinkTarget(), null, "target", null, 0, 1, Link.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(embeddingEClass, Embedding.class, "Embedding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getEmbedding_Element(), this.getEmbeddableElement(), null, "element", null, 1, 1, Embedding.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(sourceCodeEClass, SourceCode.class, "SourceCode", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + // Initialize data types + initEDataType(rootDocEDataType, RootDoc.class, "RootDoc", !IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(fileEDataType, File.class, "File", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + initEDataType(docEDataType, Doc.class, "Doc", !IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); + + // Create resource + createResource(eNS_URI); + } + +} // ArticlePackageImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyElementImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyElementImpl.java new file mode 100644 index 0000000000..3dcbcb8b01 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyElementImpl.java @@ -0,0 +1,351 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Body; +import org.eclipse.emf.cdo.releng.doc.article.BodyElement; +import org.eclipse.emf.cdo.releng.doc.article.Callout; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.EObjectImpl; +import org.eclipse.emf.ecore.util.EcoreUtil; + +import com.sun.javadoc.Tag; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Body Element</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl#getBody <em>Body</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl#getHtml <em>Html</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyElementImpl#getCallout <em>Callout</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public abstract class BodyElementImpl extends EObjectImpl implements BodyElement +{ + /** + * The default value of the '{@link #getHtml() <em>Html</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getHtml() + * @generated + * @ordered + */ + protected static final String HTML_EDEFAULT = null; + + /** + * The cached value of the '{@link #getHtml() <em>Html</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getHtml() + * @generated + * @ordered + */ + protected String html = HTML_EDEFAULT; + + // TODO Is tag needed? + private Tag tag; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected BodyElementImpl() + { + super(); + } + + BodyElementImpl(Body body, Tag tag) + { + setBody(body); + this.tag = tag; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.BODY_ELEMENT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Body getBody() + { + if (eContainerFeatureID() != ArticlePackage.BODY_ELEMENT__BODY) + return null; + return (Body)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetBody(Body newBody, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newBody, ArticlePackage.BODY_ELEMENT__BODY, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setBody(Body newBody) + { + if (newBody != eInternalContainer() + || (eContainerFeatureID() != ArticlePackage.BODY_ELEMENT__BODY && newBody != null)) + { + if (EcoreUtil.isAncestor(this, newBody)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newBody != null) + msgs = ((InternalEObject)newBody).eInverseAdd(this, ArticlePackage.BODY__ELEMENTS, Body.class, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.BODY_ELEMENT__BODY, newBody, newBody)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getHtml() + { + return html; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Callout getCallout() + { + if (eContainerFeatureID() != ArticlePackage.BODY_ELEMENT__CALLOUT) + return null; + return (Callout)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetCallout(Callout newCallout, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newCallout, ArticlePackage.BODY_ELEMENT__CALLOUT, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setCallout(Callout newCallout) + { + if (newCallout != eInternalContainer() + || (eContainerFeatureID() != ArticlePackage.BODY_ELEMENT__CALLOUT && newCallout != null)) + { + if (EcoreUtil.isAncestor(this, newCallout)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newCallout != null) + msgs = ((InternalEObject)newCallout).eInverseAdd(this, ArticlePackage.CALLOUT__ELEMENTS, Callout.class, msgs); + msgs = basicSetCallout(newCallout, msgs); + if (msgs != null) + msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.BODY_ELEMENT__CALLOUT, newCallout, + newCallout)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetBody((Body)otherEnd, msgs); + case ArticlePackage.BODY_ELEMENT__CALLOUT: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetCallout((Callout)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + return basicSetBody(null, msgs); + case ArticlePackage.BODY_ELEMENT__CALLOUT: + return basicSetCallout(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) + { + switch (eContainerFeatureID()) + { + case ArticlePackage.BODY_ELEMENT__BODY: + return eInternalContainer().eInverseRemove(this, ArticlePackage.BODY__ELEMENTS, Body.class, msgs); + case ArticlePackage.BODY_ELEMENT__CALLOUT: + return eInternalContainer().eInverseRemove(this, ArticlePackage.CALLOUT__ELEMENTS, Callout.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + return getBody(); + case ArticlePackage.BODY_ELEMENT__HTML: + return getHtml(); + case ArticlePackage.BODY_ELEMENT__CALLOUT: + return getCallout(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + setBody((Body)newValue); + return; + case ArticlePackage.BODY_ELEMENT__CALLOUT: + setCallout((Callout)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + setBody((Body)null); + return; + case ArticlePackage.BODY_ELEMENT__CALLOUT: + setCallout((Callout)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.BODY_ELEMENT__BODY: + return getBody() != null; + case ArticlePackage.BODY_ELEMENT__HTML: + return HTML_EDEFAULT == null ? html != null : !HTML_EDEFAULT.equals(html); + case ArticlePackage.BODY_ELEMENT__CALLOUT: + return getCallout() != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (html: "); + result.append(html); + result.append(')'); + return result.toString(); + } + +} // BodyElementImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyImpl.java new file mode 100644 index 0000000000..cce51d097b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/BodyImpl.java @@ -0,0 +1,346 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Body; +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.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import com.sun.javadoc.Doc; +import com.sun.javadoc.Tag; + +import java.util.Collection; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Body</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl#getElements <em>Elements</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl#getHtml <em>Html</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.BodyImpl#getCategory <em>Category</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public abstract class BodyImpl extends StructuralElementImpl implements Body +{ + /** + * The cached value of the '{@link #getElements() <em>Elements</em>}' containment reference list. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @see #getElements() + * @generated + * @ordered + */ + protected EList<BodyElement> elements; + + /** + * The default value of the '{@link #getHtml() <em>Html</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getHtml() + * @generated + * @ordered + */ + protected static final String HTML_EDEFAULT = null; + + /** + * The cached value of the '{@link #getHtml() <em>Html</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getHtml() + * @generated + * @ordered + */ + protected String html = HTML_EDEFAULT; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected BodyImpl() + { + super(); + } + + BodyImpl(StructuralElement parent, String path, Doc doc) + { + super(parent, path, doc); + + Tag[] tags = doc.inlineTags(); + if (tags == null || tags.length == 0) + { + titleMissing(); + return; + } + + int bodyStart = 0; + + Tag firstTag = tags[0]; + if (firstTag.name().equals("Text")) + { + ++bodyStart; + + String text = firstTag.text(); + int blockPos = getBlockPosition(text); + if (blockPos != -1) + { + String rest = text.substring(blockPos); + addElement(firstTag, rest); + + text = text.substring(0, blockPos); + } + + text = text.replaceAll("\\s+", " ").trim(); + setTitle(text); + } + else + { + titleMissing(); + } + + for (int i = bodyStart; i < tags.length; i++) + { + Tag tag = tags[i]; + addElement(tag, tag.text()); + } + } + + private void addElement(Tag tag, String text) + { + getElements().add(new UnresolvedBodyElementImpl(this, tag, text)); + } + + private void titleMissing() + { + Doc doc = getDoc(); + System.err.println("Warning: Title is missing in " + ArticleUtil.makeConsoleLink(doc)); + setTitle(doc.name()); + } + + private int getBlockPosition(String text) + { + String[] blocks = { "p", "br", "hr", "ul", "ol", "div", "table" }; + int result = Integer.MAX_VALUE; + + for (String block : blocks) + { + int index = text.indexOf("<" + block); + if (index != -1 && index < result) + { + result = index; + } + } + + return result == Integer.MAX_VALUE ? -1 : result; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.BODY; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<BodyElement> getElements() + { + if (elements == null) + { + elements = new EObjectContainmentWithInverseEList<BodyElement>(BodyElement.class, this, + ArticlePackage.BODY__ELEMENTS, ArticlePackage.BODY_ELEMENT__BODY); + } + return elements; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getHtml() + { + return html; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public Category getCategory() + { + StructuralElement parent = getParent(); + if (parent instanceof Category) + { + return (Category)parent; + } + + if (parent instanceof Body) + { + return ((Body)parent).getCategory(); + } + + return null; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getElements()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + return ((InternalEList<?>)getElements()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + return getElements(); + case ArticlePackage.BODY__HTML: + return getHtml(); + case ArticlePackage.BODY__CATEGORY: + return getCategory(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + getElements().clear(); + getElements().addAll((Collection<? extends BodyElement>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + getElements().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.BODY__ELEMENTS: + return elements != null && !elements.isEmpty(); + case ArticlePackage.BODY__HTML: + return HTML_EDEFAULT == null ? html != null : !HTML_EDEFAULT.equals(html); + case ArticlePackage.BODY__CATEGORY: + return getCategory() != null; + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + { + return super.toString(); + } + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (html: "); + result.append(html); + result.append(')'); + return result.toString(); + } + + @Override + public Object getId() + { + return getDoc(); + } + +} // BodyImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CalloutImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CalloutImpl.java new file mode 100644 index 0000000000..72213f1833 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CalloutImpl.java @@ -0,0 +1,268 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.EObjectImpl; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +import java.util.Collection; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Callout</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl#getSnippet <em>Snippet</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.CalloutImpl#getElements <em>Elements</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class CalloutImpl extends EObjectImpl implements Callout +{ + /** + * The cached value of the '{@link #getElements() <em>Elements</em>}' containment reference list. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @see #getElements() + * @generated + * @ordered + */ + protected EList<BodyElement> elements; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected CalloutImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.CALLOUT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Snippet getSnippet() + { + if (eContainerFeatureID() != ArticlePackage.CALLOUT__SNIPPET) + return null; + return (Snippet)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetSnippet(Snippet newSnippet, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newSnippet, ArticlePackage.CALLOUT__SNIPPET, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setSnippet(Snippet newSnippet) + { + if (newSnippet != eInternalContainer() + || (eContainerFeatureID() != ArticlePackage.CALLOUT__SNIPPET && newSnippet != null)) + { + if (EcoreUtil.isAncestor(this, newSnippet)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newSnippet != null) + msgs = ((InternalEObject)newSnippet).eInverseAdd(this, ArticlePackage.SNIPPET__CALLOUTS, Snippet.class, msgs); + msgs = basicSetSnippet(newSnippet, msgs); + if (msgs != null) + msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.CALLOUT__SNIPPET, newSnippet, newSnippet)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<BodyElement> getElements() + { + if (elements == null) + { + elements = new EObjectContainmentWithInverseEList<BodyElement>(BodyElement.class, this, + ArticlePackage.CALLOUT__ELEMENTS, ArticlePackage.BODY_ELEMENT__CALLOUT); + } + return elements; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetSnippet((Snippet)otherEnd, msgs); + case ArticlePackage.CALLOUT__ELEMENTS: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getElements()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + return basicSetSnippet(null, msgs); + case ArticlePackage.CALLOUT__ELEMENTS: + return ((InternalEList<?>)getElements()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) + { + switch (eContainerFeatureID()) + { + case ArticlePackage.CALLOUT__SNIPPET: + return eInternalContainer().eInverseRemove(this, ArticlePackage.SNIPPET__CALLOUTS, Snippet.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + return getSnippet(); + case ArticlePackage.CALLOUT__ELEMENTS: + return getElements(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + setSnippet((Snippet)newValue); + return; + case ArticlePackage.CALLOUT__ELEMENTS: + getElements().clear(); + getElements().addAll((Collection<? extends BodyElement>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + setSnippet((Snippet)null); + return; + case ArticlePackage.CALLOUT__ELEMENTS: + getElements().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.CALLOUT__SNIPPET: + return getSnippet() != null; + case ArticlePackage.CALLOUT__ELEMENTS: + return elements != null && !elements.isEmpty(); + } + return super.eIsSet(featureID); + } + +} // CalloutImpl 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 new file mode 100644 index 0000000000..d0755ebe98 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/CategoryImpl.java @@ -0,0 +1,62 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Category; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleUtil; + +import org.eclipse.emf.ecore.EClass; + +import com.sun.javadoc.PackageDoc; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Category</b></em>'. <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class CategoryImpl extends BodyImpl implements Category +{ + private PackageDoc packageDoc; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected CategoryImpl() + { + super(); + } + + CategoryImpl(StructuralElement parent, PackageDoc packageDoc) + { + super(parent, ArticleUtil.getSimplePackageName(packageDoc), packageDoc); + this.packageDoc = packageDoc; + getDocumentation().getContext().register(getId(), this); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.CATEGORY; + } + + @Override + public PackageDoc getDoc() + { + return (PackageDoc)super.getDoc(); + } +} // CategoryImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ChapterImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ChapterImpl.java new file mode 100644 index 0000000000..e51d2ee74d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ChapterImpl.java @@ -0,0 +1,114 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; + +import org.eclipse.emf.ecore.EClass; + +import com.sun.javadoc.ClassDoc; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Chapter</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.ChapterImpl#getArticle <em>Article</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class ChapterImpl extends BodyImpl implements Chapter +{ + private ClassDoc classDoc; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected ChapterImpl() + { + super(); + } + + ChapterImpl(StructuralElement parent, ClassDoc classDoc) + { + super(parent, classDoc.containingClass() == null ? classDoc.simpleTypeName() + ".html" : "#" + + classDoc.simpleTypeName(), classDoc); + this.classDoc = classDoc; + getDocumentation().getContext().register(getId(), this); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.CHAPTER; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public Article getArticle() + { + if (this instanceof Article) + { + return (Article)this; + } + + return ((Chapter)getParent()).getArticle(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.CHAPTER__ARTICLE: + return getArticle(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.CHAPTER__ARTICLE: + return getArticle() != null; + } + return super.eIsSet(featureID); + } + + @Override + public ClassDoc getDoc() + { + return (ClassDoc)super.getDoc(); + } +} // ChapterImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ContextImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ContextImpl.java new file mode 100644 index 0000000000..35e97497c2 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ContextImpl.java @@ -0,0 +1,372 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Context; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleException; +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleUtil; + +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.EObjectImpl; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import com.sun.javadoc.RootDoc; + +import java.io.File; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Context</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl#getBaseFolder <em>Base Folder</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl#getProject <em>Project</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl#getDocumentations <em>Documentations</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.ContextImpl#getRoot <em>Root</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class ContextImpl extends EObjectImpl implements Context +{ + /** + * The default value of the '{@link #getBaseFolder() <em>Base Folder</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getBaseFolder() + * @generated + * @ordered + */ + protected static final File BASE_FOLDER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getBaseFolder() <em>Base Folder</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getBaseFolder() + * @generated + * @ordered + */ + protected File baseFolder = BASE_FOLDER_EDEFAULT; + + /** + * The default value of the '{@link #getProject() <em>Project</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getProject() + * @generated + * @ordered + */ + protected static final String PROJECT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProject() <em>Project</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getProject() + * @generated + * @ordered + */ + protected String project = PROJECT_EDEFAULT; + + /** + * The cached value of the '{@link #getDocumentations() <em>Documentations</em>}' containment reference list. <!-- + * begin-user-doc --> <!-- end-user-doc --> + * + * @see #getDocumentations() + * @generated + * @ordered + */ + protected EList<Documentation> documentations; + + /** + * The default value of the '{@link #getRoot() <em>Root</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getRoot() + * @generated + * @ordered + */ + protected static final RootDoc ROOT_EDEFAULT = null; + + protected RootDoc root = ROOT_EDEFAULT; + + protected final Map<Object, Object> registry = new HashMap<Object, Object>(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected ContextImpl() + { + super(); + } + + ContextImpl(RootDoc root, File baseFolder, String project) + { + this.root = root; + this.baseFolder = ArticleUtil.canonify(baseFolder); + this.project = project; + + new DocumentationImpl(this, project); + + for (Documentation documentation : getDocumentations()) + { + dump(documentation, ""); + } + } + + private void dump(StructuralElement element, String prefix) + { + System.out.println(prefix + element.getTitle() + " --> " + ArticleUtil.makeConsoleLink(element.getDoc())); + + for (StructuralElement child : element.getChildren()) + { + dump(child, prefix + " "); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.CONTEXT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public File getBaseFolder() + { + return baseFolder; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getProject() + { + return project; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<Documentation> getDocumentations() + { + if (documentations == null) + { + documentations = new EObjectContainmentWithInverseEList<Documentation>(Documentation.class, this, + ArticlePackage.CONTEXT__DOCUMENTATIONS, ArticlePackage.DOCUMENTATION__CONTEXT); + } + return documentations; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public RootDoc getRoot() + { + return root; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getDocumentations()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + return ((InternalEList<?>)getDocumentations()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__BASE_FOLDER: + return getBaseFolder(); + case ArticlePackage.CONTEXT__PROJECT: + return getProject(); + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + return getDocumentations(); + case ArticlePackage.CONTEXT__ROOT: + return getRoot(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + getDocumentations().clear(); + getDocumentations().addAll((Collection<? extends Documentation>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + getDocumentations().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.CONTEXT__BASE_FOLDER: + return BASE_FOLDER_EDEFAULT == null ? baseFolder != null : !BASE_FOLDER_EDEFAULT.equals(baseFolder); + case ArticlePackage.CONTEXT__PROJECT: + return PROJECT_EDEFAULT == null ? project != null : !PROJECT_EDEFAULT.equals(project); + case ArticlePackage.CONTEXT__DOCUMENTATIONS: + return documentations != null && !documentations.isEmpty(); + case ArticlePackage.CONTEXT__ROOT: + return ROOT_EDEFAULT == null ? getRoot() != null : !ROOT_EDEFAULT.equals(getRoot()); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + { + return super.toString(); + } + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (baseFolder: "); + result.append(baseFolder); + result.append(", project: "); + result.append(project); + result.append(')'); + return result.toString(); + } + + public Documentation getDocumentation() + { + return getDocumentation(getProject()); + } + + public Documentation getDocumentation(String id) + { + for (Documentation documentation : getDocumentations()) + { + if (documentation.getId().equals(id)) + { + return documentation; + } + } + + return null; + } + + public boolean isRegistered(Object id) + { + return registry.containsKey(id); + } + + public void register(Object id, Object value) + { + if (registry.put(id, value) != null) + { + throw new ArticleException("Duplicate registration: " + id); + } + } + + public Object lookup(Object id) + { + return registry.get(id); + } + +} // ContextImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/DelegatingTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DelegatingTag.java index 18baa354b3..2beae50409 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/DelegatingTag.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DelegatingTag.java @@ -8,7 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article.util;
+package org.eclipse.emf.cdo.releng.doc.article.impl;
import com.sun.javadoc.Doc;
import com.sun.javadoc.SourcePosition;
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DiagramImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DiagramImpl.java new file mode 100644 index 0000000000..e4883b0865 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DiagramImpl.java @@ -0,0 +1,176 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Diagram; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Diagram</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.DiagramImpl#getCode <em>Code</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class DiagramImpl extends BodyElementImpl implements Diagram +{ + /** + * The default value of the '{@link #getCode() <em>Code</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getCode() + * @generated + * @ordered + */ + protected static final String CODE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCode() <em>Code</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getCode() + * @generated + * @ordered + */ + protected String code = CODE_EDEFAULT; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected DiagramImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.DIAGRAM; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getCode() + { + return code; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setCode(String newCode) + { + String oldCode = code; + code = newCode; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.DIAGRAM__CODE, oldCode, code)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.DIAGRAM__CODE: + return getCode(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.DIAGRAM__CODE: + setCode((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.DIAGRAM__CODE: + setCode(CODE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.DIAGRAM__CODE: + return CODE_EDEFAULT == null ? code != null : !CODE_EDEFAULT.equals(code); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (code: "); + result.append(code); + result.append(')'); + return result.toString(); + } + +} // DiagramImpl 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 new file mode 100644 index 0000000000..1e1d997743 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/DocumentationImpl.java @@ -0,0 +1,529 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article.impl; + +import org.eclipse.emf.cdo.releng.doc.AssembleScripts; +import org.eclipse.emf.cdo.releng.doc.article.ArticlePackage; +import org.eclipse.emf.cdo.releng.doc.article.Category; +import org.eclipse.emf.cdo.releng.doc.article.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleUtil; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EObjectEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +import com.sun.javadoc.ClassDoc; +import com.sun.javadoc.MethodDoc; +import com.sun.javadoc.PackageDoc; +import com.sun.javadoc.RootDoc; + +import java.io.File; +import java.util.Collection; +import java.util.List; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Documentation</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl#getContext <em>Context</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl#getEmbeddableElements <em>Embeddable + * Elements</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl#getDependencies <em>Dependencies</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.DocumentationImpl#getProject <em>Project</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class DocumentationImpl extends StructuralElementImpl implements Documentation +{ + /** + * The cached value of the '{@link #getEmbeddableElements() <em>Embeddable Elements</em>}' containment reference list. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getEmbeddableElements() + * @generated + * @ordered + */ + protected EList<EmbeddableElement> embeddableElements; + + /** + * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' reference list. <!-- begin-user-doc --> + * <!-- end-user-doc --> + * + * @see #getDependencies() + * @generated + * @ordered + */ + protected EList<Documentation> dependencies; + + /** + * The default value of the '{@link #getProject() <em>Project</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getProject() + * @generated + * @ordered + */ + protected static final String PROJECT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getProject() <em>Project</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getProject() + * @generated + * @ordered + */ + protected String project = PROJECT_EDEFAULT; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected DocumentationImpl() + { + super(); + } + + DocumentationImpl(Context context, String project) + { + super(null, "plugins/" + project + "/html", context.getRoot()); + setContext(context); + this.project = project; + context.register(getId(), this); + + File projectFolder = getOutputFile().getParentFile(); + setTitle(AssembleScripts.getPluginName(projectFolder)); + + List<String> dependencies = AssembleScripts.getDependencies(projectFolder); + for (String dependency : dependencies) + { + if (context.getDocumentation(dependency) == null) + { + new DocumentationImpl(context, dependency); + } + } + + for (ClassDoc classDoc : context.getRoot().classes()) + { + if (classDoc.containingClass() == null) + { + File file = classDoc.position().file(); + if (ArticleUtil.containsFile(projectFolder, file)) + { + PackageDoc packageDoc = classDoc.containingPackage(); + StructuralElement parent = analyzePackage(packageDoc); + analyzeClass(parent, classDoc); + } + } + } + } + + private StructuralElement analyzePackage(PackageDoc packageDoc) + { + if (packageDoc != null) + { + Object value = getContext().lookup(packageDoc); + if (value instanceof Category) + { + return (Category)value; + } + + PackageDoc parentDoc = ArticleUtil.getParentPackage(getContext().getRoot(), packageDoc); + if (ArticleUtil.isDocumented(packageDoc)) + { + StructuralElement parent = analyzePackage(parentDoc); + new CategoryImpl(parent, packageDoc); + } + else + { + warnIfSubPackagesUndocumented(packageDoc, parentDoc); + } + } + + return this; + } + + private void warnIfSubPackagesUndocumented(PackageDoc packageDoc, PackageDoc parentDoc) + { + while (parentDoc != null) + { + if (ArticleUtil.isDocumented(parentDoc)) + { + System.err.println("Warning: Undocumented category " + packageDoc.name()); + break; + } + + parentDoc = ArticleUtil.getParentPackage(getContext().getRoot(), parentDoc); + } + } + + private void analyzeClass(StructuralElement parent, ClassDoc classDoc) + { + // TODO Non-public classes? + if (ArticleUtil.isIgnore(classDoc)) + { + return; + } + + if (ArticleUtil.isSnippet(classDoc)) + { + new SnippetImpl(this, classDoc); + } + else + { + Chapter chapter = createChapter(parent, classDoc); + for (ClassDoc child : classDoc.innerClasses()) + { + analyzeClass(chapter, child); + } + } + + for (MethodDoc methodDoc : classDoc.methods()) + { + analyzeMethod(methodDoc); + } + } + + private Chapter createChapter(StructuralElement parent, ClassDoc classDoc) + { + if (parent instanceof Chapter) + { + return new ChapterImpl(parent, classDoc); + } + + return new ArticleImpl(parent, classDoc); + } + + private void analyzeMethod(MethodDoc methodDoc) + { + if (ArticleUtil.isIgnore(methodDoc)) + { + return; + } + + if (ArticleUtil.isSnippet(methodDoc)) + { + new SnippetImpl(this, methodDoc); + } + + if (ArticleUtil.isFactory(methodDoc)) + { + new FactoryImpl(this, methodDoc); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.DOCUMENTATION; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Context getContext() + { + if (eContainerFeatureID() != ArticlePackage.DOCUMENTATION__CONTEXT) + { + return null; + } + return (Context)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetContext(Context newContext, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newContext, ArticlePackage.DOCUMENTATION__CONTEXT, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setContext(Context newContext) + { + if (newContext != eInternalContainer() || eContainerFeatureID() != ArticlePackage.DOCUMENTATION__CONTEXT + && newContext != null) + { + if (EcoreUtil.isAncestor(this, newContext)) + { + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + } + NotificationChain msgs = null; + if (eInternalContainer() != null) + { + msgs = eBasicRemoveFromContainer(msgs); + } + if (newContext != null) + { + msgs = ((InternalEObject)newContext).eInverseAdd(this, ArticlePackage.CONTEXT__DOCUMENTATIONS, Context.class, + msgs); + } + msgs = basicSetContext(newContext, msgs); + if (msgs != null) + { + msgs.dispatch(); + } + } + else if (eNotificationRequired()) + { + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.DOCUMENTATION__CONTEXT, newContext, + newContext)); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<EmbeddableElement> getEmbeddableElements() + { + if (embeddableElements == null) + { + embeddableElements = new EObjectContainmentWithInverseEList<EmbeddableElement>(EmbeddableElement.class, this, + ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS, ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION); + } + return embeddableElements; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<Documentation> getDependencies() + { + if (dependencies == null) + { + dependencies = new EObjectEList<Documentation>(Documentation.class, this, + ArticlePackage.DOCUMENTATION__DEPENDENCIES); + } + return dependencies; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getProject() + { + return project; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + if (eInternalContainer() != null) + { + msgs = eBasicRemoveFromContainer(msgs); + } + return basicSetContext((Context)otherEnd, msgs); + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getEmbeddableElements()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + return basicSetContext(null, msgs); + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + return ((InternalEList<?>)getEmbeddableElements()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) + { + switch (eContainerFeatureID()) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + return eInternalContainer().eInverseRemove(this, ArticlePackage.CONTEXT__DOCUMENTATIONS, Context.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + return getContext(); + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + return getEmbeddableElements(); + case ArticlePackage.DOCUMENTATION__DEPENDENCIES: + return getDependencies(); + case ArticlePackage.DOCUMENTATION__PROJECT: + return getProject(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + setContext((Context)newValue); + return; + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + getEmbeddableElements().clear(); + getEmbeddableElements().addAll((Collection<? extends EmbeddableElement>)newValue); + return; + case ArticlePackage.DOCUMENTATION__DEPENDENCIES: + getDependencies().clear(); + getDependencies().addAll((Collection<? extends Documentation>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + setContext((Context)null); + return; + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + getEmbeddableElements().clear(); + return; + case ArticlePackage.DOCUMENTATION__DEPENDENCIES: + getDependencies().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.DOCUMENTATION__CONTEXT: + return getContext() != null; + case ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS: + return embeddableElements != null && !embeddableElements.isEmpty(); + case ArticlePackage.DOCUMENTATION__DEPENDENCIES: + return dependencies != null && !dependencies.isEmpty(); + case ArticlePackage.DOCUMENTATION__PROJECT: + return PROJECT_EDEFAULT == null ? project != null : !PROJECT_EDEFAULT.equals(project); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + { + return super.toString(); + } + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (project: "); + result.append(project); + result.append(')'); + return result.toString(); + } + + @Override + public RootDoc getDoc() + { + return (RootDoc)super.getDoc(); + } + + @Override + public Object getId() + { + return project; + } + +} // DocumentationImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddableElementImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddableElementImpl.java new file mode 100644 index 0000000000..22f0feab87 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddableElementImpl.java @@ -0,0 +1,253 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.EObjectImpl; +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Embeddable Element</b></em>'. <!-- end-user-doc + * --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl#getId <em>Id</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddableElementImpl#getDocumentation <em>Documentation</em>} + * </li> + * </ul> + * </p> + * + * @generated + */ +public abstract class EmbeddableElementImpl extends EObjectImpl implements EmbeddableElement +{ + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getId() + * @generated + * @ordered + */ + protected static final Object ID_EDEFAULT = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected EmbeddableElementImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.EMBEDDABLE_ELEMENT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public abstract Object getId(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public Documentation getDocumentation() + { + if (eContainerFeatureID() != ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION) + return null; + return (Documentation)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetDocumentation(Documentation newDocumentation, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newDocumentation, ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setDocumentation(Documentation newDocumentation) + { + if (newDocumentation != eInternalContainer() + || (eContainerFeatureID() != ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION && newDocumentation != null)) + { + if (EcoreUtil.isAncestor(this, newDocumentation)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newDocumentation != null) + msgs = ((InternalEObject)newDocumentation).eInverseAdd(this, ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS, + Documentation.class, msgs); + msgs = basicSetDocumentation(newDocumentation, msgs); + if (msgs != null) + msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION, + newDocumentation, newDocumentation)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public abstract String getHtml(Embedding embedder); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetDocumentation((Documentation)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + return basicSetDocumentation(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) + { + switch (eContainerFeatureID()) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + return eInternalContainer().eInverseRemove(this, ArticlePackage.DOCUMENTATION__EMBEDDABLE_ELEMENTS, + Documentation.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__ID: + return getId(); + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + return getDocumentation(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + setDocumentation((Documentation)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + setDocumentation((Documentation)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.EMBEDDABLE_ELEMENT__ID: + return ID_EDEFAULT == null ? getId() != null : !ID_EDEFAULT.equals(getId()); + case ArticlePackage.EMBEDDABLE_ELEMENT__DOCUMENTATION: + return getDocumentation() != null; + } + return super.eIsSet(featureID); + } + +} // EmbeddableElementImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddingImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddingImpl.java new file mode 100644 index 0000000000..a6f36ed554 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/EmbeddingImpl.java @@ -0,0 +1,150 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Embedding</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.EmbeddingImpl#getElement <em>Element</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class EmbeddingImpl extends BodyElementImpl implements Embedding +{ + /** + * The cached value of the '{@link #getElement() <em>Element</em>}' reference. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getElement() + * @generated + * @ordered + */ + protected EmbeddableElement element; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected EmbeddingImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.EMBEDDING; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EmbeddableElement getElement() + { + return element; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setElement(EmbeddableElement newElement) + { + EmbeddableElement oldElement = element; + element = newElement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.EMBEDDING__ELEMENT, oldElement, element)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.EMBEDDING__ELEMENT: + return getElement(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.EMBEDDING__ELEMENT: + setElement((EmbeddableElement)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.EMBEDDING__ELEMENT: + setElement((EmbeddableElement)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.EMBEDDING__ELEMENT: + return element != null; + } + return super.eIsSet(featureID); + } + +} // EmbeddingImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ExternalTargetImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ExternalTargetImpl.java new file mode 100644 index 0000000000..ea9e6d340e --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/ExternalTargetImpl.java @@ -0,0 +1,67 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.ExternalTarget; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>External Target</b></em>'. <!-- end-user-doc + * --> + * <p> + * </p> + * + * @generated + */ +public class ExternalTargetImpl extends LinkTargetImpl implements ExternalTarget +{ + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected ExternalTargetImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.EXTERNAL_TARGET; + } + + @Override + public String linkFrom(StructuralElement source) + { + // TODO: implement ExternalTargetImpl.linkFrom(source) + throw new UnsupportedOperationException(); + } + + @Override + public Object getId() + { + // TODO: implement ExternalTargetImpl.getId() + throw new UnsupportedOperationException(); + } + + @Override + public String getLabel() + { + // TODO: implement ExternalTargetImpl.getLabel() + throw new UnsupportedOperationException(); + } + +} // ExternalTargetImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/FactoryImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/FactoryImpl.java new file mode 100644 index 0000000000..83437c82fc --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/FactoryImpl.java @@ -0,0 +1,69 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.Factory; + +import org.eclipse.emf.ecore.EClass; + +import com.sun.javadoc.MethodDoc; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Factory</b></em>'. <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class FactoryImpl extends EmbeddableElementImpl implements Factory +{ + private MethodDoc methodDoc; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected FactoryImpl() + { + super(); + } + + FactoryImpl(Documentation documentation, MethodDoc methodDoc) + { + setDocumentation(documentation); + this.methodDoc = methodDoc; + documentation.getContext().register(getId(), this); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.FACTORY; + } + + @Override + public String getHtml(Embedding embedder) + { + // TODO: implement FactoryImpl.getHtml(embedder) + throw new UnsupportedOperationException(); + } + + @Override + public Object getId() + { + return methodDoc; + } +} // FactoryImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/JavaElementImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/JavaElementImpl.java new file mode 100644 index 0000000000..30d0cdb270 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/JavaElementImpl.java @@ -0,0 +1,66 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.JavaElement; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Java Element</b></em>'. <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class JavaElementImpl extends LinkTargetImpl implements JavaElement +{ + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected JavaElementImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.JAVA_ELEMENT; + } + + @Override + public String linkFrom(StructuralElement source) + { + // TODO: implement JavaElementImpl.linkFrom(source) + throw new UnsupportedOperationException(); + } + + @Override + public Object getId() + { + // TODO: implement JavaElementImpl.getId() + throw new UnsupportedOperationException(); + } + + @Override + public String getLabel() + { + // TODO: implement JavaElementImpl.getLabel() + throw new UnsupportedOperationException(); + } + +} // JavaElementImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkImpl.java new file mode 100644 index 0000000000..805997593f --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkImpl.java @@ -0,0 +1,150 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Link; +import org.eclipse.emf.cdo.releng.doc.article.LinkTarget; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Link</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkImpl#getTarget <em>Target</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class LinkImpl extends BodyElementImpl implements Link +{ + /** + * The cached value of the '{@link #getTarget() <em>Target</em>}' reference. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getTarget() + * @generated + * @ordered + */ + protected LinkTarget target; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected LinkImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.LINK; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public LinkTarget getTarget() + { + return target; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setTarget(LinkTarget newTarget) + { + LinkTarget oldTarget = target; + target = newTarget; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.LINK__TARGET, oldTarget, target)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.LINK__TARGET: + return getTarget(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.LINK__TARGET: + setTarget((LinkTarget)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.LINK__TARGET: + setTarget((LinkTarget)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.LINK__TARGET: + return target != null; + } + return super.eIsSet(featureID); + } + +} // LinkImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkTargetImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkTargetImpl.java new file mode 100644 index 0000000000..af647594ba --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/LinkTargetImpl.java @@ -0,0 +1,127 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.LinkTarget; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.EObjectImpl; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Link Target</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl#getId <em>Id</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.LinkTargetImpl#getLabel <em>Label</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public abstract class LinkTargetImpl extends EObjectImpl implements LinkTarget +{ + /** + * The default value of the '{@link #getId() <em>Id</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getId() + * @generated + * @ordered + */ + protected static final Object ID_EDEFAULT = null; + + /** + * The default value of the '{@link #getLabel() <em>Label</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getLabel() + * @generated + * @ordered + */ + protected static final String LABEL_EDEFAULT = null; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected LinkTargetImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.LINK_TARGET; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public abstract Object getId(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public abstract String getLabel(); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public abstract String linkFrom(StructuralElement source); + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.LINK_TARGET__ID: + return getId(); + case ArticlePackage.LINK_TARGET__LABEL: + return getLabel(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.LINK_TARGET__ID: + return ID_EDEFAULT == null ? getId() != null : !ID_EDEFAULT.equals(getId()); + case ArticlePackage.LINK_TARGET__LABEL: + return LABEL_EDEFAULT == null ? getLabel() != null : !LABEL_EDEFAULT.equals(getLabel()); + } + return super.eIsSet(featureID); + } + +} // LinkTargetImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SnippetImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SnippetImpl.java new file mode 100644 index 0000000000..5c8f7cb5cf --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SnippetImpl.java @@ -0,0 +1,207 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; + +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import com.sun.javadoc.Doc; + +import java.util.Collection; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Snippet</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.SnippetImpl#getCallouts <em>Callouts</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class SnippetImpl extends EmbeddableElementImpl implements Snippet +{ + /** + * The cached value of the '{@link #getCallouts() <em>Callouts</em>}' containment reference list. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @see #getCallouts() + * @generated + * @ordered + */ + protected EList<Callout> callouts; + + private Doc doc; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected SnippetImpl() + { + super(); + } + + SnippetImpl(Documentation documentation, Doc doc) + { + setDocumentation(documentation); + this.doc = doc; + documentation.getContext().register(getId(), this); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.SNIPPET; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<Callout> getCallouts() + { + if (callouts == null) + { + callouts = new EObjectContainmentWithInverseEList<Callout>(Callout.class, this, ArticlePackage.SNIPPET__CALLOUTS, + ArticlePackage.CALLOUT__SNIPPET); + } + return callouts; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + return ((InternalEList<InternalEObject>)(InternalEList<?>)getCallouts()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + return ((InternalEList<?>)getCallouts()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + return getCallouts(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + getCallouts().clear(); + getCallouts().addAll((Collection<? extends Callout>)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + getCallouts().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.SNIPPET__CALLOUTS: + return callouts != null && !callouts.isEmpty(); + } + return super.eIsSet(featureID); + } + + @Override + public String getHtml(Embedding embedder) + { + // TODO: implement SnippetImpl.getHtml(embedder) + throw new UnsupportedOperationException(); + } + + @Override + public Object getId() + { + return doc; + } +} // SnippetImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SourceCodeImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SourceCodeImpl.java new file mode 100644 index 0000000000..667d6b8fa8 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/SourceCodeImpl.java @@ -0,0 +1,44 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.SourceCode; + +import org.eclipse.emf.ecore.EClass; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Source Code</b></em>'. <!-- end-user-doc --> + * <p> + * </p> + * + * @generated + */ +public class SourceCodeImpl extends ExternalTargetImpl implements SourceCode +{ + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected SourceCodeImpl() + { + super(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.SOURCE_CODE; + } + +} // SourceCodeImpl 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 new file mode 100644 index 0000000000..3c2984e2d3 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/StructuralElementImpl.java @@ -0,0 +1,596 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; +import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +import com.sun.javadoc.Doc; + +import java.io.File; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Structural Element</b></em>'. <!-- end-user-doc + * --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getChildren <em>Children</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getParent <em>Parent</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getTitle <em>Title</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getPath <em>Path</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getOutputFile <em>Output File</em>}</li> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.StructuralElementImpl#getDocumentation <em>Documentation</em>} + * </li> + * </ul> + * </p> + * + * @generated + */ +public abstract class StructuralElementImpl extends LinkTargetImpl implements StructuralElement +{ + /** + * The cached value of the '{@link #getChildren() <em>Children</em>}' containment reference list. <!-- begin-user-doc + * --> <!-- end-user-doc --> + * + * @see #getChildren() + * @generated + * @ordered + */ + protected EList<StructuralElement> children; + + /** + * The default value of the '{@link #getTitle() <em>Title</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getTitle() + * @generated + * @ordered + */ + protected static final String TITLE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getTitle() <em>Title</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getTitle() + * @generated + * @ordered + */ + protected String title = TITLE_EDEFAULT; + + /** + * The default value of the '{@link #getPath() <em>Path</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getPath() + * @generated + * @ordered + */ + protected static final String PATH_EDEFAULT = null; + + /** + * The cached value of the '{@link #getPath() <em>Path</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getPath() + * @generated + * @ordered + */ + protected String path = PATH_EDEFAULT; + + /** + * The default value of the '{@link #getFullPath() <em>Full Path</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getFullPath() + * @generated + * @ordered + */ + protected static final String FULL_PATH_EDEFAULT = null; + + /** + * The default value of the '{@link #getOutputFile() <em>Output File</em>}' attribute. <!-- begin-user-doc --> <!-- + * end-user-doc --> + * + * @see #getOutputFile() + * @generated + * @ordered + */ + protected static final File OUTPUT_FILE_EDEFAULT = null; + + /** + * The default value of the '{@link #getDoc() <em>Doc</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @see #getDoc() + * @generated + * @ordered + */ + protected static final Doc DOC_EDEFAULT = null; + + private String fullPath; + + private File outputFile; + + private Doc doc; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected StructuralElementImpl() + { + super(); + } + + StructuralElementImpl(StructuralElement parent, String path, Doc doc) + { + setParent(parent); + this.path = path; + this.doc = doc; + } + + final void setTitle(String title) + { + this.title = title; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.STRUCTURAL_ELEMENT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public EList<StructuralElement> getChildren() + { + if (children == null) + { + children = new EObjectContainmentWithInverseEList<StructuralElement>(StructuralElement.class, this, + ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN, ArticlePackage.STRUCTURAL_ELEMENT__PARENT); + } + return children; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public StructuralElement getParent() + { + if (eContainerFeatureID() != ArticlePackage.STRUCTURAL_ELEMENT__PARENT) + { + return null; + } + return (StructuralElement)eContainer(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public NotificationChain basicSetParent(StructuralElement newParent, NotificationChain msgs) + { + msgs = eBasicSetContainer((InternalEObject)newParent, ArticlePackage.STRUCTURAL_ELEMENT__PARENT, msgs); + return msgs; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setParent(StructuralElement newParent) + { + 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)); + } + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getTitle() + { + return title; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getPath() + { + return path; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public String getFullPath() + { + if (fullPath == null) + { + StructuralElement parent = getParent(); + if (parent != null) + { + fullPath = parent.getFullPath() + "/" + path; + } + else + { + fullPath = path; + } + } + + return fullPath; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public File getOutputFile() + { + if (outputFile == null) + { + outputFile = new File(getDocumentation().getContext().getBaseFolder(), getFullPath()); + } + + return outputFile; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public Documentation getDocumentation() + { + if (this instanceof Documentation) + { + return (Documentation)this; + } + + StructuralElement parent = getParent(); + if (parent == null) + { + System.out.println(); + } + + return parent.getDocumentation(); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public Doc getDoc() + { + return doc; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated NOT + */ + public void generate() + { + for (StructuralElement child : getChildren()) + { + child.generate(); + } + } + + @Override + public String linkFrom(StructuralElement source) + { + List<String> sourceSegments = getSegments(source.getOutputFile()); + List<String> targetSegments = getSegments(getOutputFile()); + + int minSize = Math.min(sourceSegments.size(), targetSegments.size()); + for (int i = 0; i < minSize; i++) + { + if (sourceSegments.get(0).equals(targetSegments.get(0))) + { + sourceSegments.remove(0); + targetSegments.remove(0); + } + else + { + break; + } + } + + StringBuilder builder = new StringBuilder(); + for (int i = 0; i < sourceSegments.size(); i++) + { + builder.append("../"); + } + + boolean first = true; + for (String segment : targetSegments) + { + if (first) + { + first = false; + } + else + { + builder.append("/"); + } + + builder.append(segment); + } + + return builder.toString(); + } + + private static List<String> getSegments(File file) + { + List<String> result = new ArrayList<String>(); + getSegments(file, result); + return result; + } + + private static void getSegments(File file, List<String> result) + { + File parent = file.getParentFile(); + if (parent != null) + { + getSegments(parent, result); + } + + result.add(file.getName()); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + return ((InternalEList<InternalEObject>)(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); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + return ((InternalEList<?>)getChildren()).basicRemove(otherEnd, msgs); + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + return basicSetParent(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) + { + switch (eContainerFeatureID()) + { + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + return eInternalContainer().eInverseRemove(this, ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN, + StructuralElement.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + return getChildren(); + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + return getParent(); + case ArticlePackage.STRUCTURAL_ELEMENT__TITLE: + return getTitle(); + case ArticlePackage.STRUCTURAL_ELEMENT__PATH: + return getPath(); + case ArticlePackage.STRUCTURAL_ELEMENT__FULL_PATH: + return getFullPath(); + case ArticlePackage.STRUCTURAL_ELEMENT__OUTPUT_FILE: + return getOutputFile(); + case ArticlePackage.STRUCTURAL_ELEMENT__DOCUMENTATION: + return getDocumentation(); + case ArticlePackage.STRUCTURAL_ELEMENT__DOC: + return getDoc(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + getChildren().clear(); + getChildren().addAll((Collection<? extends StructuralElement>)newValue); + return; + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + setParent((StructuralElement)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + getChildren().clear(); + return; + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + setParent((StructuralElement)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.STRUCTURAL_ELEMENT__CHILDREN: + return children != null && !children.isEmpty(); + case ArticlePackage.STRUCTURAL_ELEMENT__PARENT: + return getParent() != null; + case ArticlePackage.STRUCTURAL_ELEMENT__TITLE: + return TITLE_EDEFAULT == null ? title != null : !TITLE_EDEFAULT.equals(title); + case ArticlePackage.STRUCTURAL_ELEMENT__PATH: + return PATH_EDEFAULT == null ? path != null : !PATH_EDEFAULT.equals(path); + case ArticlePackage.STRUCTURAL_ELEMENT__FULL_PATH: + return FULL_PATH_EDEFAULT == null ? getFullPath() != null : !FULL_PATH_EDEFAULT.equals(getFullPath()); + case ArticlePackage.STRUCTURAL_ELEMENT__OUTPUT_FILE: + return OUTPUT_FILE_EDEFAULT == null ? getOutputFile() != null : !OUTPUT_FILE_EDEFAULT.equals(getOutputFile()); + case ArticlePackage.STRUCTURAL_ELEMENT__DOCUMENTATION: + return getDocumentation() != null; + case ArticlePackage.STRUCTURAL_ELEMENT__DOC: + return DOC_EDEFAULT == null ? getDoc() != null : !DOC_EDEFAULT.equals(getDoc()); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + { + return super.toString(); + } + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (title: "); + result.append(title); + result.append(", path: "); + result.append(path); + result.append(')'); + return result.toString(); + } + + @Override + public String getLabel() + { + return getTitle(); + } + +} // StructuralElementImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextImpl.java new file mode 100644 index 0000000000..b64c680f43 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextImpl.java @@ -0,0 +1,186 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +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.Body; +import org.eclipse.emf.cdo.releng.doc.article.Text; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import com.sun.javadoc.Tag; + +/** + * <!-- begin-user-doc --> An implementation of the model object '<em><b>Text</b></em>'. <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.emf.cdo.releng.doc.article.impl.TextImpl#getValue <em>Value</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class TextImpl extends BodyElementImpl implements Text +{ + /** + * The default value of the '{@link #getValue() <em>Value</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final String VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValue() <em>Value</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc + * --> + * + * @see #getValue() + * @generated + * @ordered + */ + protected String value = VALUE_EDEFAULT; + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected TextImpl() + { + super(); + } + + TextImpl(Body body, Tag tag, String value) + { + super(body, tag); + this.value = value; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return ArticlePackage.Literals.TEXT; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public String getValue() + { + return value; + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public void setValue(String newValue) + { + String oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, ArticlePackage.TEXT__VALUE, oldValue, value)); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case ArticlePackage.TEXT__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case ArticlePackage.TEXT__VALUE: + setValue((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case ArticlePackage.TEXT__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case ArticlePackage.TEXT__VALUE: + return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); + } + return super.eIsSet(featureID); + } + + /** + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) + return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} // TextImpl diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextTag.java new file mode 100644 index 0000000000..77292ec97d --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/TextTag.java @@ -0,0 +1,45 @@ +/**
+ * 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.releng.doc.article.impl;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * @author Eike Stepper
+ */
+public class TextTag extends DelegatingTag
+{
+ private String text;
+
+ public TextTag(Tag delegate, String text)
+ {
+ super(delegate);
+ this.text = text;
+ }
+
+ @Override
+ public String kind()
+ {
+ return "Text";
+ }
+
+ @Override
+ public String name()
+ {
+ return "Text";
+ }
+
+ @Override
+ public String text()
+ {
+ return text;
+ }
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/UnresolvedBodyElementImpl.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/UnresolvedBodyElementImpl.java new file mode 100644 index 0000000000..6e67033960 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/impl/UnresolvedBodyElementImpl.java @@ -0,0 +1,34 @@ +/** + * 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.releng.doc.article.impl; + +import org.eclipse.emf.cdo.releng.doc.article.Body; + +import com.sun.javadoc.Tag; + +/** + * @author Eike Stepper + */ +public class UnresolvedBodyElementImpl extends BodyElementImpl +{ + private final String text; + + UnresolvedBodyElementImpl(Body body, Tag tag, String text) + { + super(body, tag); + this.text = text; + } + + public final String getText() + { + return text; + } +} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Article.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Article.java new file mode 100644 index 0000000000..69c2db1ed6 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Article.java @@ -0,0 +1,78 @@ +/**
+ * 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.releng.doc.article.old;
+
+import com.sun.javadoc.ClassDoc;
+
+/**
+ * @author Eike Stepper
+ */
+public class Article extends ArticleElement
+{
+ private final CategoryElement parent;
+
+ Article(Documentation documentation, ClassDoc classDoc)
+ {
+ super(classDoc);
+ parent = documentation;
+ getDocumentation().registerArticleElement(this);
+ }
+
+ Article(Category category, ClassDoc classDoc)
+ {
+ super(classDoc);
+ parent = category;
+ getDocumentation().registerArticleElement(this);
+ }
+
+ public final Documentation getDocumentation()
+ {
+ if (parent instanceof Documentation)
+ {
+ return (Documentation)parent;
+ }
+
+ return ((Category)parent).getDocumentation();
+ }
+
+ public final Category getCategory()
+ {
+ if (parent instanceof Category)
+ {
+ return (Category)parent;
+ }
+
+ return null;
+ }
+
+ public int getLevel()
+ {
+ return parent.getLevel() + 1;
+ }
+
+ public void accept(Visitor visitor) throws Exception
+ {
+ visitor.visit(this);
+ }
+
+ public String getPath()
+ {
+ String name = getClassDoc().typeName();
+
+ String path = parent.getPath();
+ if (path.length() == 0)
+ {
+ return name;
+ }
+
+ return path + "/" + name;
+ }
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/ArticleDoclet.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/ArticleDoclet.java new file mode 100644 index 0000000000..281ff893a1 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/ArticleDoclet.java @@ -0,0 +1,147 @@ +/** + * 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.releng.doc.article.old; + +import org.eclipse.emf.cdo.releng.doc.article.util.ArticleException; + +import com.sun.javadoc.RootDoc; + +import java.io.File; +import java.text.SimpleDateFormat; + +/** + * @author Eike Stepper + */ +public class ArticleDoclet +{ + public static final String OPTION_START_TIME = "-starttime"; + + public static final String OPTION_PRIVATE = "-private"; + + public static final String OPTION_PROJECT = "-project"; + + public static final String OPTION_BASE_FOLDER = "-basefolder"; + + public static boolean hasOption(RootDoc root, String optionName) + { + for (String[] option : root.options()) + { + if (optionName.equalsIgnoreCase(option[0])) + { + return true; + } + } + + return false; + } + + public static String getOption(RootDoc root, String optionName) + { + for (String[] option : root.options()) + { + if (optionName.equalsIgnoreCase(option[0])) + { + // FIXME Multi-argument options? + return option[1]; + } + } + + return ""; + } + + public static boolean start(RootDoc root) + { + long startTime = System.currentTimeMillis(); + + try + { + String timeOption = getOption(root, OPTION_START_TIME); + if (timeOption.length() != 0) + { + try + { + startTime = new SimpleDateFormat("y-M-D-H-m-s-S").parse(timeOption).getTime(); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + } + + if (!hasOption(root, OPTION_PRIVATE)) + { + throw new ArticleException("Missing option: " + OPTION_PRIVATE); + } + + File baseFolder = new File(getOption(root, OPTION_BASE_FOLDER)); + String project = getOption(root, OPTION_PROJECT); + + Documentation documentation = Documentation.create(root, baseFolder, project); + documentation.accept(new DocumentationGenerator()); + return true; + } + catch (ArticleException ex) + { + System.err.println(ex.getMessage()); + } + catch (Error ex) + { + ex.printStackTrace(); + } + catch (Exception ex) + { + ex.printStackTrace(); + } + finally + { + long duration = (System.currentTimeMillis() - startTime) / 1000; + System.out.println("Total time: " + duration + " seconds"); + } + + return false; + } + + public static int optionLength(String option) + { + if (OPTION_BASE_FOLDER.equals(option)) + { + return 2; + } + + if (OPTION_START_TIME.equals(option)) + { + return 2; + } + + if (OPTION_PROJECT.equals(option)) + { + return 2; + } + + // Indicate we don't know about it + return -1; + } + + public static void dumpOptions(RootDoc root) + { + for (String[] option : root.options()) + { + System.out.print(option[0]); + for (int i = 1; i < option.length; i++) + { + String value = option[i]; + System.out.print(" " + value); + } + + System.out.println(); + } + } +} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/ArticleElement.java index 0a3a2569ad..b05788c044 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleElement.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/ArticleElement.java @@ -8,9 +8,10 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.old;
-import org.eclipse.emf.cdo.releng.doc.article.util.TextTag;
+import org.eclipse.emf.cdo.releng.doc.article.old.util.TextTag;
+import org.eclipse.emf.cdo.releng.doc.article.util.ArticleException;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.Tag;
@@ -39,7 +40,7 @@ public abstract class ArticleElement implements DocumentationElement bodyTags.addAll(Arrays.asList(classDoc.inlineTags()));
if (bodyTags.isEmpty())
{
- System.err.println("WARNING: Title is missing in " + classDoc.position());
+ System.err.println("Warning: Title is missing in " + classDoc.position());
title = classDoc.name();
return;
}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Category.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Category.java new file mode 100644 index 0000000000..69ce7d6b72 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Category.java @@ -0,0 +1,67 @@ +/**
+ * 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.releng.doc.article.old;
+
+import com.sun.javadoc.PackageDoc;
+
+/**
+ * @author Eike Stepper
+ */
+public class Category extends CategoryElement
+{
+ private final String name;
+
+ private PackageDoc packageDoc;
+
+ Category(CategoryElement parent, String name)
+ {
+ super(parent);
+ this.name = name;
+ }
+
+ public final String getName()
+ {
+ return name;
+ }
+
+ public final PackageDoc getPackageDoc()
+ {
+ return packageDoc;
+ }
+
+ @Override
+ public String getPath()
+ {
+ Category parent = getParent();
+ if (parent == null)
+ {
+ return name;
+ }
+
+ return parent.getPath() + "/" + name;
+ }
+
+ public void accept(Visitor visitor) throws Exception
+ {
+ visitor.visit(this);
+ }
+
+ @Override
+ public String toString()
+ {
+ return name;
+ }
+
+ final void setPackageDoc(PackageDoc packageDoc)
+ {
+ this.packageDoc = packageDoc;
+ }
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/CategoryElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/CategoryElement.java index e4260530e4..f06ba90188 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/CategoryElement.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/CategoryElement.java @@ -8,7 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.old;
import java.util.ArrayList;
import java.util.List;
@@ -66,7 +66,6 @@ public abstract class CategoryElement implements DocumentationElement return articles;
}
- // TODO needed?
public final Article getArticle(String id)
{
for (Article article : articles)
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Documentation.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Documentation.java new file mode 100644 index 0000000000..430d9eba80 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Documentation.java @@ -0,0 +1,163 @@ +/**
+ * 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.releng.doc.article.old;
+
+import com.sun.javadoc.ClassDoc;
+import com.sun.javadoc.PackageDoc;
+import com.sun.javadoc.RootDoc;
+import com.sun.javadoc.Tag;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author Eike Stepper
+ */
+public class Documentation extends CategoryElement
+{
+ private final RootDoc root;
+
+ private final File baseFolder;
+
+ private final File outputFolder;
+
+ private final String project;
+
+ private final Map<ClassDoc, ArticleElement> articleElements = new HashMap<ClassDoc, ArticleElement>();
+
+ Documentation(RootDoc root, File baseFolder, String project) throws IOException
+ {
+ super(null);
+ this.root = root;
+ this.baseFolder = baseFolder;
+ this.project = project;
+
+ if (!baseFolder.exists())
+ {
+ if (!baseFolder.mkdirs())
+ {
+ throw new IOException("Could not create " + baseFolder);
+ }
+ }
+
+ outputFolder = new File(new File(new File(baseFolder, "plugins"), project), "html");
+ }
+
+ void registerArticleElement(ArticleElement articleElement)
+ {
+ articleElements.put(articleElement.getClassDoc(), articleElement);
+ }
+
+ boolean isTutorialClass(ClassDoc classDoc)
+ {
+ for (ClassDoc doc : root.classes())
+ {
+ if (doc == classDoc)
+ {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ boolean isExampleClass(ClassDoc classDoc)
+ {
+ Tag[] exampleTags = classDoc.tags("@example");
+ return exampleTags != null && exampleTags.length != 0;
+ }
+
+ @Override
+ public Documentation getDocumentation()
+ {
+ return this;
+ }
+
+ public final Map<ClassDoc, ArticleElement> getArticleElements()
+ {
+ return articleElements;
+ }
+
+ public final RootDoc getRoot()
+ {
+ return root;
+ }
+
+ public final File getBaseFolder()
+ {
+ return baseFolder;
+ }
+
+ public File getOutputFolder()
+ {
+ return outputFolder;
+ }
+
+ public final String getProject()
+ {
+ return project;
+ }
+
+ @Override
+ public String getPath()
+ {
+ return "";
+ }
+
+ @Override
+ public String toString()
+ {
+ return Documentation.class.getSimpleName();
+ }
+
+ public void accept(Visitor visitor) throws Exception
+ {
+ visitor.visit(this);
+ }
+
+ public static Documentation create(RootDoc root, File baseFolder, String project) throws Exception
+ {
+ Documentation documentation = new Documentation(root, baseFolder, project);
+ processTopLevelClasses(documentation);
+ documentation.accept(new DocumentationResolver());
+
+ return documentation;
+ }
+
+ private static void processTopLevelClasses(Documentation documentation)
+ {
+ for (ClassDoc classDoc : documentation.getRoot().classes())
+ {
+ if (classDoc.containingClass() == null && !classDoc.isPackagePrivate())
+ {
+ PackageDoc containingPackage = classDoc.containingPackage();
+ Category category = documentation.getCategory(containingPackage.name());
+ category.setPackageDoc(containingPackage);
+
+ Article article = new Article(category, classDoc);
+ category.getArticles().add(article);
+ processClass(article);
+ }
+ }
+ }
+
+ private static void processClass(ArticleElement parent)
+ {
+ for (ClassDoc classDoc : parent.getClassDoc().innerClasses())
+ {
+ Section section = new Section(parent, classDoc);
+ parent.getSections().add(section);
+ processClass(section);
+ }
+ }
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationElement.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationElement.java index 640cf320b3..b2de907e81 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationElement.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationElement.java @@ -8,8 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
-
+package org.eclipse.emf.cdo.releng.doc.article.old;
/**
* @author Eike Stepper
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationGenerator.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationGenerator.java index a46ef3538f..f633ba2925 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationGenerator.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationGenerator.java @@ -8,11 +8,11 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.old;
-import org.eclipse.emf.cdo.releng.doc.article.DocumentationElement.Visitor;
-import org.eclipse.emf.cdo.releng.doc.article.util.HtmlWriter;
-import org.eclipse.emf.cdo.releng.doc.article.util.RefTag;
+import org.eclipse.emf.cdo.releng.doc.article.old.DocumentationElement.Visitor;
+import org.eclipse.emf.cdo.releng.doc.article.old.util.HtmlWriter;
+import org.eclipse.emf.cdo.releng.doc.article.old.util.RefTag;
import com.sun.javadoc.Tag;
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationResolver.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationResolver.java index d4920027b0..0e88f2b96e 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/DocumentationResolver.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/DocumentationResolver.java @@ -8,11 +8,12 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.old;
-import org.eclipse.emf.cdo.releng.doc.article.DocumentationElement.Visitor;
-import org.eclipse.emf.cdo.releng.doc.article.util.RefTag;
-import org.eclipse.emf.cdo.releng.doc.article.util.SnippetTag;
+import org.eclipse.emf.cdo.releng.doc.article.old.DocumentationElement.Visitor;
+import org.eclipse.emf.cdo.releng.doc.article.old.util.RefTag;
+import org.eclipse.emf.cdo.releng.doc.article.old.util.SnippetTag;
+import org.eclipse.emf.cdo.releng.doc.article.util.ArticleException;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.MemberDoc;
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Section.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Section.java index c17bed1563..b86fc5a838 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Section.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Section.java @@ -8,11 +8,10 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.old;
import com.sun.javadoc.ClassDoc;
-
/**
* @author Eike Stepper
*/
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Test.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Test.java index 5af5fec639..8c9bf25532 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/Test.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/Test.java @@ -8,7 +8,7 @@ * Contributors: * Eike Stepper - initial API and implementation */ -package org.eclipse.emf.cdo.releng.doc.article; +package org.eclipse.emf.cdo.releng.doc.article.old; /** * @author Eike Stepper diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/DelegatingTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/DelegatingTag.java new file mode 100644 index 0000000000..370974ef67 --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/DelegatingTag.java @@ -0,0 +1,74 @@ +/**
+ * 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.releng.doc.article.old.util;
+
+import com.sun.javadoc.Doc;
+import com.sun.javadoc.SourcePosition;
+import com.sun.javadoc.Tag;
+
+/**
+ * @author Eike Stepper
+ */
+public class DelegatingTag implements Tag
+{
+ private final Tag delegate;
+
+ public DelegatingTag(Tag delegate)
+ {
+ this.delegate = delegate;
+ }
+
+ public Tag getDelegate()
+ {
+ return delegate;
+ }
+
+ public String name()
+ {
+ return delegate.name();
+ }
+
+ public Doc holder()
+ {
+ return delegate.holder();
+ }
+
+ public String kind()
+ {
+ return delegate.kind();
+ }
+
+ public String text()
+ {
+ return delegate.text();
+ }
+
+ @Override
+ public String toString()
+ {
+ return text();
+ }
+
+ public Tag[] inlineTags()
+ {
+ return delegate.inlineTags();
+ }
+
+ public Tag[] firstSentenceTags()
+ {
+ return delegate.firstSentenceTags();
+ }
+
+ public SourcePosition position()
+ {
+ return delegate.position();
+ }
+}
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/HtmlWriter.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/HtmlWriter.java index 11acb2c721..88b8e8ec4e 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/HtmlWriter.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/HtmlWriter.java @@ -8,7 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article.util;
+package org.eclipse.emf.cdo.releng.doc.article.old.util;
import java.io.File;
import java.io.FileNotFoundException;
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/JavaDoc.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/JavaDoc.java index 0882ff5960..61c6c06fbe 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/JavaDoc.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/JavaDoc.java @@ -8,9 +8,9 @@ * Contributors: * Eike Stepper - initial API and implementation */ -package org.eclipse.emf.cdo.releng.doc.article.util; +package org.eclipse.emf.cdo.releng.doc.article.old.util; -import com.sun.javadoc.RootDoc; +import org.eclipse.emf.cdo.releng.doc.article.old.ArticleDoclet; import java.io.File; import java.io.IOException; @@ -22,10 +22,6 @@ import java.util.List; */ public class JavaDoc { - public static final String OPTION_BASE_FOLDER = "-basefolder"; - - public static final String OPTION_OUTPUT_PATH = "-outputpath"; - private final Class<?> doclet; private final List<String> sourcePaths = new ArrayList<String>(); @@ -80,12 +76,9 @@ public class JavaDoc arguments.add(subPackage); } - arguments.add(OPTION_BASE_FOLDER); + arguments.add(ArticleDoclet.OPTION_BASE_FOLDER); arguments.add(baseFolder); - arguments.add(OPTION_OUTPUT_PATH); - arguments.add(outputPath); - String[] array = arguments.toArray(new String[arguments.size()]); com.sun.tools.javadoc.Main.execute(doclet.getSimpleName(), doclet.getName(), array); return this; @@ -123,35 +116,4 @@ public class JavaDoc return builder.toString(); } - - public static int optionLength(String option) - { - if (OPTION_BASE_FOLDER.equals(option)) - { - return 2; - } - - if (OPTION_OUTPUT_PATH.equals(option)) - { - return 2; - } - - // Indicate we don't know about it - return -1; - } - - public static String getOption(RootDoc root, String optionName) - { - String[][] options = root.options(); - for (String[] option : options) - { - if (optionName.equalsIgnoreCase(option[0])) - { - // TODO Multi-argument options? - return option[1]; - } - } - - return ""; - } } diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/RefTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/RefTag.java index 8834f4e072..d5715a3a09 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/RefTag.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/RefTag.java @@ -8,9 +8,9 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article.util;
+package org.eclipse.emf.cdo.releng.doc.article.old.util;
-import org.eclipse.emf.cdo.releng.doc.article.ArticleElement;
+import org.eclipse.emf.cdo.releng.doc.article.old.ArticleElement;
import com.sun.javadoc.SeeTag;
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/SnippetTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/SnippetTag.java index 456a5eaa76..da555719ac 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/SnippetTag.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/SnippetTag.java @@ -8,7 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article.util;
+package org.eclipse.emf.cdo.releng.doc.article.old.util;
import com.sun.javadoc.Doc;
import com.sun.javadoc.SeeTag;
@@ -62,6 +62,12 @@ public class SnippetTag extends TextTag private void writeExampleSnippet(PrintWriter out)
{
Map<String, Object> options = new HashMap<String, Object>();
+ String label = getDelegate().label();
+ if (label != null)
+ {
+ options.put("title", label);
+ }
+
options.put("includeSignature", includeSignature);
options.put("imagePath", "../../../../../../../../org.eclipse.emf.cdo.releng.doc/resources/");
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/TextTag.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/TextTag.java index 70f42e437b..c607d25788 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/TextTag.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/old/util/TextTag.java @@ -8,11 +8,10 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article.util;
+package org.eclipse.emf.cdo.releng.doc.article.old.util;
import com.sun.javadoc.Tag;
-
/**
* @author Eike Stepper
*/
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleAdapterFactory.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleAdapterFactory.java new file mode 100644 index 0000000000..b748e38f8a --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleAdapterFactory.java @@ -0,0 +1,550 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article.util; + +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.Body; +import org.eclipse.emf.cdo.releng.doc.article.BodyElement; +import org.eclipse.emf.cdo.releng.doc.article.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Category; +import org.eclipse.emf.cdo.releng.doc.article.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Diagram; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.ExternalTarget; +import org.eclipse.emf.cdo.releng.doc.article.Factory; +import org.eclipse.emf.cdo.releng.doc.article.Identifiable; +import org.eclipse.emf.cdo.releng.doc.article.JavaElement; +import org.eclipse.emf.cdo.releng.doc.article.Link; +import org.eclipse.emf.cdo.releng.doc.article.LinkTarget; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; +import org.eclipse.emf.cdo.releng.doc.article.SourceCode; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.Text; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; +import org.eclipse.emf.ecore.EObject; + +/** + * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter <code>createXXX</code> + * method for each class of the model. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage + * @generated + */ +public class ArticleAdapterFactory extends AdapterFactoryImpl +{ + /** + * The cached model package. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected static ArticlePackage modelPackage; + + /** + * Creates an instance of the adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ArticleAdapterFactory() + { + if (modelPackage == null) + { + modelPackage = ArticlePackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. <!-- begin-user-doc --> This implementation + * returns <code>true</code> if the object is either the model's package or is an instance object of the model. <!-- + * end-user-doc --> + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) + { + if (object == modelPackage) + { + return true; + } + if (object instanceof EObject) + { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the <code>createXXX</code> methods. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected ArticleSwitch<Adapter> modelSwitch = new ArticleSwitch<Adapter>() + { + @Override + public Adapter caseDocumentation(Documentation object) + { + return createDocumentationAdapter(); + } + + @Override + public Adapter caseContext(Context object) + { + return createContextAdapter(); + } + + @Override + public Adapter caseCategory(Category object) + { + return createCategoryAdapter(); + } + + @Override + public Adapter caseArticle(Article object) + { + return createArticleAdapter(); + } + + @Override + public Adapter caseChapter(Chapter object) + { + return createChapterAdapter(); + } + + @Override + public Adapter caseSnippet(Snippet object) + { + return createSnippetAdapter(); + } + + @Override + public Adapter caseDiagram(Diagram object) + { + return createDiagramAdapter(); + } + + @Override + public Adapter caseFactory(Factory object) + { + return createFactoryAdapter(); + } + + @Override + public Adapter caseJavaElement(JavaElement object) + { + return createJavaElementAdapter(); + } + + @Override + public Adapter caseStructuralElement(StructuralElement object) + { + return createStructuralElementAdapter(); + } + + @Override + public Adapter caseLinkTarget(LinkTarget object) + { + return createLinkTargetAdapter(); + } + + @Override + public Adapter caseCallout(Callout object) + { + return createCalloutAdapter(); + } + + @Override + public Adapter caseEmbeddableElement(EmbeddableElement object) + { + return createEmbeddableElementAdapter(); + } + + @Override + public Adapter caseExternalTarget(ExternalTarget object) + { + return createExternalTargetAdapter(); + } + + @Override + public Adapter caseIdentifiable(Identifiable object) + { + return createIdentifiableAdapter(); + } + + @Override + public Adapter caseBody(Body object) + { + return createBodyAdapter(); + } + + @Override + public Adapter caseBodyElement(BodyElement object) + { + return createBodyElementAdapter(); + } + + @Override + public Adapter caseText(Text object) + { + return createTextAdapter(); + } + + @Override + public Adapter caseLink(Link object) + { + return createLinkAdapter(); + } + + @Override + public Adapter caseEmbedding(Embedding object) + { + return createEmbeddingAdapter(); + } + + @Override + public Adapter caseSourceCode(SourceCode object) + { + return createSourceCodeAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) + { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the <code>target</code>. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @param target + * the object to adapt. + * @return the adapter for the <code>target</code>. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) + { + return modelSwitch.doSwitch((EObject)target); + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Documentation + * <em>Documentation</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Documentation + * @generated + */ + public Adapter createDocumentationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Context + * <em>Context</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Context + * @generated + */ + public Adapter createContextAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Category + * <em>Category</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Category + * @generated + */ + public Adapter createCategoryAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Article + * <em>Article</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Article + * @generated + */ + public Adapter createArticleAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Chapter + * <em>Chapter</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Chapter + * @generated + */ + public Adapter createChapterAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Snippet + * <em>Snippet</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Snippet + * @generated + */ + public Adapter createSnippetAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Diagram + * <em>Diagram</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Diagram + * @generated + */ + public Adapter createDiagramAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Factory + * <em>Factory</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Factory + * @generated + */ + public Adapter createFactoryAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.JavaElement + * <em>Java Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.JavaElement + * @generated + */ + public Adapter createJavaElementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.StructuralElement + * <em>Structural Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can + * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- + * end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.StructuralElement + * @generated + */ + public Adapter createStructuralElementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.LinkTarget + * <em>Link Target</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.LinkTarget + * @generated + */ + public Adapter createLinkTargetAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Callout + * <em>Callout</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Callout + * @generated + */ + public Adapter createCalloutAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement + * <em>Embeddable Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can + * easily ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- + * end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement + * @generated + */ + public Adapter createEmbeddableElementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.ExternalTarget + * <em>External Target</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.ExternalTarget + * @generated + */ + public Adapter createExternalTargetAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Identifiable + * <em>Identifiable</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Identifiable + * @generated + */ + public Adapter createIdentifiableAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Body <em>Body</em>}'. + * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's useful to + * ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Body + * @generated + */ + public Adapter createBodyAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.BodyElement + * <em>Body Element</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.BodyElement + * @generated + */ + public Adapter createBodyElementAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Text <em>Text</em>}'. + * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's useful to + * ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Text + * @generated + */ + public Adapter createTextAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Link <em>Link</em>}'. + * <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore cases; it's useful to + * ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Link + * @generated + */ + public Adapter createLinkAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.Embedding + * <em>Embedding</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily ignore + * cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.Embedding + * @generated + */ + public Adapter createEmbeddingAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.emf.cdo.releng.doc.article.SourceCode + * <em>Source Code</em>}'. <!-- begin-user-doc --> This default implementation returns null so that we can easily + * ignore cases; it's useful to ignore a case when inheritance will catch all the cases anyway. <!-- end-user-doc --> + * + * @return the new adapter. + * @see org.eclipse.emf.cdo.releng.doc.article.SourceCode + * @generated + */ + public Adapter createSourceCodeAdapter() + { + return null; + } + + /** + * Creates a new adapter for the default case. <!-- begin-user-doc --> This default implementation returns null. <!-- + * end-user-doc --> + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() + { + return null; + } + +} // ArticleAdapterFactory diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleException.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleException.java index f2db8985ba..14703cfce6 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/ArticleException.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleException.java @@ -8,7 +8,7 @@ * Contributors:
* Eike Stepper - initial API and implementation
*/
-package org.eclipse.emf.cdo.releng.doc.article;
+package org.eclipse.emf.cdo.releng.doc.article.util;
/**
* @author Eike Stepper
diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleSwitch.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleSwitch.java new file mode 100644 index 0000000000..46cfc82e2b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleSwitch.java @@ -0,0 +1,673 @@ +/** + * <copyright> + * </copyright> + * + * $Id$ + */ +package org.eclipse.emf.cdo.releng.doc.article.util; + +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.Body; +import org.eclipse.emf.cdo.releng.doc.article.BodyElement; +import org.eclipse.emf.cdo.releng.doc.article.Callout; +import org.eclipse.emf.cdo.releng.doc.article.Category; +import org.eclipse.emf.cdo.releng.doc.article.Chapter; +import org.eclipse.emf.cdo.releng.doc.article.Context; +import org.eclipse.emf.cdo.releng.doc.article.Diagram; +import org.eclipse.emf.cdo.releng.doc.article.Documentation; +import org.eclipse.emf.cdo.releng.doc.article.EmbeddableElement; +import org.eclipse.emf.cdo.releng.doc.article.Embedding; +import org.eclipse.emf.cdo.releng.doc.article.ExternalTarget; +import org.eclipse.emf.cdo.releng.doc.article.Factory; +import org.eclipse.emf.cdo.releng.doc.article.Identifiable; +import org.eclipse.emf.cdo.releng.doc.article.JavaElement; +import org.eclipse.emf.cdo.releng.doc.article.Link; +import org.eclipse.emf.cdo.releng.doc.article.LinkTarget; +import org.eclipse.emf.cdo.releng.doc.article.Snippet; +import org.eclipse.emf.cdo.releng.doc.article.SourceCode; +import org.eclipse.emf.cdo.releng.doc.article.StructuralElement; +import org.eclipse.emf.cdo.releng.doc.article.Text; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.util.Switch; + +/** + * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the call + * {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the model, + * starting with the actual class of the object and proceeding up the inheritance hierarchy until a non-null result is + * returned, which is the result of the switch. <!-- end-user-doc --> + * + * @see org.eclipse.emf.cdo.releng.doc.article.ArticlePackage + * @generated + */ +public class ArticleSwitch<T> extends Switch<T> +{ + /** + * The cached model package <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + protected static ArticlePackage modelPackage; + + /** + * Creates an instance of the switch. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @generated + */ + public ArticleSwitch() + { + if (modelPackage == null) + { + modelPackage = ArticlePackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @parameter ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) + { + return ePackage == modelPackage; + } + + /** + * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. + * <!-- begin-user-doc --> <!-- end-user-doc --> + * + * @return the first non-null result returned by a <code>caseXXX</code> call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) + { + switch (classifierID) + { + case ArticlePackage.DOCUMENTATION: + { + Documentation documentation = (Documentation)theEObject; + T result = caseDocumentation(documentation); + if (result == null) + result = caseStructuralElement(documentation); + if (result == null) + result = caseLinkTarget(documentation); + if (result == null) + result = caseIdentifiable(documentation); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.CONTEXT: + { + Context context = (Context)theEObject; + T result = caseContext(context); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.CATEGORY: + { + Category category = (Category)theEObject; + T result = caseCategory(category); + if (result == null) + result = caseBody(category); + if (result == null) + result = caseStructuralElement(category); + if (result == null) + result = caseLinkTarget(category); + if (result == null) + result = caseIdentifiable(category); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.ARTICLE: + { + Article article = (Article)theEObject; + T result = caseArticle(article); + if (result == null) + result = caseChapter(article); + if (result == null) + result = caseBody(article); + if (result == null) + result = caseStructuralElement(article); + if (result == null) + result = caseLinkTarget(article); + if (result == null) + result = caseIdentifiable(article); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.CHAPTER: + { + Chapter chapter = (Chapter)theEObject; + T result = caseChapter(chapter); + if (result == null) + result = caseBody(chapter); + if (result == null) + result = caseStructuralElement(chapter); + if (result == null) + result = caseLinkTarget(chapter); + if (result == null) + result = caseIdentifiable(chapter); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.SNIPPET: + { + Snippet snippet = (Snippet)theEObject; + T result = caseSnippet(snippet); + if (result == null) + result = caseEmbeddableElement(snippet); + if (result == null) + result = caseIdentifiable(snippet); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.DIAGRAM: + { + Diagram diagram = (Diagram)theEObject; + T result = caseDiagram(diagram); + if (result == null) + result = caseBodyElement(diagram); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.FACTORY: + { + Factory factory = (Factory)theEObject; + T result = caseFactory(factory); + if (result == null) + result = caseEmbeddableElement(factory); + if (result == null) + result = caseIdentifiable(factory); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.JAVA_ELEMENT: + { + JavaElement javaElement = (JavaElement)theEObject; + T result = caseJavaElement(javaElement); + if (result == null) + result = caseLinkTarget(javaElement); + if (result == null) + result = caseIdentifiable(javaElement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.STRUCTURAL_ELEMENT: + { + StructuralElement structuralElement = (StructuralElement)theEObject; + T result = caseStructuralElement(structuralElement); + if (result == null) + result = caseLinkTarget(structuralElement); + if (result == null) + result = caseIdentifiable(structuralElement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.LINK_TARGET: + { + LinkTarget linkTarget = (LinkTarget)theEObject; + T result = caseLinkTarget(linkTarget); + if (result == null) + result = caseIdentifiable(linkTarget); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.CALLOUT: + { + Callout callout = (Callout)theEObject; + T result = caseCallout(callout); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.EMBEDDABLE_ELEMENT: + { + EmbeddableElement embeddableElement = (EmbeddableElement)theEObject; + T result = caseEmbeddableElement(embeddableElement); + if (result == null) + result = caseIdentifiable(embeddableElement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.EXTERNAL_TARGET: + { + ExternalTarget externalTarget = (ExternalTarget)theEObject; + T result = caseExternalTarget(externalTarget); + if (result == null) + result = caseLinkTarget(externalTarget); + if (result == null) + result = caseIdentifiable(externalTarget); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.IDENTIFIABLE: + { + Identifiable identifiable = (Identifiable)theEObject; + T result = caseIdentifiable(identifiable); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.BODY: + { + Body body = (Body)theEObject; + T result = caseBody(body); + if (result == null) + result = caseStructuralElement(body); + if (result == null) + result = caseLinkTarget(body); + if (result == null) + result = caseIdentifiable(body); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.BODY_ELEMENT: + { + BodyElement bodyElement = (BodyElement)theEObject; + T result = caseBodyElement(bodyElement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.TEXT: + { + Text text = (Text)theEObject; + T result = caseText(text); + if (result == null) + result = caseBodyElement(text); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.LINK: + { + Link link = (Link)theEObject; + T result = caseLink(link); + if (result == null) + result = caseBodyElement(link); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.EMBEDDING: + { + Embedding embedding = (Embedding)theEObject; + T result = caseEmbedding(embedding); + if (result == null) + result = caseBodyElement(embedding); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case ArticlePackage.SOURCE_CODE: + { + SourceCode sourceCode = (SourceCode)theEObject; + T result = caseSourceCode(sourceCode); + if (result == null) + result = caseExternalTarget(sourceCode); + if (result == null) + result = caseLinkTarget(sourceCode); + if (result == null) + result = caseIdentifiable(sourceCode); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Documentation</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Documentation</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDocumentation(Documentation object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Context</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Context</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseContext(Context object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Category</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Category</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCategory(Category object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Article</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Article</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseArticle(Article object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Chapter</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Chapter</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseChapter(Chapter object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Snippet</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Snippet</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSnippet(Snippet object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Diagram</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Diagram</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDiagram(Diagram object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Factory</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Factory</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFactory(Factory object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Java Element</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Java Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseJavaElement(JavaElement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Structural Element</em>'. <!-- begin-user-doc + * --> This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Structural Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStructuralElement(StructuralElement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Link Target</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Link Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLinkTarget(LinkTarget object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Callout</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Callout</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCallout(Callout object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Embeddable Element</em>'. <!-- begin-user-doc + * --> This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Embeddable Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEmbeddableElement(EmbeddableElement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>External Target</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>External Target</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternalTarget(ExternalTarget object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Identifiable</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Identifiable</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIdentifiable(Identifiable object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Body</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Body</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBody(Body object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Body Element</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Body Element</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBodyElement(BodyElement object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Text</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Text</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseText(Text object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Link</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Link</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLink(Link object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Embedding</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Embedding</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEmbedding(Embedding object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>Source Code</em>'. <!-- begin-user-doc --> + * This implementation returns null; returning a non-null result will terminate the switch. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>Source Code</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSourceCode(SourceCode object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. <!-- begin-user-doc --> This + * implementation returns null; returning a non-null result will terminate the switch, but this is the last case + * anyway. <!-- end-user-doc --> + * + * @param object + * the target of the switch. + * @return the result of interpreting the object as an instance of '<em>EObject</em>'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) + { + return null; + } + +} // ArticleSwitch 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 new file mode 100644 index 0000000000..8b998cdb4b --- /dev/null +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/article/util/ArticleUtil.java @@ -0,0 +1,160 @@ +/** + * 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.releng.doc.article.util; + +import com.sun.javadoc.ClassDoc; +import com.sun.javadoc.Doc; +import com.sun.javadoc.MethodDoc; +import com.sun.javadoc.PackageDoc; +import com.sun.javadoc.RootDoc; +import com.sun.javadoc.SourcePosition; +import com.sun.javadoc.Tag; + +import java.io.File; +import java.io.IOException; + +/** + * @author Eike Stepper + */ +public final class ArticleUtil +{ + private ArticleUtil() + { + } + + public static boolean containsFile(File folder, File file) + { + if (!folder.isDirectory()) + { + return false; + } + + File parent = file.getParentFile(); + if (parent == null) + { + return false; + } + + if (parent.equals(folder)) + { + return true; + } + + return containsFile(folder, parent); + } + + public static boolean isDocumented(Doc doc) + { + Tag[] tags = doc.inlineTags(); + return tags != null && tags.length != 0; + } + + public static boolean isTagged(Doc doc, String tag) + { + Tag[] tags = doc.tags(tag); + return tags != null && tags.length != 0; + } + + public static boolean isIgnore(Doc doc) + { + return isTagged(doc, "@ignore"); + } + + public static boolean isSnippet(Doc doc) + { + return isTagged(doc, "@snippet"); + } + + public static boolean isFactory(MethodDoc doc) + { + return isTagged(doc, "@factory"); + } + + public static String getSimplePackageName(PackageDoc packageDoc) + { + String name = packageDoc.name(); + int lastDot = name.lastIndexOf('.'); + if (lastDot != -1) + { + return name.substring(lastDot + 1); + } + + return name; + } + + public static PackageDoc getParentPackage(RootDoc root, PackageDoc packageDoc) + { + String name = packageDoc.name(); + int lastDot = name.lastIndexOf('.'); + if (lastDot != -1) + { + return root.packageNamed(name.substring(0, lastDot)); + } + + return null; + } + + public static File canonify(File file) + { + try + { + return file.getCanonicalFile(); + } + catch (IOException ex) + { + throw new ArticleException(ex); + } + } + + public static String makeConsoleLink(Doc doc) + { + SourcePosition position = doc.position(); + if (position == null) + { + return doc.name(); + } + + return makeConsoleLink(doc, position); + } + + public static String makeConsoleLink(Doc doc, SourcePosition position) + { + if (doc instanceof ClassDoc) + { + return makeConsoleLink((ClassDoc)doc, "class", position); + } + + if (doc instanceof MethodDoc) + { + MethodDoc methodDoc = (MethodDoc)doc; + return makeConsoleLink(methodDoc.containingClass(), methodDoc.name(), position); + } + + return makeConsoleLink("", position); + } + + public static String makeConsoleLink(ClassDoc classDoc, String methodName, SourcePosition position) + { + String typeName = classDoc.containingPackage().name() + "." + classDoc.typeName().replace('.', '$'); + return makeConsoleLink(typeName + "." + methodName, position); + } + + public static String makeConsoleLink(String prefix, SourcePosition position) + { + String result = position.file().getName() + ":" + position.line(); + if (prefix != null && prefix.length() != 0) + { + result = prefix + "(" + result + ")"; + } + + return result; + } +} diff --git a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/java/MovePackageDescriptions.java b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/java/MovePackageDescriptions.java index 96970e8654..0d62f08047 100644 --- a/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/java/MovePackageDescriptions.java +++ b/plugins/org.eclipse.emf.cdo.releng.doc/src/org/eclipse/emf/cdo/releng/doc/java/MovePackageDescriptions.java @@ -26,12 +26,12 @@ public class MovePackageDescriptions private static final String NL = System.getProperty("line.separator");
private static final Pattern PATTERN = Pattern.compile("(.*</H2>\\s*)" //
- + "(.*<B>See:</B>.*<A HREF=\"#package_description\"><B>Description</B></A>)" // To be replaced...
- + "(.*)" //
- + "(<A NAME=\"package_description\"><!-- --></A><H2>.*</H2>.*<P>\\s*)" //
- + "(.*)" // ... with full description
- + "(<P>\\s*<P>\\s*<DL>\\s*</DL>\\s*<HR>.*)", //
- Pattern.MULTILINE | Pattern.DOTALL);
+ + "(.*<B>See:</B>.*<A HREF=\"#package_description\"><B>Description</B></A>)" // To be replaced...
+ + "(.*)" //
+ + "(<A NAME=\"package_description\"><!-- --></A><H2>.*</H2>.*<P>\\s*)" //
+ + "(.*)" // ... with full description
+ + "(<P>\\s*<P>\\s*<DL>\\s*</DL>\\s*<HR>.*)", //
+ Pattern.MULTILINE | Pattern.DOTALL);
public static void main(String[] args) throws IOException
{
|