Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Williams2015-05-25 11:53:31 -0400
committerRoland Grunberg2015-05-26 17:14:22 -0400
commitbcb953b29651740d628deb30f3ccbedf4425a854 (patch)
treebdae447ea6dee8fc4c17646749d09dc3b0e70475
parent832755807a937ba780afb90514c1b10bf0aa83a4 (diff)
downloadorg.eclipse.linuxtools-bcb953b29651740d628deb30f3ccbedf4425a854.tar.gz
org.eclipse.linuxtools-bcb953b29651740d628deb30f3ccbedf4425a854.tar.xz
org.eclipse.linuxtools-bcb953b29651740d628deb30f3ccbedf4425a854.zip
Bug 467355: Initial contribution of Javadocs plugin.
A simple plugin that crawls a Javadocs folder and displays the HTML in that folder within the Eclipse help system. Change-Id: Id404e882a477153aabcc468451127bb55e4fae8d Signed-off-by: Eric Williams <ericwill@redhat.com> Reviewed-on: https://git.eclipse.org/r/48645 Tested-by: Hudson CI Reviewed-by: Roland Grunberg <rgrunber@redhat.com> Tested-by: Roland Grunberg <rgrunber@redhat.com> Reviewed-on: https://git.eclipse.org/r/48694
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs-feature/.project17
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs-feature/build.properties2
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs-feature/feature.properties14
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs-feature/feature.xml29
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs-feature/pom.xml46
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/.classpath7
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/.gitignore2
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/.project28
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/META-INF/MANIFEST.MF13
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/about.html28
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/build.properties8
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/plugin.xml33
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/pom.xml44
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocContentProducer.java88
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocPlugin.java60
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocToc.java140
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTocProvider.java68
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTopic.java79
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.java58
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.properties13
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocPreferencePage.java97
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/LabelFieldEditor.java59
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceConstants.java22
-rw-r--r--javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceInitializer.java35
-rw-r--r--javadocs/pom.xml47
-rw-r--r--pom.xml1
-rw-r--r--releng/org.eclipse.linuxtools.releng-site/category.xml6
28 files changed, 1051 insertions, 0 deletions
diff --git a/javadocs/org.eclipse.linuxtools.javadocs-feature/.project b/javadocs/org.eclipse.linuxtools.javadocs-feature/.project
new file mode 100644
index 0000000000..eca0dbb7af
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs-feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.linuxtools.javadocs-feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs-feature/build.properties b/javadocs/org.eclipse.linuxtools.javadocs-feature/build.properties
new file mode 100644
index 0000000000..b3a611b5c9
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs-feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+ feature.properties
diff --git a/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.properties b/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.properties
new file mode 100644
index 0000000000..1c1ce93d0f
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.properties
@@ -0,0 +1,14 @@
+#################################################################################
+# Copyright (c) 2015 Red Hat, Inc.
+# 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:
+# Red Hat Incorporated - initial API and implementation
+#################################################################################
+featureName=Javadocs Feature
+featureDescription=Plugins for generating Javadoc resources in the Eclipse help system
+provider=Eclipse Linux Tools
+copyright=Copyright 2015 Red Hat, Inc.
diff --git a/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.xml b/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.xml
new file mode 100644
index 0000000000..41cf9f2c8c
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs-feature/feature.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.linuxtools.javadocs.feature"
+ label="%featureName"
+ version="1.0.0.qualifier"
+ license-feature="org.eclipse.license"
+ license-feature-version="0.0.0"
+ provider-name="%provider">
+
+ <description>
+ %featureDescription
+ </description>
+
+ <copyright>
+ %copyright
+ </copyright>
+
+ <license>
+ %license
+ </license>
+
+ <plugin
+ id="org.eclipse.linuxtools.javadocs"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs-feature/pom.xml b/javadocs/org.eclipse.linuxtools.javadocs-feature/pom.xml
new file mode 100644
index 0000000000..2591bf69d4
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs-feature/pom.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2015, Red Hat, Inc.
+
+ 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
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>linuxtools-javadocs-parent</artifactId>
+ <groupId>org.eclipse.linuxtools.javadocs</groupId>
+ <version>4.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.eclipse.linuxtools.javadocs.feature</artifactId>
+ <packaging>eclipse-feature</packaging>
+ <version>1.0.0-SNAPSHOT</version>
+
+ <name>Linux Tools Javadocs Feature</name>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <executions>
+ <execution>
+ <id>attached-p2-metadata</id>
+ <phase>package</phase>
+ <goals>
+ <goal>p2-metadata</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
+
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/.classpath b/javadocs/org.eclipse.linuxtools.javadocs/.classpath
new file mode 100644
index 0000000000..eca7bdba8f
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/.gitignore b/javadocs/org.eclipse.linuxtools.javadocs/.gitignore
new file mode 100644
index 0000000000..d567ba01e1
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/.gitignore
@@ -0,0 +1,2 @@
+bin
+target
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/.project b/javadocs/org.eclipse.linuxtools.javadocs/.project
new file mode 100644
index 0000000000..b414f67ec2
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.linuxtools.javadocs</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/.settings/org.eclipse.jdt.core.prefs b/javadocs/org.eclipse.linuxtools.javadocs/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000000..0c68a61dca
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/META-INF/MANIFEST.MF b/javadocs/org.eclipse.linuxtools.javadocs/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..6b4c1c2104
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/META-INF/MANIFEST.MF
@@ -0,0 +1,13 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Javadocs Plug-in
+Bundle-SymbolicName: org.eclipse.linuxtools.javadocs;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.linuxtools.internal.javadocs.ui.JavaDocPlugin
+Bundle-Vendor: Eclipse Linux Tools
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.help;bundle-version="3.6.0",
+ org.eclipse.core.filesystem;bundle-version="1.4.100"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/about.html b/javadocs/org.eclipse.linuxtools.javadocs/about.html
new file mode 100644
index 0000000000..8d5956a4ff
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2006</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/build.properties b/javadocs/org.eclipse.linuxtools.javadocs/build.properties
new file mode 100644
index 0000000000..85f4465b90
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+output.. = bin/
+bin.includes = plugin.xml,\
+ META-INF/,\
+ .,\
+ *.xml,\
+ about.html
+src.includes = about.html
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/plugin.xml b/javadocs/org.eclipse.linuxtools.javadocs/plugin.xml
new file mode 100644
index 0000000000..de3ed7659d
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/plugin.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+ <extension
+ point="org.eclipse.help.toc">
+ <tocProvider
+ class="org.eclipse.linuxtools.internal.javadocs.ui.JavaDocTocProvider">
+ </tocProvider>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.linuxtools.javadocs.preferences1"
+ class="org.eclipse.linuxtools.internal.javadocs.ui.preferences.JavaDocPreferencePage"
+ id="org.eclipse.linuxtools.internal.javadocs.ui.page1"
+ name="Javadoc Preferences">
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.core.runtime.preferences">
+ <initializer
+ class="org.eclipse.linuxtools.internal.javadocs.ui.preferences.PreferenceInitializer">
+ </initializer>
+ </extension>
+ <extension
+ point="org.eclipse.help.contentProducer">
+ <contentProducer
+ producer="org.eclipse.linuxtools.internal.javadocs.ui.JavaDocContentProducer">
+ </contentProducer>
+ </extension>
+
+</plugin>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/pom.xml b/javadocs/org.eclipse.linuxtools.javadocs/pom.xml
new file mode 100644
index 0000000000..c2a59fbe74
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/pom.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2015, Red Hat, Inc.
+
+ 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
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>linuxtools-javadocs-parent</artifactId>
+ <groupId>org.eclipse.linuxtools.javadocs</groupId>
+ <version>4.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.eclipse.linuxtools.javadocs</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+
+ <name>Javadocs Plug-in</name>
+
+ <build>
+ <!-- workaround for https://issues.sonatype.org/browse/TYCHO-168 -->
+ <resources>
+ <resource>
+ <directory>src</directory>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ </resources>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-source-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocContentProducer.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocContentProducer.java
new file mode 100644
index 0000000000..ee828a95c6
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocContentProducer.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui;
+
+import java.io.InputStream;
+import java.util.Locale;
+
+import org.eclipse.core.filesystem.EFS;
+import org.eclipse.core.filesystem.IFileStore;
+import org.eclipse.core.filesystem.IFileSystem;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.ILog;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.help.IHelpContentProducer;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.linuxtools.internal.javadocs.ui.preferences.PreferenceConstants;
+
+
+/**
+ * The content producer for the plugin. Provides an input stream to the Eclipse
+ * help system in order to render HTML in the help browser.
+ */
+public class JavaDocContentProducer implements IHelpContentProducer {
+
+
+ /**
+ * Returns an input stream for the requested file. This method will be
+ * called by the Eclipse help system to serve up content to the internal
+ * web server, which will then be displayed in the help browser.
+ *
+ * @param pluginID the plugin ID as set in the manifest
+ * @param href the link to the file generated by the help system
+ * @param locale the locale of the file requested (as set in
+ * JavaDocTocProvider)
+ * @return the input stream to the file requested
+ */
+ @Override
+ public InputStream getInputStream(String pluginID, String href,
+ Locale locale) {
+
+ // Eclipse help system adds parameters to the href but this breaks our
+ // path creation so we just strip them.
+ if (href.contains("?")) { //$NON-NLS-1$
+ href = href.substring(0, href.indexOf('?'));
+ }
+
+ // Eclipse help system appends additional plugin ID, so we strip this
+ // as well.
+ String pathToFile = href.replace("org.eclipse.linuxtools.javadocs", ""); //$NON-NLS-1$ //$NON-NLS-2$
+
+ // Get path from preferences store, attempt to open input stream to the
+ // file being requested.
+ IPreferenceStore ps = JavaDocPlugin.getDefault().getPreferenceStore();
+ IPath javadocLocation = new Path(ps.getString(PreferenceConstants.
+ JAVADOCS_DIRECTORY)).append(pathToFile);
+ IFileSystem fs = EFS.getLocalFileSystem();
+ IFileStore localLocation = fs.getStore(javadocLocation);
+ InputStream stream = null;
+
+ if (!localLocation.fetchInfo().exists()) {
+
+ return null;
+ }
+
+ try {
+ stream = localLocation.openInputStream(EFS.NONE, new
+ NullProgressMonitor());
+ }
+
+ catch (CoreException e) {
+ ILog eLog = JavaDocPlugin.getDefault().getLog();
+ eLog.log(e.getStatus());
+ }
+
+ return stream;
+ }
+}
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocPlugin.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocPlugin.java
new file mode 100644
index 0000000000..4feb75d8f7
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocPlugin.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+
+package org.eclipse.linuxtools.internal.javadocs.ui;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+
+/**
+ * The activator class controls the plug-in life cycle.
+ */
+public class JavaDocPlugin extends AbstractUIPlugin {
+
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.linuxtools.javadocs"; //$NON-NLS-1$
+
+
+ // The shared instance
+ private static JavaDocPlugin plugin;
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+
+ /**
+ * Returns the shared instance of the plugin.
+ *
+ * @return the shared instance of the plugin
+ */
+ public static JavaDocPlugin getDefault() {
+ return plugin;
+ }
+}
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocToc.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocToc.java
new file mode 100644
index 0000000000..d0d5be84bd
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocToc.java
@@ -0,0 +1,140 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Comparator;
+
+import org.eclipse.core.expressions.IEvaluationContext;
+import org.eclipse.core.filesystem.EFS;
+import org.eclipse.core.filesystem.IFileStore;
+import org.eclipse.core.filesystem.IFileSystem;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.help.IToc;
+import org.eclipse.help.ITopic;
+import org.eclipse.help.IUAElement;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.linuxtools.internal.javadocs.ui.preferences.PreferenceConstants;
+
+/**
+ * The Toc class generates the root topic (i.e. the "Javadoc documents")
+ * heading which will be clickable in the Eclipse help system.
+ */
+public class JavaDocToc implements IToc {
+
+ @Override
+ public String getLabel() {
+
+ return "Javadoc documents";
+ }
+
+ @Override
+ public String getHref() {
+ return JavaDocPlugin.PLUGIN_ID + "/"; //$NON-NLS-1$
+
+ }
+
+ @Override
+ public boolean isEnabled(IEvaluationContext context) {
+ // Should always be true, other Eclipse will not find the help resource
+ return true;
+ }
+
+ @Override
+ public IUAElement[] getChildren() {
+ return getTopics();
+ }
+
+ @Override
+ public ITopic[] getTopics() {
+ try {
+ // Finds the path to the javadoc directory from the preference
+ // store, and gets all children directories.
+
+ ArrayList<ITopic> topics = new ArrayList<>();
+ IPreferenceStore ps = JavaDocPlugin.getDefault()
+ .getPreferenceStore();
+ IPath javadocLocation = new Path(
+ ps.getString(PreferenceConstants.JAVADOCS_DIRECTORY));
+ IFileSystem fs = EFS.getLocalFileSystem();
+ IFileStore htmlDir = fs.getStore(javadocLocation);
+ IFileStore[] files = htmlDir.childStores(EFS.NONE, null);
+ Arrays.sort(files, new Comparator<IFileStore>() {
+
+ @Override
+ public int compare(IFileStore arg0, IFileStore arg1) {
+ return (arg0.getName().compareToIgnoreCase(arg1.getName()));
+ }
+
+ });
+
+ // Loops through all children directories within the javadoc
+ // directory and generates topics for them.
+ for (IFileStore file: files) {
+ String name = file.fetchInfo().getName();
+ if (fs.getStore(
+ javadocLocation.append(name)) //$NON-NLS-1$
+ .fetchInfo().exists() && fs.getStore(
+ javadocLocation.append(name + "/index.html")) //$NON-NLS-1$
+ .fetchInfo().exists() ) {
+ ITopic topic = new JavaDocTopic(name);
+ topics.add(topic);
+
+
+ }
+ }
+
+ // Returns an array of the generated topics
+ ITopic[] retval = new ITopic[topics.size()];
+ return topics.toArray(retval);
+
+ }
+
+ catch (CoreException e) {
+
+ }
+
+ // If no child directories exist, the root "Javadoc documents" help
+ // resource will not be displayed in the help system until there are
+ // child directories present.
+ return null;
+ }
+
+ @Override
+ public ITopic getTopic(String href) {
+
+ if (href == null){
+ return null;
+
+ }
+
+ // The Eclipse help system appends and extra "/" to the beginning of
+ // every path so we need to strip it before we can do a search.
+ ITopic[] topicList = this.getTopics();
+ for (ITopic iTopic : topicList) {
+
+ if (iTopic.getHref().equals(href.substring(1)) ||
+ iTopic.getHref().equals(href)){
+
+ return iTopic;
+
+ }
+
+ }
+
+ return null;
+ }
+
+}
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTocProvider.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTocProvider.java
new file mode 100644
index 0000000000..6fd3cf35ad
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTocProvider.java
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com - modification for Javadocs
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui;
+
+import org.eclipse.help.AbstractTocProvider;
+import org.eclipse.help.IToc;
+import org.eclipse.help.ITocContribution;
+
+/**
+ * The Toc provider class provides information about the root help document.
+ */
+public class JavaDocTocProvider extends AbstractTocProvider {
+
+ @Override
+ public ITocContribution[] getTocContributions(String locale) {
+ ITocContribution contribution = new ITocContribution() {
+ @Override
+ public String getId() {
+ // a way to identify our book
+ return "org.eclipse.linuxtools.javadocs.toc"; //$NON-NLS-1$
+ }
+ @Override
+ public String getCategoryId() {
+ // our book does not belong to any category of books
+ return null;
+ }
+ @Override
+ public boolean isPrimary() {
+ // this is a primary, top-level contribution (a book)
+ return true;
+ }
+ @Override
+ public IToc getToc() {
+ return new JavaDocToc();
+ }
+ @Override
+ public String getLocale() {
+ // this provider only provides content for the en_US locale
+ return "en_US"; //$NON-NLS-1$
+ }
+ @Override
+ public String[] getExtraDocuments() {
+ // there are no extra documents associated with this book
+ return new String[0];
+ }
+ @Override
+ public String getLinkTo() {
+ return JavaDocPlugin.PLUGIN_ID + "/"; //$NON-NLS-1$
+
+ }
+ @Override
+ public String getContributorId() {
+ return "org.eclipse.linuxtools.javadocs"; //$NON-NLS-1$
+ }
+ };
+ return new ITocContribution[] { contribution };
+ }
+
+}
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTopic.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTopic.java
new file mode 100644
index 0000000000..ef4c36cd08
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/JavaDocTopic.java
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocss
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.expressions.IEvaluationContext;
+import org.eclipse.help.ITopic;
+import org.eclipse.help.IUAElement;
+
+/**
+ * The Topic class is for the subtopics within the root topic. In this case,
+ * topics generated will correspond to directories within /usr/share/javadoc
+ * (or JAVADOCS_DIRECTORY is set to).
+ */
+public class JavaDocTopic implements ITopic {
+
+ private String name;
+ private String label;
+ private String link;
+ private List<ITopic> subTopics;
+
+ JavaDocTopic(String name) {
+
+ this.name = name;
+ this.subTopics = new ArrayList<>();
+ this.label = name;
+ // For Javadocs, every directory is only one level deep, so we can hard
+ // code the link of this directory to index.html.
+ link = "index.html"; //$NON-NLS-1$
+ }
+
+
+ @Override
+ public boolean isEnabled(IEvaluationContext context) {
+
+ // Must always be true, otherwise it will not be displayed
+ return true;
+ }
+
+ @Override
+ public IUAElement[] getChildren() {
+ return getSubtopics();
+ }
+
+
+ @Override
+ public String getHref() {
+
+ // WARNING: the documentation for this method allows for a "string
+ // representation of URI to an external document", such as:
+ // jar:file:/c:/my%20sources/src.zip!/mypackage/MyClass.html
+ // However providing an absolute path to the file system will cause
+ // errors due to a bug!
+ // Follow the format of pluginID/path_to_file.html for now.
+ return JavaDocPlugin.PLUGIN_ID + "/" + name + "/" + link; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+
+ }
+
+ @Override
+ public String getLabel() {
+ return label;
+ }
+
+ @Override
+ public ITopic[] getSubtopics() {
+ return subTopics.toArray(new ITopic[0]);
+ }
+} \ No newline at end of file
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.java
new file mode 100644
index 0000000000..999708ddac
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2002, 2006, 2007, 2011 QNX Software Systems 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:
+ * QNX Software Systems - Initial API and implementation
+ * Red Hat Inc. - Modification to use with LibHover
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+
+package org.eclipse.linuxtools.internal.javadocs.ui.preferences;
+
+import java.text.MessageFormat;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+/**
+ * Makefile PreferencesMessages
+ */
+public class JavaDocMessages {
+
+
+ private static final String RESOURCE_BUNDLE= JavaDocMessages.class.getName();
+ private static ResourceBundle fgResourceBundle= ResourceBundle.getBundle(RESOURCE_BUNDLE);
+
+ private JavaDocMessages() {
+ }
+
+ public static ResourceBundle getResourceBundle() {
+ return fgResourceBundle;
+ }
+
+ public static String getString(String key) {
+ try {
+ return fgResourceBundle.getString(key);
+ } catch (MissingResourceException e) {
+ return '!' + key + '!';
+ } catch (NullPointerException e) {
+ return '#' + key + '#';
+ }
+ }
+
+ /**
+ * Returns the formatted string from the resource bundle,
+ * or 'key' if not found.
+ *
+ * @param key the message key
+ * @param args an array of substitution strings
+ * @return the resource bundle message
+ */
+ public static String getFormattedString(String key, String[] args) {
+ return MessageFormat.format(getString(key), (Object[])args);
+ }
+
+} \ No newline at end of file
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.properties b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.properties
new file mode 100644
index 0000000000..47962588c8
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocMessages.properties
@@ -0,0 +1,13 @@
+#################################################################################
+# Copyright (c) 2011 Red Hat, Inc.
+# 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:
+# Red Hat Incorporated - initial API and implementation
+#################################################################################
+Java.Doc.Directory=Javadoc directory
+Java.Doc.Regenerate=Regenerate Javadoc
+Java.Doc.Preference.title=Location of Javadoc documentation \ No newline at end of file
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocPreferencePage.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocPreferencePage.java
new file mode 100644
index 0000000000..24e07f8905
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/JavaDocPreferencePage.java
@@ -0,0 +1,97 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2015 Red Hat Inc. 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:
+ * Red Hat Inc. - Initial implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+
+package org.eclipse.linuxtools.internal.javadocs.ui.preferences;
+
+import java.io.File;
+
+import org.eclipse.jface.preference.DirectoryFieldEditor;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.linuxtools.internal.javadocs.ui.JavaDocPlugin;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+
+
+/**
+ * The preference page class controls the initialization and running of
+ * preference page under Window -> Preferences -> Javadoc documents
+ */
+public class JavaDocPreferencePage extends FieldEditorPreferencePage implements
+ IWorkbenchPreferencePage {
+
+ private final static String JAVADOCS_DIR = "Java.Doc.Directory"; //$NON-NLS-1$
+ private final static String TITLE = "Java.Doc.Preference.title"; //$NON-NLS-1$
+
+
+
+ /**
+ * Initialize the preferences page and specify the preferences store to
+ * be used to store preference values.
+ */
+ public JavaDocPreferencePage() {
+ super(GRID);
+ setPreferenceStore(JavaDocPlugin.getDefault().getPreferenceStore());
+
+ }
+
+ /**
+ * The field editor in the preferences windows. This will allow the user
+ * to set the javadoc directory they wish to read help documents from.
+ */
+ private static class JavadocStringFieldEditor extends DirectoryFieldEditor {
+
+
+ public JavadocStringFieldEditor(String name, String labelText,
+ Composite parent) {
+ super(name, labelText, parent);
+ // Load default path and display it in the text box
+ setFilterPath(new File(JavaDocPlugin.getDefault().getPreferenceStore().getString(name)));
+ }
+
+ }
+
+ /**
+ * Creates the field editors. Field editors are abstractions of
+ * the common GUI blocks needed to manipulate various types
+ * of preferences. Each field editor knows how to save and
+ * restore itself.
+ */
+ @Override
+ public void createFieldEditors() {
+ addField(
+ new LabelFieldEditor(
+ getFieldEditorParent(),
+ JavaDocMessages.getString(TITLE)));
+ addField(
+ new JavadocStringFieldEditor(
+ PreferenceConstants.JAVADOCS_DIRECTORY,
+ JavaDocMessages.getString(JAVADOCS_DIR),
+ getFieldEditorParent()));
+
+
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
+ */
+
+ @Override
+ public void init(IWorkbench workbench) {
+
+ }
+
+}
+
+
+
+
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/LabelFieldEditor.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/LabelFieldEditor.java
new file mode 100644
index 0000000000..6386f318d6
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/LabelFieldEditor.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2015 Red Hat Inc.
+ * 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:
+ * Jeff Johnston <jjohnstn@redhat.com> - initial API and implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui.preferences;
+
+import org.eclipse.jface.preference.FieldEditor;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * The label class for the preferences page.
+ */
+class LabelFieldEditor extends FieldEditor {
+ private Composite parent;
+
+ public LabelFieldEditor( Composite parent, String title ) {
+ this.parent = parent;
+ init("org.eclipse.linuxtools.javadocs.dummy", title); //$NON-NLS-1$
+ createControl(parent);
+ }
+
+ @Override
+ protected void adjustForNumColumns( int numColumns ) {
+ GridData gd = new GridData();
+ gd.horizontalSpan = numColumns;
+ // We only grab excess space if we have to
+ // If another field editor has more columns then
+ // we assume it is setting the width.
+ gd.grabExcessHorizontalSpace = gd.horizontalSpan == 1;
+ getLabelControl(parent).setLayoutData(gd);
+ }
+
+ @Override
+ protected void doFillIntoGrid( Composite parent, int numColumns ) {
+ getLabelControl(parent);
+ }
+
+ @Override
+ public int getNumberOfControls() { return 1; }
+ /**
+ * The label field editor is only used to present a text label on a preference page.
+ */
+ @Override
+ protected void doLoad() {}
+ @Override
+ protected void doLoadDefault() {
+ }
+ @Override
+ protected void doStore() {}
+}
+
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceConstants.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceConstants.java
new file mode 100644
index 0000000000..03c6943584
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceConstants.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2015 Red Hat, Inc.
+ * 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:
+ * Red Hat Incorporated - initial API and implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+
+package org.eclipse.linuxtools.internal.javadocs.ui.preferences;
+
+/**
+ * The constant for the Javadocs directory (default: /usr/share/javadoc)
+ */
+public class PreferenceConstants {
+
+ public final static String JAVADOCS_DIRECTORY = "org.eclipse.linuxtools.javadocs.directory"; //$NON-NLS-1$
+
+}
diff --git a/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceInitializer.java b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceInitializer.java
new file mode 100644
index 0000000000..9ed8c31df9
--- /dev/null
+++ b/javadocs/org.eclipse.linuxtools.javadocs/src/org/eclipse/linuxtools/internal/javadocs/ui/preferences/PreferenceInitializer.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2015 Red Hat, Inc.
+ * 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:
+ * Red Hat Incorporated - initial API and implementation
+ * Eric Williams <ericwill@redhat.com> - modification for Javadocs
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.javadocs.ui.preferences;
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.linuxtools.internal.javadocs.ui.JavaDocPlugin;
+
+/**
+ * Class used to initialize default preference values.
+ * Default: /usr/share/javadoc
+ */
+public class PreferenceInitializer extends AbstractPreferenceInitializer {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
+ */
+ @Override
+ public void initializeDefaultPreferences() {
+ IPreferenceStore store = JavaDocPlugin.getDefault().getPreferenceStore();
+ store.setDefault(PreferenceConstants.JAVADOCS_DIRECTORY, "/usr/share/javadoc"); //$NON-NLS-1$
+ }
+
+}
diff --git a/javadocs/pom.xml b/javadocs/pom.xml
new file mode 100644
index 0000000000..a8e3a0f8f1
--- /dev/null
+++ b/javadocs/pom.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (C) 2015, Red Hat, Inc.
+
+ 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
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.linuxtools</groupId>
+ <artifactId>linuxtools-parent</artifactId>
+ <version>4.0.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.eclipse.linuxtools.javadocs</groupId>
+ <artifactId>linuxtools-javadocs-parent</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Linux Tools Javadocs Parent</name>
+
+ <licenses>
+ <license>
+ <name>Eclipse Public License v1.0</name>
+ <comments>
+ 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.htm
+ </comments>
+ </license>
+ </licenses>
+
+ <modules>
+ <module>org.eclipse.linuxtools.javadocs-feature</module>
+ <module>org.eclipse.linuxtools.javadocs</module>
+ </modules>
+
+</project>
diff --git a/pom.xml b/pom.xml
index 2f0c59189c..67c0a22d1e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -179,6 +179,7 @@
<module>gcov</module>
<module>gprof</module>
<module>libhover</module>
+ <module>javadocs</module>
<module>man</module>
<module>oprofile</module>
<module>perf</module>
diff --git a/releng/org.eclipse.linuxtools.releng-site/category.xml b/releng/org.eclipse.linuxtools.releng-site/category.xml
index bbc52ea1b1..4e75baa15b 100644
--- a/releng/org.eclipse.linuxtools.releng-site/category.xml
+++ b/releng/org.eclipse.linuxtools.releng-site/category.xml
@@ -13,6 +13,9 @@
<feature url="features/org.eclipse.linuxtools.cdt.libhover.devhelp.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.cdt.libhover.devhelp.feature" version="0.0.0">
<category name="Linux Tools Additional Library API Hoverhelp"/>
</feature>
+ <feature url="features/org.eclipse.linuxtools.javadocs.feature_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.javadocs.feature" version="0.0.0">
+ <category name="Linux Tools"/>
+ </feature>
<feature url="features/org.eclipse.linuxtools.changelog_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.changelog" version="0.0.0">
<category name="Linux Tools"/>
</feature>
@@ -140,6 +143,9 @@
<feature url="features/org.eclipse.linuxtools.perf.remote.source_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.perf.remote.feature.source" version="0.0.0">
<category name="Linux Tools Sources"/>
</feature>
+ <feature url="features/org.eclipse.linuxtools.javadocs.feature.source_0.0.0.qualifier.jar" id="org.eclipse.linuxtools.javadocs.feature.source" version="0.0.0">
+ <category name="Linux Tools Sources"/>
+ </feature>
<category-def name="Linux Tools" label="Linux Tools">
<description>
Eclipse Linux Tools

Back to the top