diff --git a/ui-samples-plugin/pom.xml b/ui-samples-plugin/pom.xml index e513228b4d..edf883fac3 100644 --- a/ui-samples-plugin/pom.xml +++ b/ui-samples-plugin/pom.xml @@ -56,6 +56,14 @@ THE SOFTWARE. --> ${project.artifactId} package + + + src/main/resources + + + src/main/java + + org.jvnet.hudson.tools diff --git a/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/DynamicComboBox.java b/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/DynamicComboBox.java index 6611eb3081..1c4a805846 100644 --- a/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/DynamicComboBox.java +++ b/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/DynamicComboBox.java @@ -4,6 +4,9 @@ import hudson.Extension; import hudson.util.ListBoxModel; import org.kohsuke.stapler.QueryParameter; +import java.util.Arrays; +import java.util.Collection; + import static java.util.Arrays.asList; /** diff --git a/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/UISample.java b/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/UISample.java index 84cfcaf4fe..95ba224278 100644 --- a/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/UISample.java +++ b/ui-samples-plugin/src/main/java/hudson/plugins/ui_samples/UISample.java @@ -5,6 +5,14 @@ import hudson.ExtensionPoint; import hudson.model.Action; import hudson.model.Describable; import hudson.model.Hudson; +import org.kohsuke.stapler.StaplerResponse; + +import java.io.IOException; +import java.net.URL; +import java.util.Arrays; +import java.util.List; + +import static org.apache.commons.io.IOUtils.copy; /** * @author Kohsuke Kawaguchi @@ -25,6 +33,23 @@ public abstract class UISample implements ExtensionPoint, Action, Describable getSourceFiles() { + return Arrays.asList(new SourceFile(getClass().getSimpleName()+".java")); + } + + /** + * Binds {@link SourceFile}s into URL. + */ + public SourceFile getSourceFile(String name) { + for (SourceFile sf : getSourceFiles()) + if (sf.name.equals(name)) + return sf; + return null; + } + /** * Returns a paragraph of natural text that describes this sample. * Interpreted as HTML. @@ -42,4 +67,27 @@ public abstract class UISample implements ExtensionPoint, Action, Describable - +

Dynamic ComboBox Sample

@@ -31,6 +32,8 @@ THE SOFTWARE.

+ +
diff --git a/ui-samples-plugin/src/main/resources/hudson/plugins/ui_samples/UISample/_sources.jelly b/ui-samples-plugin/src/main/resources/hudson/plugins/ui_samples/UISample/_sources.jelly new file mode 100644 index 0000000000..205fab4288 --- /dev/null +++ b/ui-samples-plugin/src/main/resources/hudson/plugins/ui_samples/UISample/_sources.jelly @@ -0,0 +1,32 @@ + + + +

Source Files

+ +
diff --git a/war/pom.xml b/war/pom.xml index 9c95924580..f572983170 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -192,7 +192,7 @@ THE SOFTWARE. stapler.resourcePath - ../core/src/main/resources + ../core/src/main/resources;../ui-samples-plugin/src/main/resources;../maven-plugin/src/main/resources