diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableDependenciesBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableDependenciesBean.java new file mode 100644 index 0000000000000000000000000000000000000000..474d638e47239e497e1d28f8620effefceb6dd64 --- /dev/null +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableDependenciesBean.java @@ -0,0 +1,26 @@ +package kieker.webgui.beans.application; + +import java.util.ArrayList; +import java.util.List; + +import javax.faces.bean.ApplicationScoped; +import javax.faces.bean.ManagedBean; + +import kieker.analysis.model.analysisMetaModel.MIDependency; + +@ManagedBean +@ApplicationScoped +public class AvailableDependenciesBean { + + private final List<MIDependency> dependencies; + + public AvailableDependenciesBean() { + this.dependencies = new ArrayList<MIDependency>(); + + } + + public List<MIDependency> getDependencies() { + return dependencies; + } + +} diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailableProjectsBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableProjectsBean.java similarity index 86% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailableProjectsBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableProjectsBean.java index a5af7e44be766f6ab8c64fb6d8fad459ea490ace..bbd85e302ab43821045466fb846dfb6896dada30 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailableProjectsBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/AvailableProjectsBean.java @@ -1,14 +1,15 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.application; -import java.util.ArrayList; import java.util.List; +import javax.faces.application.FacesMessage; import javax.faces.bean.ApplicationScoped; import javax.faces.bean.ManagedBean; import javax.faces.context.FacesContext; import kieker.analysis.model.analysisMetaModel.MIProject; import kieker.analysis.model.analysisMetaModel.impl.MAnalysisMetaModelFactory; +import kieker.webgui.beans.session.SelectedProjectBean; import kieker.webgui.common.FileManager; import org.primefaces.model.DefaultTreeNode; @@ -31,16 +32,13 @@ public class AvailableProjectsBean { factory = new MAnalysisMetaModelFactory(); } - public synchronized boolean addProject(final String projectName) { + public synchronized void addProject(final String projectName) { /* Create a new project. */ final MIProject project = factory.createProject(); project.setName(projectName); /* Try to save the project. */ - if (!FileManager.getInstance().saveNewProject(project)) { - return false; - } else { - + if (FileManager.getInstance().saveNewProject(project)) { /* Set the new project as the main project, if the current user doesn't have one. */ FacesContext context = FacesContext.getCurrentInstance(); SelectedProjectBean bean = (SelectedProjectBean) context.getApplication().evaluateExpressionGet(context, "#{selectedProjectBean}", @@ -49,7 +47,7 @@ public class AvailableProjectsBean { bean.setMainProject(project); } - return projects.add(project); + projects.add(project); } } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/ThemeSwitcherBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/ThemeSwitcherBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java index 23156fe7474d89a143077bdfcde7f485f82b2436..8357c65164123c655233516d513ea0cf23819a01 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/ThemeSwitcherBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java @@ -1,4 +1,4 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.application; import java.util.Map; import java.util.TreeMap; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/SelectedDependenciesBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/SelectedDependenciesBean.java new file mode 100644 index 0000000000000000000000000000000000000000..438655a50b52854eeaf6c84e6a6398d865d902f4 --- /dev/null +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/SelectedDependenciesBean.java @@ -0,0 +1,35 @@ +package kieker.webgui.beans.request; + +import java.util.ArrayList; +import java.util.List; + +import javax.faces.bean.ManagedBean; +import javax.faces.bean.RequestScoped; + +import org.primefaces.model.DualListModel; + +@ManagedBean +@RequestScoped +public class SelectedDependenciesBean { + + private DualListModel<String> dependencies; + + public SelectedDependenciesBean() { + List<String> source = new ArrayList<String>(); + List<String> target = new ArrayList<String>(); + + source.add("Lib 1"); + source.add("Lib 2"); + + dependencies = new DualListModel<String>(source, target); + } + + public DualListModel<String> getDependencies() { + return dependencies; + } + + public void setDependencies(DualListModel<String> dependencies) { + this.dependencies = dependencies; + } + +} diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/StringBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java similarity index 96% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/StringBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java index 2f16cae368862f3857bb6fe72b0f5e4071e5b222..bb5fda66779a4af5f6d555a89c93316525b01930 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/StringBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java @@ -1,4 +1,4 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.request; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailablePluginsBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AvailablePluginsBean.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailablePluginsBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AvailablePluginsBean.java index 3003e968e2f487990b38fe0998cb36599081668d..20c988072c15ee8408e1639a016d3ece10be705d 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/AvailablePluginsBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AvailablePluginsBean.java @@ -1,4 +1,4 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.session; import javax.enterprise.context.SessionScoped; import javax.faces.bean.ManagedBean; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/CurrentThemeBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/CurrentThemeBean.java similarity index 93% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/CurrentThemeBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/CurrentThemeBean.java index a49d66c45c1754b01a8981102eb97a0a71d91691..65b67e3c01d76dd228bc0cf56ad08b1f021c4fb5 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/CurrentThemeBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/CurrentThemeBean.java @@ -1,10 +1,12 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.session; import java.util.Map; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import javax.faces.context.FacesContext; +import kieker.webgui.beans.application.ThemeSwitcherBean; + /** * This bean can be used for a single session of a user and stores the currently used theme (look and feel) for this user. Currently the default value being used is * the "glass-x"-theme, if none is find within the parameters of the faces context. diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/DependencyUploadController.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/DependencyUploadController.java similarity index 88% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/DependencyUploadController.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/DependencyUploadController.java index 4fd3b6fdf6b95f318f627c7103416beb266b832f..1a1272101306e7179a547b7febdcad49aff8df3b 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/DependencyUploadController.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/DependencyUploadController.java @@ -1,4 +1,4 @@ -package kieker.webgui.beans; +package kieker.webgui.beans.session; import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; @@ -30,6 +30,6 @@ public class DependencyUploadController { public void upload() { FacesMessage msg = new FacesMessage("Succesful", file.getFileName() + " is uploaded."); FacesContext.getCurrentInstance().addMessage(null, msg); - FileManager.getInstance().uploadDependency(file); + // FileManager.getInstance().uploadDependency(file); } } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/SelectedProjectBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedProjectBean.java similarity index 97% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/SelectedProjectBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedProjectBean.java index 04d6dd7be8b67e7a0a8f7bba03fc1922d6a184bc..85dcf55088b67211bab1ff391f1ca9fa818d6bca 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/SelectedProjectBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedProjectBean.java @@ -2,7 +2,7 @@ * To change this template, choose Tools | Templates * and open the template in the editor. */ -package kieker.webgui.beans; +package kieker.webgui.beans.session; import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; diff --git a/Kieker.WebGUI/src/main/webapp/WEB-INF/pretty-config.xml b/Kieker.WebGUI/src/main/webapp/WEB-INF/pretty-config.xml index 5169bbe24d85a5cf29ef2da0b5ca8f3b1fc91cf3..79b98996e225e7173af8e639f8848fdaba904005 100644 --- a/Kieker.WebGUI/src/main/webapp/WEB-INF/pretty-config.xml +++ b/Kieker.WebGUI/src/main/webapp/WEB-INF/pretty-config.xml @@ -8,5 +8,15 @@ <pattern value="/Kieker.WebGUI" /> <view-id value="/faces/main.xhtml" /> </url-mapping> + + <url-mapping id="projectDependencies"> + <pattern value="/Kieker.WebGUI/projectDependencies" /> + <view-id value="/faces/projectDependencies.xhtml" /> + </url-mapping> + + <url-mapping id="manageDependencies"> + <pattern value="/Kieker.WebGUI/manageDependencies" /> + <view-id value="/faces/manageDependencies.xhtml" /> + </url-mapping> </pretty-config> \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/webapp/WEB-INF/web.xml b/Kieker.WebGUI/src/main/webapp/WEB-INF/web.xml index d8878dbb663ccc5dd24936ec61a3594cec714025..f456e788815738ee237b6856088cf88018ca18bd 100644 --- a/Kieker.WebGUI/src/main/webapp/WEB-INF/web.xml +++ b/Kieker.WebGUI/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,6 @@ <param-name>thresholdSize</param-name> <param-value>51200</param-value> </init-param> - <init-param> - <param-name>uploadDirectory</param-name> - <param-value>C:\Temp</param-value> - </init-param> </filter> <filter-mapping> <filter-name>PrimeFaces FileUpload Filter</filter-name> diff --git a/Kieker.WebGUI/src/main/webapp/main.css b/Kieker.WebGUI/src/main/webapp/main.css index b85cf6c6ad2a6007a12bffa9080fad442fdaf437..35e24a8dd823e5c68322ebc6283a9481b3ef2658 100644 --- a/Kieker.WebGUI/src/main/webapp/main.css +++ b/Kieker.WebGUI/src/main/webapp/main.css @@ -4,40 +4,39 @@ * The following style modifications make sure that the menu bar is visible. */ .ui-layout-north { - z-index:20 !important; - overflow:visible !important;; + z-index: 20 !important; + overflow: visible !important;; } - .ui-layout-north .ui-layout-unit-content { - overflow:visible !important; + overflow: visible !important; } .ui-layout-center { - font-size: 15px; + font-size: 15px; } .ui-layout-east { - font-size: 15px; + font-size: 15px; } .ui-layout-south { - font-size: 15px; + font-size: 15px; } .ui-layout-west { - font-size: 15px; + font-size: 15px; } .ui-menubar .ui-menuitem { - font-size: 15px; + font-size: 15px; } .ui-contextmenu { - font-size: 15px; + font-size: 15px; } .ui-dialog { - font-size: 15px; - width: auto; + font-size: 15px; + width: auto; } \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/webapp/main.xhtml b/Kieker.WebGUI/src/main/webapp/main.xhtml index 4e7aa1777dfb3c7965bed8aaecd81a7f9af37fe6..54cde65500caa31bee8a359170f362ff01142c6e 100644 --- a/Kieker.WebGUI/src/main/webapp/main.xhtml +++ b/Kieker.WebGUI/src/main/webapp/main.xhtml @@ -13,29 +13,38 @@ </h:head> <h:body> + <!-- This is the layout for the whole page. --> <p:layout fullPage="true"> + <!-- ******************************************************************************** --> <!-- This is the top unit within the layout and is used for the menu bar. --> <p:layoutUnit position="north" size="60" collapsible="false"> <h:form> <p:menubar> <p:submenu label="File"> - <p:menuitem value="New Project" - onclick="NewProjectDialog.show();" ajax="true" - update="ProjectsList" /> + <p:menuitem value="New Project" onclick="newProjectDialog.show()" + ajax="true" /> + <p:menuitem value="Manage Dependencies" ajax="false" + url="/Kieker.WebGUI/manageDependencies" /> + <p:separator /> + + <p:menuitem value="Settings" onclick="settingsDialog.show()" + ajax="true" /> + </p:submenu> + + <!-- This is the submenu for the current project, for example if someone doesn't want to use the context menu within the browser. --> + <p:submenu label="Current Project"> <p:menuitem value="Save Project" ajax="true" /> <p:menuitem value="Set as Main Project" ajax="true" /> <p:separator /> + <p:menuitem value="Delete Project" ajax="true" /> <p:menuitem value="Reset Project" ajax="true" /> <p:separator /> - <p:menuitem value="Add Dependency" ajax="true" - onclick="DependenciesUploadDialog.show();" /> - <p:menuitem value="Delete Dependency" ajax="true" /> - <p:separator /> - <p:menuitem value="Settings" onclick="SettingsDialog.show();" - ajax="true" /> + + <p:menuitem value="Configure Dependencies" ajax="false" + url="/Kieker.WebGUI/projectDependencies" /> </p:submenu> <p:submenu label="Help"> @@ -46,13 +55,15 @@ </h:form> </p:layoutUnit> + <!-- ******************************************************************************** --> + <!-- ******************************************************************************** --> <!-- The following layout is at the left side of the page and shows the available projects. --> <p:layoutUnit header="Projects" collapsible="true" position="west" size="200" resizable="true" minSize="100"> - <h:form id="ProjectsList"> + <h:form id="projectsForm"> <p:tree selection="#{selectedProjectBean.selectedNode}" - id="ProjectsListTree" selectionMode="single" style="width: auto" + id="projectsTree" selectionMode="single" style="width: auto" value="#{availableProjectsBean.projectsRoot}" var="node"> <p:treeNode type="project"> <h:outputText @@ -70,153 +81,174 @@ </p:treeNode> </p:tree> - <p:contextMenu for="ProjectsListTree" nodeType="project"> - <p:menuitem value="New Project" onclick="NewProjectDialog.show();" - ajax="true" update="ProjectsList" /> + <p:contextMenu for="projectsTree" nodeType="project"> <p:menuitem value="Save Project" ajax="true" /> <p:menuitem value="Set as Main Project" ajax="true" action="#{selectedProjectBean.setMainProject(selectedProjectBean.getSelectedProject())}" - update="ProjectsListTree" /> + update="projectsForm" /> + <p:separator /> <p:menuitem value="Delete Project" ajax="true" /> <p:menuitem value="Reset Project" ajax="true" /> + <p:separator /> + <p:menuitem value="Configure Dependencies" ajax="true" /> </p:contextMenu> - <p:contextMenu for="ProjectsListTree" nodeType="dependencies"> - <p:menuitem value="Add Dependency" ajax="true" - onclick="DependenciesUploadDialog.show();" /> - <p:menuitem value="Delete Dependency" ajax="true" /> + <p:contextMenu for="projectsTree" nodeType="dependencies"> </p:contextMenu> - <p:contextMenu for="ProjectsListTree" nodeType="usedPlugins"> - + <p:contextMenu for="projectsTree" nodeType="usedPlugins"> </p:contextMenu> </h:form> </p:layoutUnit> + <!-- ******************************************************************************** --> + <!-- ******************************************************************************** --> <!-- The following layout unit is within the center and used for the graph. --> <p:layoutUnit position="center"> </p:layoutUnit> + <!-- ******************************************************************************** --> + <!-- ******************************************************************************** --> <!-- The following layout unit is located at the bottom and will be used for properties. --> <p:layoutUnit 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> + <h:form> + <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> + </h:form> </p:layoutUnit> + <!-- ******************************************************************************** --> + <!-- ******************************************************************************** --> <!-- The following layout unit is located at the right side of the page and is used as a tool palette. It shows the available plugins etc. --> <p:layoutUnit position="east" size="200" header="Tool Palette" resizable="true" collapsible="true"> - <p:tree style="width: auto" - value="#{availablePluginsBean.availablePluginsRoot}" var="node"> - <p:treeNode> - <h:outputText value="#{node}" /> - </p:treeNode> - </p:tree> + <h:form> + <p:tree style="width: auto" + value="#{availablePluginsBean.availablePluginsRoot}" var="node"> + <p:treeNode> + <h:outputText value="#{node}" /> + </p:treeNode> + </p:tree> + </h:form> </p:layoutUnit> + <!-- ******************************************************************************** --> </p:layout> - </h:body> - <!-- This is the about-dialog. --> - <p:dialog header="About..." resizable="false" modal="true" - widgetVar="AboutDialog"> - <h:outputText value="Kieker.WebGUI" /> - <br /> - <br /> - <h:outputText value="Version: 1.0-SNAPSHOT" /> - <br /> - <h:outputText value="Copyright (c) 2012 Kieker Project" /> - <br /> - <br /> - <a href="http://www.kieker-monitoring.net/">http://www.kieker-monitoring.net/</a> - </p:dialog> - - <!-- This is the dialog to create a new project. --> - <p:dialog id="NewProjectDialog" header="New Project" resizable="false" - modal="true" widgetVar="NewProjectDialog"> - <p:ajax event="close" update="NewProjectDialog" - listener="#{stringBean.clear()}" /> - - <h:form> - <h:outputText value="Please enter the name of the new project: " /> - <br /> - <br /> - <center> - <p:inputText id="NewProjectInput" style="width: 90%" - value="#{stringBean.string}" /> - <br /> <br /> - <p:commandButton value="Submit" - action="#{availableProjectsBean.addProject(stringBean.string)}" - update="ProjectsList" oncomplete="NewProjectDialog.hide();" /> - </center> - </h:form> - </p:dialog> - - <!-- This is the dialog for settings and properties. --> - <p:dialog id="SettingsDialog" header="Settings" resizable="false" - modal="true" widgetVar="SettingsDialog"> - <h:form> - <h:panelGrid columns="2" cellpadding="10"> - <h:outputText value="Look and Feel:" /> - <p:themeSwitcher value="#{currentThemeBean.theme}" - style="width:150px" effect="fade"> - <f:selectItem itemLabel="Choose Theme" itemValue="" /> - <f:selectItems value="#{themeSwitcherBean.themes}" /> - </p:themeSwitcher> - </h:panelGrid> - <center> - <p:commandButton value="Okay" oncomplete="SettingsDialog.hide();" /> - </center> - </h:form> - </p:dialog> - - <!-- This is the dialog for uploading dependencies. --> - <p:dialog id="DependenciesUploadDialog" header="Add Dependency" - resizable="false" modal="true" widgetVar="DependenciesUploadDialog"> - - <h:form enctype="multipart/form-data"> - - <p:messages showDetail="true" /> - - <p:fileUpload value="#{dependencyUploadController.file}" - mode="simple" /> - - <p:commandButton value="Submit" ajax="false" - actionListener="#{dependencyUploadController.upload}" /> - - </h:form> - - </p:dialog> + <!-- ******************************************************************************** --> + <!-- This is the about-dialog. --> + <p:dialog header="About..." resizable="false" modal="true" + widgetVar="AboutDialog"> + <h:form> + <h:outputText value="Kieker.WebGUI" /> + <br /> + <br /> + <h:outputText value="Version: 1.0-SNAPSHOT" /> + <br /> + <h:outputText value="Copyright (c) 2012 Kieker Project" /> + <br /> + <br /> + <a href="http://www.kieker-monitoring.net/">http://www.kieker-monitoring.net/</a> + </h:form> + </p:dialog> + <!-- ******************************************************************************** --> + + <!-- ******************************************************************************** --> + <!-- This is the dialog to create a new project. --> + <p:dialog id="newProjectDialog" header="New Project" resizable="false" + modal="true" widgetVar="newProjectDialog"> + <!-- Make sure that closing of the dialog also clears the input field. --> + <p:ajax event="close" update="newProjectDialog" + listener="#{stringBean.clear()}" /> + + <h:form> + <h:outputText value="Please enter the name of the new project: " /> + <br /> + <br /> + <center> + <p:inputText id="NewProjectInput" style="width: 90%" + value="#{stringBean.string}" /> + <br /> <br /> + <p:commandButton value="Ok" + action="#{availableProjectsBean.addProject(stringBean.string)}" + oncomplete="newProjectDialog.hide()" /> + <p:spacer width="100" height="10" /> + <p:commandButton value="Cancel" onclick="newProjectDialog.hide()" /> + </center> + </h:form> + </p:dialog> + <!-- ******************************************************************************** --> + + <!-- ******************************************************************************** --> + <!-- This is the dialog for settings and properties. --> + <p:dialog id="settingsDialog" header="Settings" resizable="false" + modal="true" widgetVar="settingsDialog"> + <h:form> + <h:panelGrid columns="2" cellpadding="10"> + <h:outputText value="Look and Feel:" /> + <p:themeSwitcher value="#{currentThemeBean.theme}" + style="width:150px" effect="fade"> + <f:selectItem itemLabel="Choose Theme" itemValue="" /> + <f:selectItems value="#{themeSwitcherBean.themes}" /> + </p:themeSwitcher> + </h:panelGrid> + <center> + <p:commandButton value="Ok" oncomplete="settingsDialog.hide();" /> + </center> + </h:form> + </p:dialog> + <!-- ******************************************************************************** --> + + <!-- ******************************************************************************** --> + <!-- This is the dialog for uploading dependencies. --> + <p:dialog id="dependenciesUploadDialog" header="Add Dependency" + resizable="false" modal="true" widgetVar="dependenciesUploadDialog"> + + <h:form enctype="multipart/form-data"> + + <p:messages showDetail="true" /> + + <p:fileUpload value="#{dependencyUploadController.file}" + mode="simple" /> + + <p:commandButton value="Submit" ajax="false" + actionListener="#{dependencyUploadController.upload}" /> + + </h:form> + + </p:dialog> + <!-- ******************************************************************************** --> + </h:body> </f:view> </html> diff --git a/Kieker.WebGUI/src/main/webapp/manageDependencies.css b/Kieker.WebGUI/src/main/webapp/manageDependencies.css new file mode 100644 index 0000000000000000000000000000000000000000..133b19abc8c8d84f3fc9151bd47b49c664453281 --- /dev/null +++ b/Kieker.WebGUI/src/main/webapp/manageDependencies.css @@ -0,0 +1,5 @@ +@charset "UTF-8"; + +.ui-button { + font-size: 15px; +} \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/webapp/manageDependencies.xhtml b/Kieker.WebGUI/src/main/webapp/manageDependencies.xhtml new file mode 100644 index 0000000000000000000000000000000000000000..d92351a3ecefb6fa8a9d5c9ee52d4ef561e84dc4 --- /dev/null +++ b/Kieker.WebGUI/src/main/webapp/manageDependencies.xhtml @@ -0,0 +1,35 @@ +<?xml version='1.0' encoding='UTF-8' ?> +<!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:f="http://java.sun.com/jsf/core" + xmlns:p="http://primefaces.org/ui"> + +<f:view contentType="text/html"> + <h:head> + <title>Kieker.WebGUI - Dependencies</title> + <link rel="stylesheet" title="Standard-Stylesheet" type="text/css" + href="manageDependencies.css" /> + </h:head> + <body> + <h:form> + <h3>Currently Available Dependencies</h3> + <p:dataList id="currentDependencies" + value="#{availableDependenciesBean.dependencies}" var="dependency" + itemType="square"> + #{dependency.getFilePath()} + </p:dataList> + </h:form> + + <h:form enctype="multipart/form-data"> + <p:fileUpload value="#{dependencyUploadController.file}" + mode="simple" /> + <br /> + <p:commandButton value="Upload" ajax="false" + actionListener="#{dependencyUploadController.upload}" /> + + </h:form> + </body> +</f:view> + +</html> \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/webapp/projectDependencies.xhtml b/Kieker.WebGUI/src/main/webapp/projectDependencies.xhtml new file mode 100644 index 0000000000000000000000000000000000000000..a4813ae384fd4e6952a8cc6579b0d88bc101613c --- /dev/null +++ b/Kieker.WebGUI/src/main/webapp/projectDependencies.xhtml @@ -0,0 +1,26 @@ +<?xml version='1.0' encoding='UTF-8' ?> +<!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:f="http://java.sun.com/jsf/core" + xmlns:p="http://primefaces.org/ui"> + +<f:view contentType="text/html"> + <h:head> + <title>Kieker.WebGUI - Project Dependencies</title> + <link rel="stylesheet" title="Standard-Stylesheet" type="text/css" + href="main.css" /> + </h:head> + <body> + <h:form> + <p:pickList id="pickList" value="#{selectedDependenciesBean.dependencies}" var="dependency" + itemLabel="#{dependency}" itemValue="#{dependency}" /> + <p:commandButton value="Ok" /> + <p:commandButton value="Accept" /> + <p:commandButton value="Cancel" /> + <p:commandButton value="Reset" /> + </h:form> + </body> +</f:view> + +</html> \ No newline at end of file