diff --git a/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar b/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar new file mode 100644 index 0000000000000000000000000000000000000000..f7863c98fdac4147bac5df1d993be1f88b05dda0 Binary files /dev/null and b/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar differ diff --git a/Kieker.WebGUI/nbactions.xml b/Kieker.WebGUI/nbactions.xml index ebbd3359c14173f30c58dbd0606bbed372e3f50d..2e15c87a2608d388ee8649072a889b9d481b10db 100644 --- a/Kieker.WebGUI/nbactions.xml +++ b/Kieker.WebGUI/nbactions.xml @@ -5,6 +5,7 @@ <goals> <goal>package</goal> <goal>jetty:run</goal> + </goals> </action> </actions> diff --git a/Kieker.WebGUI/pom.xml b/Kieker.WebGUI/pom.xml index 5591ad184a45719fd7084edf98c37e7137a7cbc4..b0627321ef772cfafdbabedd6c7bf5410ff90cb9 100644 --- a/Kieker.WebGUI/pom.xml +++ b/Kieker.WebGUI/pom.xml @@ -40,13 +40,20 @@ <dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> - <version>2.2.1</version> + <version>3.0.RC1</version> </dependency> <dependency> <groupId>org.primefaces.themes</groupId> <artifactId>ui-darkness</artifactId> <version>1.0.2</version> </dependency> + <dependency> + <groupId>de.kieker</groupId> + <artifactId>kieker</artifactId> + <version>1.5-SNAPSHOT</version> + <scope>system</scope> + <systemPath>${project.basedir}/lib/kieker-1.5-SNAPSHOT.jar</systemPath> + </dependency> </dependencies> <repositories> @@ -64,6 +71,9 @@ <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>8.1.0.RC1</version> + <configuration> + <scanIntervalSeconds>5</scanIntervalSeconds> + </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> diff --git a/Kieker.WebGUI/src/main/java/beans/AvailablePluginsBean.java b/Kieker.WebGUI/src/main/java/kieker/beans/AvailablePluginsBean.java similarity index 96% rename from Kieker.WebGUI/src/main/java/beans/AvailablePluginsBean.java rename to Kieker.WebGUI/src/main/java/kieker/beans/AvailablePluginsBean.java index dfa3db0c08a73979ad7c7d1776321dbb8277374e..89458881ba6acf9c3d9d6dd78861f71647802d32 100644 --- a/Kieker.WebGUI/src/main/java/beans/AvailablePluginsBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/beans/AvailablePluginsBean.java @@ -1,4 +1,4 @@ -package beans; +package kieker.beans; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; diff --git a/Kieker.WebGUI/src/main/java/beans/ComponentBean.java b/Kieker.WebGUI/src/main/java/kieker/beans/ComponentBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/beans/ComponentBean.java rename to Kieker.WebGUI/src/main/java/kieker/beans/ComponentBean.java index ffd977b51c98f2ed99b0000c90a3a7ae35e4832a..6938d17e684d5eae89767fc950180f0acff7939a 100644 --- a/Kieker.WebGUI/src/main/java/beans/ComponentBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/beans/ComponentBean.java @@ -1,4 +1,4 @@ -package beans; +package kieker.beans; import javax.faces.bean.ApplicationScoped; import javax.faces.bean.ManagedBean; diff --git a/Kieker.WebGUI/src/main/java/beans/ProjectsBean.java b/Kieker.WebGUI/src/main/java/kieker/beans/ProjectsBean.java similarity index 93% rename from Kieker.WebGUI/src/main/java/beans/ProjectsBean.java rename to Kieker.WebGUI/src/main/java/kieker/beans/ProjectsBean.java index a212f51c3b8f5cb2231dd25ca9be7efb81e55dde..aa5bd030062fce44a481eac1f0d79d8729b3ab9d 100644 --- a/Kieker.WebGUI/src/main/java/beans/ProjectsBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/beans/ProjectsBean.java @@ -1,6 +1,6 @@ -package beans; +package kieker.beans; -import common.Project; +import kieker.common.Project; import java.util.ArrayList; import java.util.List; import javax.faces.bean.ApplicationScoped; @@ -14,7 +14,7 @@ import org.primefaces.model.TreeNode; */ @ManagedBean @ApplicationScoped -public final class ProjectsBean { +public class ProjectsBean { private final List<Project> projects; diff --git a/Kieker.WebGUI/src/main/java/beans/TreeBean.java b/Kieker.WebGUI/src/main/java/kieker/beans/TreeBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/beans/TreeBean.java rename to Kieker.WebGUI/src/main/java/kieker/beans/TreeBean.java index 54abdb9d36c3e8474843e5a175e054b89a37a26d..0d2ecfc972cd04fcc6f3082facc61ce47b7de660 100644 --- a/Kieker.WebGUI/src/main/java/beans/TreeBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/beans/TreeBean.java @@ -1,4 +1,4 @@ -package beans; +package kieker.beans; import javax.faces.bean.ApplicationScoped; import javax.faces.bean.ManagedBean; diff --git a/Kieker.WebGUI/src/main/java/common/Project.java b/Kieker.WebGUI/src/main/java/kieker/common/Project.java similarity index 80% rename from Kieker.WebGUI/src/main/java/common/Project.java rename to Kieker.WebGUI/src/main/java/kieker/common/Project.java index ec842d4c503ebfe785c4914524078faabe2d0397..5779d50630b410b50201ff22c0a83055b6a66497 100644 --- a/Kieker.WebGUI/src/main/java/common/Project.java +++ b/Kieker.WebGUI/src/main/java/kieker/common/Project.java @@ -1,13 +1,14 @@ -package common; +package kieker.common; import java.util.ArrayList; import java.util.List; +import kieker.analysis.plugin.port.APlugin; /** * * @author Nils Christian Ehmke */ -public final class Project { +public class Project { private String name; private List<String> dependencies; @@ -15,6 +16,7 @@ public final class Project { public Project(final String name) { this.name = name; this.dependencies = new ArrayList<String>(); + System.out.println(APlugin.class.getName()); } public String getName() { diff --git a/Kieker.WebGUI/src/main/webapp/main.xhtml b/Kieker.WebGUI/src/main/webapp/main.xhtml index d153a8eace55c2d1d1374931dad9e271d0f165cb..c11eb0e6dd299505ab5773d643da74ba90d3f413 100644 --- a/Kieker.WebGUI/src/main/webapp/main.xhtml +++ b/Kieker.WebGUI/src/main/webapp/main.xhtml @@ -2,89 +2,103 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" - xmlns:p="http://primefaces.prime.com.tr/ui" > - <h:head> - <title>Kieker.WebGUI</title> - </h:head> - <h:body> - <h:form> - <p:layout fullPage="true"> - - <p:layoutUnit header="Current Project: n/a" position="top" height="115" collapsible="true"> - <div style="padding-top:10px" align="center"> - <p:spacer width="60" height="10" /> - <p:commandButton value="New Project"/> - <p:spacer width="35" height="10" /> - <p:button value="Add Dependency"/> - <p:spacer width="35" height="10" /> - <p:button value="Remove Dependency"/> - <p:spacer width="35" height="10" /> - <p:button value="Save Project"/> - <p:spacer width="35" height="10" /> - <p:button value="Delete Project"/> - </div> - </p:layoutUnit> + xmlns:f="http://java.sun.com/jsf/core" + xmlns:p="http://primefaces.org/ui" > + <f:view contentType="text/html"> + <h:head> + <title>Kieker.WebGUI</title> + <style type="text/css"> + .ui-layout-north { + z-index:20 !important; + overflow:visible !important;; + } - <p:layoutUnit header="Projects" collapsible="true" scrollable="true" position="left" width="200" resizable="true" minWidth="100"> - <p:tree style="font-size:15px" value="#{projectsBean.projectsRoot}" var="node" expanded="true" > - <p:treeNode> - <h:outputText value="#{node}"/> - </p:treeNode> - </p:tree> + + .ui-layout-north .ui-layout-unit-content { + overflow:visible !important; + } + </style> + </h:head> + + <h:body> + + <p:layout fullPage="true"> + + <p:layoutUnit position="north" size="60" collapsible="false"> + <h:form> + <p:menubar> + <p:submenu label="Projects"> + <p:menuitem value="New Project" action="#{projectsBean.addProject('NewProject')}" ajax="true" update="ProjectsList"/> + <p:menuitem value="Save Project"/> + <p:separator /> + <p:menuitem value="Delete Project"/> + </p:submenu> + + <p:submenu label="Help"> + <p:menuitem value="About..."/> + </p:submenu> + </p:menubar> + </h:form> + </p:layoutUnit> + + <p:layoutUnit style="font-size:15px" header="Projects" collapsible="true" position="west" size="200" resizable="true" minSize="100"> + <h:form id="ProjectsList"> + <p:tree selectionMode="single" value="#{projectsBean.projectsRoot}" var="node" > + <p:treeNode> + <h:outputText value="#{node}"/> + </p:treeNode> + </p:tree> + </h:form> </p:layoutUnit> - <p:layoutUnit position="center" scrollable="true"> - <p:panel style="font-size:15px;width:150px" id="handlepnl" header="FSReader"> - <h:outputText style="width: fit-content" value="myReader" /> - </p:panel> - <p:draggable for="handlepnl" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepnl" grid="40" /> - - <p:panel style="font-size:15px;width:350px" id="handlepn2" header="ResourceUtilizationPlugin"> - <h:outputText value="CPU-Utilization" /> - </p:panel> - <p:draggable for="handlepn2" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepn2" grid="40" /> - - <p:panel style="font-size:15px;width:350px" id="handlepn3" header="TraceReconstructionPlugin"> - <h:outputText value="traceReconstruction" /> - </p:panel> - <p:draggable for="handlepn3" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepn3" grid="40" /> - - <p:panel style="font-size:15px;width:350px" id="handlepn4" header="CPUGraphPlugin"> - <h:outputText value="CPUGraphPlugin" /> - </p:panel> - <p:draggable for="handlepn4" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepn4" grid="40" /> - - <p:panel style="font-size:15px;width:350px" id="handlepn5" header="SequenceDiagrammPlugin"> - <h:outputText value="SequenceDiagrammPlugin" /> - </p:panel> - <p:draggable for="handlepn5" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepn5" grid="40" /> - - <p:panel style="font-size:15px;width:350px" id="handlepn6" header="DependencyGraphPlugin"> - <h:outputText value="DependencyGraphPlugin" /> - </p:panel> - <p:draggable for="handlepn6" handle=".ui-panel-titlebar" grid="40,40"/> - <p:resizable for="handlepn6" grid="40"/> + <p:layoutUnit position="center"> + </p:layoutUnit> - - <p:layoutUnit position="bottom" height="150" scrollable="true" header="Properties" resizable="true" collapsible="true"> - + + <p:layoutUnit style="font-size:15px" position="south" size="150" header="Properties" resizable="true" collapsible="true"> + <p:dataTable id="carList"> + + + <p:column headerText="Key" style="width:125px"> + <p:cellEditor> + <f:facet name="output"> + <h:outputText value="" /> + </f:facet> + <f:facet name="input"> + <p:inputText value="" style="width:100%"/> + </f:facet> + </p:cellEditor> + </p:column> + + <p:column headerText="Value" style="width:125px"> + <p:cellEditor> + <f:facet name="output"> + <h:outputText value="" /> + </f:facet> + <f:facet name="input"> + <p:inputText value="" style="width:100%" label="Year"/> + </f:facet> + </p:cellEditor> + </p:column> + + <p:column headerText="Options" style="width:50px"> + <p:rowEditor /> + </p:column> + + </p:dataTable> </p:layoutUnit> - <p:layoutUnit position="right" width="200" scrollable="true" header="Tool Palette" resizable="true" collapsible="true"> - <p:tree style="font-size:15px" value="#{availablePluginsBean.availablePluginsRoot}" var="node" expanded="true" > + <p:layoutUnit style="font-size:15px" position="east" size="200" header="Tool Palette" resizable="true" collapsible="true"> + <p:tree value="#{availablePluginsBean.availablePluginsRoot}" var="node" > <p:treeNode> <h:outputText value="#{node}"/> </p:treeNode> </p:tree> </p:layoutUnit> - </p:layout> - </h:form> - </h:body> + </p:layout> + + </h:body> + </f:view> </html>