diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Role.java b/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Role.java index b5efd3adaeb27a5b662197d94b116ed45dd43040..3a67670d423770575bbeaebc211f610478b06db5 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Role.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Role.java @@ -24,11 +24,11 @@ package kieker.webgui.domain; public enum Role { /** Represents a guest within the system. */ - ROLE_GUEST(0), + GUEST(0), /** Represents an user within the system. */ - ROLE_USER(1), + USER(1), /** Represents an administrator within the system. */ - ROLE_ADMIN(2); + ADMINISTRATOR(2); private int id; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/DerbyUserDAOImpl.java b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/DerbyUserDAOImpl.java index ad968f9a9b0746e45919af8f98649c3f537b6d96..040107fda21ab946c1d2a31c197a11f7e5b221e6 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/DerbyUserDAOImpl.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/DerbyUserDAOImpl.java @@ -39,7 +39,7 @@ import org.springframework.transaction.annotation.Transactional; /** * An implementation of the {@link IUserDAO} interface, which uses Apache Derby to store and manage the available users. A transaction manager makes sure that all - * operations are atomically. + * operations are atomically. The connection to the data base and the actual data source are managed by the Spring framework. * * @author Nils Christian Ehmke */ @@ -70,9 +70,9 @@ public class DerbyUserDAOImpl implements IUserDAO { // Use all properties of the given object statement.setString(1, user.getName()); statement.setString(2, user.getPassword()); - statement.setBoolean(3, user.getRole() == Role.ROLE_GUEST); - statement.setBoolean(4, user.getRole() == Role.ROLE_USER); - statement.setBoolean(5, user.getRole() == Role.ROLE_ADMIN); + statement.setBoolean(3, user.getRole() == Role.GUEST); + statement.setBoolean(4, user.getRole() == Role.USER); + statement.setBoolean(5, user.getRole() == Role.ADMINISTRATOR); statement.setBoolean(6, user.isEnabled()); statement.execute(); @@ -85,7 +85,7 @@ public class DerbyUserDAOImpl implements IUserDAO { try { statement.close(); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); + LOG.error("Could not close prepared statement.", ex); } } } @@ -112,7 +112,7 @@ public class DerbyUserDAOImpl implements IUserDAO { try { statement.close(); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); + LOG.error("Could not close prepared statement.", ex); } } } @@ -138,21 +138,21 @@ public class DerbyUserDAOImpl implements IUserDAO { // Set the other values statement.setString(1, user.getName()); - statement.setBoolean(2, user.getRole() == Role.ROLE_GUEST); - statement.setBoolean(3, user.getRole() == Role.ROLE_USER); - statement.setBoolean(4, user.getRole() == Role.ROLE_ADMIN); + statement.setBoolean(2, user.getRole() == Role.GUEST); + statement.setBoolean(3, user.getRole() == Role.USER); + statement.setBoolean(4, user.getRole() == Role.ADMINISTRATOR); statement.setBoolean(5, user.isEnabled()); statement.execute(); } catch (final SQLException ex) { - throw new DataAccessException("Could not update user within the database.", ex); + throw new DataAccessException("Could not edit user within the database.", ex); } finally { // Try to close the statement. If this is not possible then log the problem. It is not necessary to inform the calling method about a fail though. if (statement != null) { try { statement.close(); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); + LOG.error("Could not close prepared statement.", ex); } } } @@ -172,23 +172,24 @@ public class DerbyUserDAOImpl implements IUserDAO { statement = connection.prepareStatement("SELECT name, isGuest, isUser, isAdministrator, isEnabled FROM Users"); queryResult = statement.executeQuery(); + DerbyUserDAOImpl.queryToUsers(queryResult, result); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not receive user list.", ex); + LOG.error("Could not receive user list.", ex); } finally { // Try to close everything. If this is not possible then log the problem. It is not necessary to inform the calling method about a fail though. if (queryResult != null) { try { queryResult.close(); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not close query result.", ex); + LOG.error("Could not close query result.", ex); } } if (statement != null) { try { statement.close(); } catch (final SQLException ex) { - DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); + LOG.error("Could not close prepared statement.", ex); } } } @@ -208,11 +209,11 @@ public class DerbyUserDAOImpl implements IUserDAO { // The case that the user has no role cannot happen, as the database should make sure that this is not possible final Role role; if (isAdministrator) { - role = Role.ROLE_ADMIN; + role = Role.ADMINISTRATOR; } else if (isUser) { - role = Role.ROLE_USER; + role = Role.USER; } else if (isGuest) { - role = Role.ROLE_GUEST; + role = Role.GUEST; } else { role = null; } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/utility/Analysis.java b/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/utility/Analysis.java index 919e3ae2ccb2023cc98ead31315f59ba8301bcb9..6674b554e3c98b84dda695e453a6ca43c8446069 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/utility/Analysis.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/utility/Analysis.java @@ -78,6 +78,7 @@ public class Analysis { .withArgs(modelProject, classLoader); this.analysisController = new Mirror().on(controllerAndMapping).invoke().method("getController").withoutArgs(); + this.analysisControllerThread = new Mirror().on(analsisControllerThreadClass).invoke().constructor().withArgs(this.analysisController); final Map<Object, Object> pluginMap = (Map<Object, Object>) new Mirror().on(controllerAndMapping).invoke().method("getPluginMap").withoutArgs(); diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java index 64705bd1d7c69e273f9b1ff25a1a88aa6e5be33f..6e544819d609408f08d138c9d69f4afdf6866563 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java @@ -40,7 +40,7 @@ public class NewUserBean { * Creates a new instance of this bean and initializes it with empty fields. <b>Do not use this constructor. This bean is Spring managed.</b> */ public NewUserBean() { - this.role = Role.ROLE_GUEST; + this.role = Role.GUEST; this.username = ""; this.password = ""; this.active = false; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java index 5ea90eafb744044bd0ce1ff437abb7a42d0ef134..4fe344eff9fe821a8693763faad0aed46e8ecb85 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java @@ -437,18 +437,19 @@ public class CurrentCockpitBean { private void updateMeterGaugeDisplay(final UIComponent component, final String displayConnectorName) { final boolean isAlreadyCorrectlyInitialized = (component.getChildCount() == 1) && (component.getChildren().get(0) instanceof MeterGaugeChart); + final MeterGaugeChart meterGaugeChart; final MeterGaugeChartModel meterGaugeChartModel; // Avoid unnecessary component creation. Use the existing components if they are already existing and from the correct type. if (isAlreadyCorrectlyInitialized) { - final MeterGaugeChart meterGaugeChart = (MeterGaugeChart) component.getChildren().get(0); + meterGaugeChart = (MeterGaugeChart) component.getChildren().get(0); meterGaugeChartModel = meterGaugeChart.getValue(); } else { final FacesContext facesContext = FacesContext.getCurrentInstance(); final Application application = facesContext.getApplication(); // Create the Primefaces chart component - final MeterGaugeChart meterGaugeChart = (MeterGaugeChart) application.createComponent(facesContext, "org.primefaces.component.chart.MeterGaugeChart", + meterGaugeChart = (MeterGaugeChart) application.createComponent(facesContext, "org.primefaces.component.chart.MeterGaugeChart", "org.primefaces.component.chart.MeterGaugeChartRenderer"); meterGaugeChart.setTitle(displayConnectorName); @@ -467,10 +468,12 @@ public class CurrentCockpitBean { final Number value = (Number) new Mirror().on(displayObj).invoke().method("getValue").withoutArgs(); if (intervals.isEmpty()) { - meterGaugeChartModel.setIntervals(Arrays.asList((Number) 50, 100)); + meterGaugeChartModel.setIntervals(Arrays.asList((Number) 50)); meterGaugeChartModel.setValue(0); } else { meterGaugeChartModel.setIntervals(intervals); + meterGaugeChart.setShadow(true); + meterGaugeChart.setSeriesColors("66cc66, 93b75f, E7E658, cc6666"); final Number maxInterval = intervals.get(intervals.size() - 1); if (value.doubleValue() <= maxInterval.doubleValue()) { meterGaugeChartModel.setValue(value); diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java index d2d1b5f67aa74bccc9451b59fc21f93538915d20..f42d93f8a5d9ce0b9d117999ff1ca1c3af02afdb 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java @@ -89,7 +89,7 @@ public class CurrentUserManagementBean { this.availableUsers.add(user); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_INFO, "Added user to the database."); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("Could not add the user to the database.", ex); + LOG.error("Could not add the user to the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "Could not add the user to the database."); } } @@ -103,7 +103,7 @@ public class CurrentUserManagementBean { this.availableUsers.remove(this.selectedUser); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_INFO, "Deleted user from the database."); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("Could not delete the user from the database.", ex); + LOG.error("Could not delete the user from the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "Could not delete the user from the database."); } } @@ -121,7 +121,7 @@ public class CurrentUserManagementBean { GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_INFO, "Modified user within the database."); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("Could not modify the user within the database.", ex); + LOG.error("Could not modify the user within the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "Could not modify the user within the database."); } } @@ -137,7 +137,7 @@ public class CurrentUserManagementBean { GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_INFO, "Modified user within the database."); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("Could not modify the user within the database.", ex); + LOG.error("Could not modify the user within the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "Could not modify the user within the database."); } } @@ -158,7 +158,7 @@ public class CurrentUserManagementBean { this.availableUsers.set(this.availableUsers.indexOf(this.selectedUser), this.selectedUserCopy); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_INFO, "Modified user within the database."); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("Could not modify the user within the database.", ex); + LOG.error("Could not modify the user within the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "Could not modify the user within the database."); } } @@ -170,7 +170,7 @@ public class CurrentUserManagementBean { try { this.availableUsers = this.userService.getUsers(); } catch (final DataAccessException ex) { - CurrentUserManagementBean.LOG.error("An error occured while accessing the database.", ex); + LOG.error("An error occured while accessing the database.", ex); GlobalPropertiesBean.showMessage(FacesMessage.SEVERITY_ERROR, "An error occured while accessing the database."); } } diff --git a/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-bean-config.xml b/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-bean-config.xml index 8a32fe3ffef5aa417a2ef5213a6d5caded976da7..03c9901bb0c62764d640e39107381d484de4a040 100644 --- a/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-bean-config.xml +++ b/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-bean-config.xml @@ -68,7 +68,7 @@ <context:component-scan base-package="kieker.webgui"/> <!-- Declare the necessary enumerations. --> - <util:constant id="ROLE_GUEST" static-field="kieker.webgui.domain.Role.ROLE_GUEST"/> - <util:constant id="ROLE_USER" static-field="kieker.webgui.domain.Role.ROLE_USER"/> - <util:constant id="ROLE_ADMIN" static-field="kieker.webgui.domain.Role.ROLE_ADMIN"/> + <util:constant id="ROLE_GUEST" static-field="kieker.webgui.domain.Role.GUEST"/> + <util:constant id="ROLE_USER" static-field="kieker.webgui.domain.Role.USER"/> + <util:constant id="ROLE_ADMIN" static-field="kieker.webgui.domain.Role.ADMINISTRATOR"/> </beans> diff --git a/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-kieker-config.xml b/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-kieker-config.xml index 3d0cd8f2cea629be44eddfdd0e38c81688dfb0c6..a222a6668cc44d7db60f14db8fb40b903a87c81e 100644 --- a/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-kieker-config.xml +++ b/Kieker.WebGUI/src/main/webapp/WEB-INF/spring-kieker-config.xml @@ -8,10 +8,10 @@ xmlns:context="http://www.springframework.org/schema/context"> <!-- Kieker's instrumentation probes based on the Spring AOP interception framework --> - <!-- <bean id="opEMII" class="kieker.monitoring.probe.spring.executions.OperationExecutionMethodInvocationInterceptor" /> + <!-- <bean id="opEMII" class="kieker.monitoring.probe.spring.executions.OperationExecutionMethodInvocationInterceptor" /> <aop:config> <aop:advisor advice-ref="opEMII" pointcut="execution(public * kieker.webgui..*.*(..))"/> </aop:config> - <aop:aspectj-autoproxy proxy-target-class="true"/>--> + <aop:aspectj-autoproxy proxy-target-class="true"/> --> </beans> diff --git a/Kieker.WebGUI/src/test/java/kieker/webgui/web/converter/RoleStringConverterTest.java b/Kieker.WebGUI/src/test/java/kieker/webgui/web/converter/RoleStringConverterTest.java index fe46dd698b966da024b311df3aef8c5701f6e749..66fb9821b9c6c554677c6b897636f3f149f3a46e 100644 --- a/Kieker.WebGUI/src/test/java/kieker/webgui/web/converter/RoleStringConverterTest.java +++ b/Kieker.WebGUI/src/test/java/kieker/webgui/web/converter/RoleStringConverterTest.java @@ -44,9 +44,9 @@ public class RoleStringConverterTest { public void testEqualAsString() { final RoleStringConverter converter = new RoleStringConverter(); - Assert.assertEquals("Conversion failed.", Role.ROLE_ADMIN.toString(), converter.getAsString(null, null, Role.ROLE_ADMIN)); - Assert.assertEquals("Conversion failed.", Role.ROLE_GUEST.toString(), converter.getAsString(null, null, Role.ROLE_GUEST)); - Assert.assertEquals("Conversion failed.", Role.ROLE_USER.toString(), converter.getAsString(null, null, Role.ROLE_USER)); + Assert.assertEquals("Conversion failed.", Role.ADMINISTRATOR.toString(), converter.getAsString(null, null, Role.ADMINISTRATOR)); + Assert.assertEquals("Conversion failed.", Role.GUEST.toString(), converter.getAsString(null, null, Role.GUEST)); + Assert.assertEquals("Conversion failed.", Role.USER.toString(), converter.getAsString(null, null, Role.USER)); } /** @@ -56,9 +56,9 @@ public class RoleStringConverterTest { public void testEqualFromString() { final RoleStringConverter converter = new RoleStringConverter(); - Assert.assertEquals("Conversion failed.", Role.ROLE_ADMIN, converter.getAsObject(null, null, Role.ROLE_ADMIN.toString())); - Assert.assertEquals("Conversion failed.", Role.ROLE_GUEST, converter.getAsObject(null, null, Role.ROLE_GUEST.toString())); - Assert.assertEquals("Conversion failed.", Role.ROLE_USER, converter.getAsObject(null, null, Role.ROLE_USER.toString())); + Assert.assertEquals("Conversion failed.", Role.ADMINISTRATOR, converter.getAsObject(null, null, Role.ADMINISTRATOR.toString())); + Assert.assertEquals("Conversion failed.", Role.GUEST, converter.getAsObject(null, null, Role.GUEST.toString())); + Assert.assertEquals("Conversion failed.", Role.USER, converter.getAsObject(null, null, Role.USER.toString())); } /**