diff --git a/Kieker.WebGUI/nb-configuration.xml b/Kieker.WebGUI/nb-configuration.xml index 508f207db29790e2eaa1be761dc0bc3347a2924a..e226fa62400598ebb5e2a3879a910c26f679849c 100644 --- a/Kieker.WebGUI/nb-configuration.xml +++ b/Kieker.WebGUI/nb-configuration.xml @@ -21,10 +21,10 @@ Any value defined here will override the pom.xml file value but is only applicab </properties> <spring-data xmlns="http://www.netbeans.org/ns/spring-data/1"> <config-files> - <config-file>src/main/webapp/WEB-INF/spring-config.xml</config-file> - <config-file>src/main/webapp/WEB-INF/spring-security-taglib.xml</config-file> - <config-file>src/main/webapp/WEB-INF/spring-database-config.xml</config-file> <config-file>src/main/webapp/WEB-INF/spring-bean-config.xml</config-file> + <config-file>src/main/webapp/WEB-INF/spring-common-config.xml</config-file> + <config-file>src/main/webapp/WEB-INF/spring-database-config.xml</config-file> + <config-file>src/main/webapp/WEB-INF/spring-security-config.xml</config-file> </config-files> <config-file-groups/> </spring-data> diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/IUserManager.java b/Kieker.WebGUI/src/main/java/kieker/webgui/common/IUserManager.java deleted file mode 100644 index 827e68580e90ff9628d55d5debb18de8f4db21c4..0000000000000000000000000000000000000000 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/IUserManager.java +++ /dev/null @@ -1,40 +0,0 @@ -/*************************************************************************** - * Copyright 2012 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.webgui.common; - -import java.util.List; - -import org.springframework.security.access.prepost.PreAuthorize; - -import kieker.webgui.domain.User; -import kieker.webgui.domain.User.Role; - -public interface IUserManager { - - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void addUser(final String username, final String password, final List<Role> roles); - - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void removeUser(final String username); - - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void editUser(final String username, final String password, final Role... roles); - - @PreAuthorize("hasRole('ROLE_ADMIN')") - public List<User> getUsers(); - -} diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/package-info.java deleted file mode 100644 index 7d66d4494cbfd8565eb90383c1ef37e3b1c5d862..0000000000000000000000000000000000000000 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/package-info.java +++ /dev/null @@ -1,21 +0,0 @@ -/*************************************************************************** - * Copyright 2012 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -/** - * @author Nils Christian Ehmke - * - */ -package kieker.webgui.common.converter; \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/UserManagerImpl.java b/Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/UserManagerImpl.java deleted file mode 100644 index d737a4b39948d8dd5b841f440bed651612e9171d..0000000000000000000000000000000000000000 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/UserManagerImpl.java +++ /dev/null @@ -1,175 +0,0 @@ -/*************************************************************************** - * Copyright 2012 Kieker Project (http://kieker-monitoring.net) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ - -package kieker.webgui.common.impl; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.TreeMap; - -import javax.sql.DataSource; - -import org.springframework.security.access.prepost.PreAuthorize; - -import kieker.common.logging.Log; -import kieker.common.logging.LogFactory; -import kieker.webgui.common.IUserManager; -import kieker.webgui.domain.User; -import kieker.webgui.domain.User.Role; - -public class UserManagerImpl implements IUserManager { - - private static final Log LOG = LogFactory.getLog(UserManagerImpl.class); - private DataSource dataSource; - private Connection connection; - - /** - * Default constructor. <b>Do not use this constructor. This bean is Spring managed.</b> - */ - public UserManagerImpl() { - // No code necessary - } - - /** - * This method initializes the object.. <b>Do not call this method manually. It will only be accessed by Spring.</b> - */ - public void initialize() { - try { - this.connection = this.dataSource.getConnection(); - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not establish database connection.", ex); - } - } - - public void destroy() { - try { - this.connection.close(); - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not close database connection.", ex); - } - } - - public void setDataSource(final DataSource dataSource) { - this.dataSource = dataSource; - } - - @Override - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void addUser(final String username, final String password, final List<Role> roles) { - PreparedStatement userCmd = null; - PreparedStatement roleCmd = null; - try { - userCmd = this.connection.prepareStatement("INSERT INTO KIEKERUser (name, password, enabled) VALUES (?, ?, True)"); - roleCmd = this.connection.prepareStatement("INSERT INTO Userroles (name, role) VALUES (?, ?)"); - - userCmd.setString(1, username); - userCmd.setString(2, password); - userCmd.execute(); - - roleCmd.setString(1, username); - for (final Role role : roles) { - roleCmd.setInt(2, role.getID()); - roleCmd.execute(); - } - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not add user to the database.", ex); - } finally { - if (userCmd != null) { - try { - userCmd.close(); - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not close prepared statement.", ex); - } - } - if (roleCmd != null) { - try { - roleCmd.close(); - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not close prepared statement.", ex); - } - } - } - } - - @Override - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void removeUser(final String username) { - // TODO Auto-generated method stub - - } - - @Override - @PreAuthorize("hasRole('ROLE_ADMIN')") - public void editUser(final String username, final String password, final Role... roles) { - // TODO Auto-generated method stub - - } - - @Override - @PreAuthorize("hasRole('ROLE_ADMIN')") - public List<User> getUsers() { - // FIXME Users without roles - final List<User> result = new ArrayList<User>(); - ResultSet queryResult = null; - - try { - final Map<String, User> tempMap = new TreeMap<String, User>(); - - final PreparedStatement getQuery = this.connection - .prepareStatement("select u.name, ur.role, u.enabled from KIEKERUser u, Userroles ur where u.name=ur.name"); - - // Run through all results - queryResult = getQuery.executeQuery(); - while (queryResult.next()) { - // Get both the username and the role from the current entry - final String username = queryResult.getString(1); - final int roleID = queryResult.getInt(2); - final Role role = Role.fromID(roleID); - final boolean enabled = queryResult.getBoolean(3); - - // If the user doesn't exist in our map yet, add him. - // In each case we add the role to the user - if (tempMap.containsKey(username)) { - tempMap.get(username).getRoles().add(role); - } else { - final List<Role> roles = new ArrayList<Role>(); - roles.add(role); - tempMap.put(username, new User(username, null, roles, enabled)); - } - } - - // Now convert the map to the list - result.addAll(tempMap.values()); - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not receive user list.", ex); - } finally { - try { - if (queryResult != null) { - queryResult.close(); - } - } catch (final SQLException ex) { - UserManagerImpl.LOG.error("Could not close query result.", ex); - } - } - - return result; - } -} diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Project.java b/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Project.java index 2c5d9f064cd6f71439e5241a53843500a65a439a..dd2002f45824c1c11067255a6b2326c73c75c448 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Project.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/domain/Project.java @@ -22,6 +22,8 @@ import kieker.analysis.model.analysisMetaModel.MIProject; */ public class Project { + private String owner; + private String lastEditor; private MIProject projectInstance; public Project(final MIProject projectInstace) { @@ -47,4 +49,42 @@ public class Project { this.projectInstance = projectInstance; } + /** + * Getter for the property {@link Project#owner}. + * + * @return The current value of the property. + */ + public String getOwner() { + return this.owner; + } + + /** + * Setter for the property {@link Project#owner}. + * + * @param owner + * The new value of the property. + */ + public void setOwner(final String owner) { + this.owner = owner; + } + + /** + * Getter for the property {@link Project#lastEditor}. + * + * @return The current value of the property. + */ + public String getLastEditor() { + return this.lastEditor; + } + + /** + * Setter for the property {@link Project#lastEditor}. + * + * @param lastEditor + * The new value of the property. + */ + public void setLastEditor(final String lastEditor) { + this.lastEditor = lastEditor; + } + } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java index f4d6748e8545dbdf1796c3dade51d23b2f74c9cd..f641af29a3168d9447340c88394fecd6d81f7d40 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java @@ -22,7 +22,7 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.transaction.annotation.Transactional; import kieker.webgui.domain.User; -import kieker.webgui.common.exception.DataAccessException; +import kieker.webgui.domain.User.Role; /** * @@ -33,18 +33,18 @@ public interface IUserDAO { @PreAuthorize("hasRole('ROLE_ADMIN')") @Transactional - public void addUser(final User user) throws DataAccessException; + public void addUser(final String username, final String password, final List<Role> roles); @PreAuthorize("hasRole('ROLE_ADMIN')") @Transactional - public void editUser(final User user) throws DataAccessException; + public void removeUser(final String username); @PreAuthorize("hasRole('ROLE_ADMIN')") @Transactional - public void deleteUser(final User user) throws DataAccessException; + public void editUser(final String username, final String password, final Role... roles); @PreAuthorize("hasRole('ROLE_ADMIN')") @Transactional - public List<User> getUsers() throws DataAccessException; + public List<User> getUsers(); } 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 6c49c87dc67fa8262abb6b727e4e8f616f6c9d80..f11448d01f85dd96f01bb34c232f0dcf315d9e2b 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 @@ -31,7 +31,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.common.exception.DataAccessException; import kieker.webgui.domain.User; import kieker.webgui.domain.User.Role; import kieker.webgui.persistence.IUserDAO; @@ -46,51 +45,61 @@ public class DerbyUserDAOImpl implements IUserDAO { private DataSource dataSource; private Connection connection; - public void initialize() throws Exception { - this.connection = this.dataSource.getConnection(); - } - - public void destroy() throws Exception { - this.connection.close(); + /** + * Default constructor. <b>Do not use this constructor. This bean is Spring managed.</b> + */ + public DerbyUserDAOImpl() { + // No code necessary } /** - * Setter for the property {@link DerbyUserDAO#dataSource}. - * - * @param dataSource - * The new value of the property. + * This method initializes the object.. <b>Do not call this method manually. It will only be accessed by Spring.</b> */ + public void initialize() { + try { + this.connection = this.dataSource.getConnection(); + } catch (final SQLException ex) { + DerbyUserDAOImpl.LOG.error("Could not establish database connection.", ex); + } + } + + public void destroy() { + try { + this.connection.close(); + } catch (final SQLException ex) { + DerbyUserDAOImpl.LOG.error("Could not close database connection.", ex); + } + } + public void setDataSource(final DataSource dataSource) { this.dataSource = dataSource; } @Override @PreAuthorize("hasRole('ROLE_ADMIN')") - public void addUser(final User user) throws DataAccessException { + public void addUser(final String username, final String password, final List<Role> roles) { PreparedStatement userCmd = null; PreparedStatement roleCmd = null; try { - userCmd = this.connection.prepareStatement("INSERT INTO KIEKERUser (name, password, enabled) VALUES (?, ?, ?)"); + userCmd = this.connection.prepareStatement("INSERT INTO KIEKERUser (name, password, enabled) VALUES (?, ?, True)"); roleCmd = this.connection.prepareStatement("INSERT INTO Userroles (name, role) VALUES (?, ?)"); - userCmd.setString(1, user.getName()); - userCmd.setString(2, user.getPassword()); - userCmd.setBoolean(3, user.isEnabled()); + userCmd.setString(1, username); + userCmd.setString(2, password); userCmd.execute(); - roleCmd.setString(1, user.getName()); - for (final Role role : user.getRoles()) { + roleCmd.setString(1, username); + for (final Role role : roles) { roleCmd.setInt(2, role.getID()); roleCmd.execute(); } } catch (final SQLException ex) { - throw new DataAccessException("Could not add user to the database.", ex); + DerbyUserDAOImpl.LOG.error("Could not add user to the database.", ex); } finally { if (userCmd != null) { try { userCmd.close(); } catch (final SQLException ex) { - // No need to inform the calling method DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); } } @@ -98,7 +107,6 @@ public class DerbyUserDAOImpl implements IUserDAO { try { roleCmd.close(); } catch (final SQLException ex) { - // No need to inform the calling method DerbyUserDAOImpl.LOG.error("Could not close prepared statement.", ex); } } @@ -107,19 +115,20 @@ public class DerbyUserDAOImpl implements IUserDAO { @Override @PreAuthorize("hasRole('ROLE_ADMIN')") - public void deleteUser(final User user) throws DataAccessException { + public void removeUser(final String username) { // TODO Auto-generated method stub + } @Override @PreAuthorize("hasRole('ROLE_ADMIN')") - public void editUser(final User user) throws DataAccessException { + public void editUser(final String username, final String password, final Role... roles) { // TODO Auto-generated method stub } @Override @PreAuthorize("hasRole('ROLE_ADMIN')") - public List<User> getUsers() throws DataAccessException { + public List<User> getUsers() { // FIXME Users without roles final List<User> result = new ArrayList<User>(); ResultSet queryResult = null; @@ -153,14 +162,13 @@ public class DerbyUserDAOImpl implements IUserDAO { // Now convert the map to the list result.addAll(tempMap.values()); } catch (final SQLException ex) { - throw new DataAccessException("Could not receive user list.", ex); + DerbyUserDAOImpl.LOG.error("Could not receive user list.", ex); } finally { try { if (queryResult != null) { queryResult.close(); } } catch (final SQLException ex) { - // No need to inform the calling method DerbyUserDAOImpl.LOG.error("Could not close query result.", ex); } } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/service/IUserService.java b/Kieker.WebGUI/src/main/java/kieker/webgui/service/IUserService.java index 82f4dbf94b75612526cdd284fefdd4522ac0ecdb..0623c8ae0b7cd1f69828fb41b447ed086ba7aa2b 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/service/IUserService.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/service/IUserService.java @@ -15,9 +15,33 @@ ***************************************************************************/ package kieker.webgui.service; +import java.util.List; + +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; + +import kieker.webgui.domain.User; +import kieker.webgui.domain.User.Role; + /** * @author Nils Christian Ehmke */ public interface IUserService { + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void addUser(final String username, final String password, final List<Role> roles); + + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void removeUser(final String username); + + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void editUser(final String username, final String password, final Role... roles); + + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public List<User> getUsers(); + } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/UserServiceImpl.java b/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/UserServiceImpl.java index a50db3035582d9d0e4c50a79f4d9d2f80fb38693..80bd5e36b614afd89eea00daf23845d31c87cd91 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/UserServiceImpl.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/service/impl/UserServiceImpl.java @@ -15,6 +15,14 @@ ***************************************************************************/ package kieker.webgui.service.impl; +import java.util.List; + +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; + +import kieker.webgui.domain.User; +import kieker.webgui.domain.User.Role; +import kieker.webgui.persistence.IUserDAO; import kieker.webgui.service.IUserService; /** @@ -22,11 +30,68 @@ import kieker.webgui.service.IUserService; */ public class UserServiceImpl implements IUserService { + private IUserDAO userDAO; + + public UserServiceImpl() { + // No code necessary + } + /** + * Setter for the property {@link UserServiceImpl#userDAO}. * + * @param userDAO + * The new value of the property. */ - public UserServiceImpl() { - // TODO Auto-generated constructor stub + public void setUserDAO(final IUserDAO userDAO) { + this.userDAO = userDAO; + } + + /* + * (non-Javadoc) + * + * @see kieker.webgui.service.IUserService#addUser(java.lang.String, java.lang.String, java.util.List) + */ + @Override + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void addUser(final String username, final String password, final List<Role> roles) { + this.userDAO.addUser(username, password, roles); + } + + /* + * (non-Javadoc) + * + * @see kieker.webgui.service.IUserService#removeUser(java.lang.String) + */ + @Override + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void removeUser(final String username) { + this.userDAO.removeUser(username); + } + + /* + * (non-Javadoc) + * + * @see kieker.webgui.service.IUserService#editUser(java.lang.String, java.lang.String, kieker.webgui.domain.User.Role[]) + */ + @Override + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public void editUser(final String username, final String password, final Role... roles) { + this.userDAO.editUser(username, password, roles); + } + + /* + * (non-Javadoc) + * + * @see kieker.webgui.service.IUserService#getUsers() + */ + @Override + @PreAuthorize("hasRole('ROLE_ADMIN')") + @Transactional + public List<User> getUsers() { + return this.userDAO.getUsers(); } } diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/GlobalPropertiesBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/GlobalPropertiesBean.java similarity index 99% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/GlobalPropertiesBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/GlobalPropertiesBean.java index d93a1bdc564dcccc2a1a96b1c0fa1ee6dc8afe84..1f1caa7e7178e21543e90bc6f8541d403fc3a90b 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/GlobalPropertiesBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/GlobalPropertiesBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.application; +package kieker.webgui.web.beans.application; import java.io.Serializable; import java.util.ResourceBundle; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ProjectsBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ProjectsBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ProjectsBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ProjectsBean.java index 49bbe49271fa77b98117e941a9c7e7e8f705dd43..2280c6d760bee4b1acf3217b87c55fe1553ba5e4 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ProjectsBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ProjectsBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.application; +package kieker.webgui.web.beans.application; import java.io.IOException; import java.util.ArrayList; @@ -27,7 +27,7 @@ import javax.faces.application.FacesMessage; import kieker.analysis.model.analysisMetaModel.MIProject; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.beans.view.CurrentProjectOverviewBean; +import kieker.webgui.web.beans.view.CurrentProjectOverviewBean; import kieker.webgui.common.exception.ProjectAlreadyExistingException; import kieker.webgui.common.exception.ProjectLoadException; import kieker.webgui.common.exception.ProjectNotExistingException; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ThemeSwitcherBean.java similarity index 97% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ThemeSwitcherBean.java index 91bb4b3775e1887360876b130fe7ad191396790a..d2b1bd351a50f56dd158d97b7b276dbf322b213d 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/ThemeSwitcherBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/ThemeSwitcherBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.application; +package kieker.webgui.web.beans.application; import java.util.Collections; import java.util.Map; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/package-info.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/package-info.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/package-info.java index 07aa9a7350f75b910d9801c5a9173dba62aef592..f79bc88f1f0daefe319ea3b83eeba0560518f055 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/application/package-info.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/application/package-info.java @@ -19,5 +19,5 @@ * * @author Nils Christian Ehmke */ -package kieker.webgui.beans.application; +package kieker.webgui.web.beans.application; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/NewUserBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/NewUserBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java index d86ed59fcd0486838829028844d2a182c8e05762..21ae58927f3bfe21ee2400279a18207dc9548721 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/NewUserBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/NewUserBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.request; +package kieker.webgui.web.beans.request; import java.util.ArrayList; import java.util.List; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/StringBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/StringBean.java index caabc4aeb126b04ef40a67065377dd2fa4fa6662..6bde06dd166f1bcda488c16e83eb2b375fec457e 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/StringBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/StringBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.request; +package kieker.webgui.web.beans.request; /** * This simple bean can be used to store a string during a request. Furthermore it provides some simple methods to handle strings within the application where a bean diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/package-info.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/package-info.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/package-info.java index 26cfe25c23162f1f1618067bf0951a560de31731..53adcd24460450fc1b33e2b0c08e90483b44b929 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/request/package-info.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/request/package-info.java @@ -19,5 +19,5 @@ * * @author Nils Christian Ehmke */ -package kieker.webgui.beans.request; +package kieker.webgui.web.beans.request; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/UserBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/UserBean.java similarity index 98% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/UserBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/UserBean.java index a9a6025d2dc05a3007d7a1c014f577c077a7e88c..94e62188a7e75bfb73ac378d4b3391337e8184e0 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/UserBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/UserBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.session; +package kieker.webgui.web.beans.session; import java.io.Serializable; import java.util.Map; @@ -26,7 +26,7 @@ import javax.servlet.http.HttpServletResponse; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.userdetails.UserDetails; -import kieker.webgui.beans.application.GlobalPropertiesBean; +import kieker.webgui.web.beans.application.GlobalPropertiesBean; /** * This bean contains information about the user of this session (like the properties and configurations). This class is a Spring managed bean with session scope. diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/package-info.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/package-info.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/package-info.java index ecc09dcefc8c9ef382cc86ca664794b4293531be..64e96c5fe156f7d12e25c29297f04c736f1176ef 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/package-info.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/session/package-info.java @@ -19,5 +19,5 @@ * * @author Nils Christian Ehmke */ -package kieker.webgui.beans.session; +package kieker.webgui.web.beans.session; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorBean.java similarity index 99% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorBean.java index 81371c948b660275751a20edd41dd71dc98dadc4..7edd84ca24f92f98b5ae4e683f39082e4b024510 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.io.IOException; import java.lang.annotation.Annotation; @@ -49,9 +49,9 @@ import kieker.analysis.plugin.reader.AbstractReaderPlugin; import kieker.analysis.repository.AbstractRepository; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.beans.application.GlobalPropertiesBean; -import kieker.webgui.beans.application.ProjectsBean; -import kieker.webgui.beans.session.UserBean; +import kieker.webgui.web.beans.application.GlobalPropertiesBean; +import kieker.webgui.web.beans.application.ProjectsBean; +import kieker.webgui.web.beans.session.UserBean; import kieker.webgui.common.ClassAndMethodContainer; import kieker.webgui.common.exception.LibraryAlreadyExistingException; import kieker.webgui.common.exception.LibraryLoadException; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorGraphBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorGraphBean.java similarity index 99% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorGraphBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorGraphBean.java index ca3f6c4345c14e7286e3d207e889227417e7c140..e8a24cfd5773f73d595f35af9721a5237774297b 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentAnalysisEditorGraphBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentAnalysisEditorGraphBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.util.Map; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java similarity index 97% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java index 2d9b158ac46d320f1d2c196efc834992e35b3415..1a06535093ac0eab2e8271f3aabe6b75cc19fe60 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.io.IOException; @@ -25,8 +25,8 @@ import kieker.analysis.model.analysisMetaModel.MIProject; import kieker.analysis.model.analysisMetaModel.MIView; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.beans.application.GlobalPropertiesBean; -import kieker.webgui.beans.application.ProjectsBean; +import kieker.webgui.web.beans.application.GlobalPropertiesBean; +import kieker.webgui.web.beans.application.ProjectsBean; import kieker.webgui.common.ClassAndMethodContainer; import kieker.webgui.common.exception.DisplayNotFoundException; import kieker.webgui.common.exception.ProjectNotExistingException; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitEditorBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitEditorBean.java similarity index 99% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitEditorBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitEditorBean.java index 678242c146fc1d76e8701316d44d45c44198c469..cb7d9875349605c070af5573d15147bccaf81972 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentCockpitEditorBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentCockpitEditorBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.io.IOException; import java.lang.annotation.Annotation; @@ -40,8 +40,8 @@ import kieker.analysis.model.analysisMetaModel.impl.MAnalysisMetaModelFactory; import kieker.analysis.plugin.AbstractPlugin; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.beans.application.GlobalPropertiesBean; -import kieker.webgui.beans.application.ProjectsBean; +import kieker.webgui.web.beans.application.GlobalPropertiesBean; +import kieker.webgui.web.beans.application.ProjectsBean; import kieker.webgui.common.ClassAndMethodContainer; import kieker.webgui.common.exception.NewerProjectException; import kieker.webgui.common.exception.ProjectLoadException; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentControllerBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentControllerBean.java similarity index 99% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentControllerBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentControllerBean.java index 2245572dc5f60fb0e8551724b9544e21ec22e476..fb1bacde6c1309723ae92702c29ebba6dd937fd8 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentControllerBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentControllerBean.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.io.IOException; import java.io.PrintWriter; @@ -28,7 +28,7 @@ import java.util.List; import kieker.analysis.AnalysisController; import kieker.common.logging.Log; import kieker.common.logging.LogFactory; -import kieker.webgui.beans.application.ProjectsBean; +import kieker.webgui.web.beans.application.ProjectsBean; import kieker.webgui.common.exception.AnalysisInitializationException; import kieker.webgui.common.exception.AnalysisStateException; import kieker.webgui.common.exception.ProjectNotExistingException; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentProjectOverviewBean.java similarity index 96% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentProjectOverviewBean.java index 6ccfb24974c91a508c24ff5cac37bc99e6b8bfbe..ac5bc4f76ab55adb7ae4a9b8ce5ae6e179926bae 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentProjectOverviewBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentProjectOverviewBean.java @@ -14,12 +14,12 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.util.ArrayList; import java.util.List; -import kieker.webgui.beans.application.ProjectsBean; +import kieker.webgui.web.beans.application.ProjectsBean; import org.primefaces.event.SelectEvent; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentUserManagementBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java similarity index 85% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentUserManagementBean.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java index 44cff58d35d152a4873063a9bad494467bbf95da..ea0195bb73d240f7a67ed2c9761f72af79b7d11f 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/CurrentUserManagementBean.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/CurrentUserManagementBean.java @@ -14,21 +14,21 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; import java.util.ArrayList; import java.util.List; -import kieker.webgui.common.IUserManager; import kieker.webgui.domain.User; import kieker.webgui.domain.User.Role; +import kieker.webgui.service.IUserService; /** * @author Nils Christian Ehmke */ public final class CurrentUserManagementBean { - private IUserManager userManagerFacade; + private IUserService userService; /** * This list contains all available users. */ @@ -42,13 +42,13 @@ public final class CurrentUserManagementBean { } /** - * Setter for the property {@link CurrentUserManagementBean#userManagerFacade}. + * Setter for the property {@link CurrentUserManagementBean#userService}. * - * @param userManagerFacade + * @param userService * The new value for the property. */ - public void setUserManagerFacade(final IUserManager userManagerFacade) { - this.userManagerFacade = userManagerFacade; + public void setUserService(final IUserService userService) { + this.userService = userService; } /** @@ -62,7 +62,7 @@ public final class CurrentUserManagementBean { * The roles of the new user. */ public void addUser(final String username, final String password, final List<Role> roles) { - this.userManagerFacade.addUser(username, password, roles); + this.userService.addUser(username, password, roles); // TODO Check that the op was successful before adding the user to our list this.users.add(new User(username, null, roles, true)); } @@ -74,7 +74,7 @@ public final class CurrentUserManagementBean { * The name of the user. */ public void removeUser(final String username) { - this.userManagerFacade.removeUser(username); + this.userService.removeUser(username); } /** @@ -88,7 +88,7 @@ public final class CurrentUserManagementBean { * The (new) roles of the user. */ public void editUser(final String username, final String password, final Role... roles) { - this.userManagerFacade.editUser(username, password, roles); + this.userService.editUser(username, password, roles); } /** @@ -102,7 +102,7 @@ public final class CurrentUserManagementBean { * Updates the list containing the available users. */ public void updateList() { - this.users = this.userManagerFacade.getUsers(); + this.users = this.userService.getUsers(); } /** diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/package-info.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/package-info.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/package-info.java index 1294ccfaea387c1115a5e4fbc6d85776d49071a1..57470cd394f950813f0fb30447ea58441e1e5333 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/view/package-info.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/beans/view/package-info.java @@ -19,5 +19,5 @@ * * @author Nils Christian Ehmke */ -package kieker.webgui.beans.view; +package kieker.webgui.web.beans.view; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/RoleStringConverter.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/RoleStringConverter.java similarity index 97% rename from Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/RoleStringConverter.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/RoleStringConverter.java index 2168bc317864ca3974e485cccaadaf097caa3ade..99b1549844fa63b922f6d2e6f299f2d698c7082b 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/converter/RoleStringConverter.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/RoleStringConverter.java @@ -14,7 +14,7 @@ * limitations under the License. ***************************************************************************/ -package kieker.webgui.common.converter; +package kieker.webgui.web.converter; import javax.faces.component.UIComponent; import javax.faces.context.FacesContext; diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/package-info.java b/Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/package-info.java similarity index 95% rename from Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/package-info.java rename to Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/package-info.java index 54cf3cb2fc0edf4f032f6c6df549ea4dbb97ca49..1bfdcb1baeea3329b0bc445c00eb32036b6140c5 100644 --- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/impl/package-info.java +++ b/Kieker.WebGUI/src/main/java/kieker/webgui/web/converter/package-info.java @@ -18,4 +18,4 @@ * @author Nils Christian Ehmke * */ -package kieker.webgui.common.impl; \ No newline at end of file +package kieker.webgui.web.converter; \ No newline at end of file diff --git a/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_de.properties b/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_de.properties index dd9d15861ffb82ddf007d2daed82b284be2ba264..f26b740566f94e89239009c6cc6eb437c222de81 100644 --- a/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_de.properties +++ b/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_de.properties @@ -1,7 +1,7 @@ #------------------------------------------------------------------------------ # -# Diese Datei beinhaltet sämtliche Nachrichten, Buttonbeschriftungen etc., -# welche innerhalb der Projektübersichtsseite benutzt werden. +# Diese Datei beinhaltet s\u00e4mtliche Nachrichten, Buttonbeschriftungen etc., +# welche innerhalb der Projekt\u00fcbersichtsseite benutzt werden. # #------------------------------------------------------------------------------ @@ -13,6 +13,7 @@ projectName = Projektname state = Status lastModification = Letzte \u00c4nderung owner = Besitzer +lastEditor = Letzter Bearbeiter copyProject = Projekt Kopieren renameProject = Projekt Umbenennen diff --git a/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_en.properties b/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_en.properties index 7e12607f173be8c911bef14dd0c89625d7443824..b915b322536e735dbe708e374cef169166bb39ab 100644 --- a/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_en.properties +++ b/Kieker.WebGUI/src/main/resources/lang/ProjectOverviewPage_en.properties @@ -13,6 +13,7 @@ projectName = Project Name state = State lastModification = Last Modification owner = Owner +lastEditor = Last Editor copyProject = Copy Project renameProject = Rename Project 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 4cd740b51d111d333276bd9e0827e9dd3c01ea23..a3ccefdbb02d60605cae793dfb5229a4bed7bdec 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 @@ -13,13 +13,16 @@ <property name="acManager" ref="acManager" /> <property name="pluginFinder" ref="pluginFinder" /> </bean> + <bean id="userService" class="kieker.webgui.service.impl.UserServiceImpl"> + <property name="userDAO" ref="userDAO" /> + </bean> <bean id="acManager" class="kieker.webgui.service.impl.util.ACManager"> <property name="projectDAO" ref="projectDAO" /> </bean> - <bean id="projectsBean" lazy-init="true" class="kieker.webgui.beans.application.ProjectsBean" init-method="initialize"> + <bean id="projectsBean" lazy-init="true" class="kieker.webgui.web.beans.application.ProjectsBean" init-method="initialize"> <property name="projectService" ref="projectService" /> </bean> - <bean id="globalPropertiesBean" class="kieker.webgui.beans.application.GlobalPropertiesBean"> + <bean id="globalPropertiesBean" class="kieker.webgui.web.beans.application.GlobalPropertiesBean"> <property name="themeCookieName" value="${kieker.webgui.config.lookAndFeel.cookieName}"/> <property name="projectOverviewPage" value="${kieker.webgui.page.projectOverview}"/> <property name="facesContextThemeKey" value="${kieker.webgui.config.lookAndFeel.facesContextKey}"/> @@ -29,7 +32,7 @@ <property name="analysisEditorDefaultGridSize" value="${kieker.webgui.config.analysisEditor.defaultGridSize}"/> <property name="analysisEditorDefaultGridColor" value="${kieker.webgui.config.analysisEditor.defaultGridColor}"/> </bean> - <bean id="themeSwitcherBean" class="kieker.webgui.beans.application.ThemeSwitcherBean"> + <bean id="themeSwitcherBean" class="kieker.webgui.web.beans.application.ThemeSwitcherBean"> <!-- This is the map containing the available themes (look and feels). If one wants to add more themes, this is the correct place to do so. --> <property name="themes"> <map> @@ -66,50 +69,47 @@ </map> </property> </bean> - <bean destroy-method="destroy" init-method="initialize" id="userManager" class="kieker.webgui.common.impl.UserManagerImpl"> - <property name="dataSource" ref="userDataSource" /> - </bean> <bean id="userDAO" class="kieker.webgui.persistence.impl.DerbyUserDAOImpl" init-method="initialize" destroy-method="destroy"> <property name="dataSource" ref="userDataSource"/> </bean> <!-- The session scoped beans. --> - <bean id="userBean" init-method="initialize" class="kieker.webgui.beans.session.UserBean" scope="session"> + <bean id="userBean" init-method="initialize" class="kieker.webgui.web.beans.session.UserBean" scope="session"> <property name="globalPropertiesBean" ref="globalPropertiesBean"/> </bean> <!-- The view scoped beans. --> - <bean id="currentAnalysisEditorBean" class="kieker.webgui.beans.view.CurrentAnalysisEditorBean" scope="view"> + <bean id="currentAnalysisEditorBean" class="kieker.webgui.web.beans.view.CurrentAnalysisEditorBean" scope="view"> <property name="globalPropertiesBean" ref="globalPropertiesBean"/> <property name="projectService" ref="projectService" /> <property name="projectsBean" ref="projectsBean" /> <property name="currentAnalysisEditorGraphBean" ref="currentAnalysisEditorGraphBean" /> <property name="userBean" ref="userBean" /> </bean> - <bean id="currentAnalysisEditorGraphBean" class="kieker.webgui.beans.view.CurrentAnalysisEditorGraphBean" scope="view"/> - <bean id="currentCockpitBean" class="kieker.webgui.beans.view.CurrentCockpitBean" scope="view"> + <bean id="currentAnalysisEditorGraphBean" class="kieker.webgui.web.beans.view.CurrentAnalysisEditorGraphBean" scope="view"/> + <bean id="currentCockpitBean" class="kieker.webgui.web.beans.view.CurrentCockpitBean" scope="view"> <property name="projectsBean" ref="projectsBean"/> <property name="projectService" ref="projectService" /> </bean> - <bean id="currentCockpitEditorBean" class="kieker.webgui.beans.view.CurrentCockpitEditorBean" scope="view"> + <bean id="currentCockpitEditorBean" class="kieker.webgui.web.beans.view.CurrentCockpitEditorBean" scope="view"> <property name="globalPropertiesBean" ref="globalPropertiesBean"/> <property name="projectService" ref="projectService" /> <property name="projectsBean" ref="projectsBean"/> </bean> - <bean id="currentControllerBean" class="kieker.webgui.beans.view.CurrentControllerBean" scope="view"> + <bean id="currentControllerBean" class="kieker.webgui.web.beans.view.CurrentControllerBean" scope="view"> <property name="projectsBean" ref="projectsBean"/> <property name="projectService" ref="projectService" /> </bean> - <bean id="currentProjectOverviewBean" class="kieker.webgui.beans.view.CurrentProjectOverviewBean" scope="view" init-method="initialialize"> + <bean id="currentProjectOverviewBean" class="kieker.webgui.web.beans.view.CurrentProjectOverviewBean" scope="view" init-method="initialialize"> <property name="projectsBean" ref="projectsBean"/> </bean> - <bean id="currentUserManagementBean" class="kieker.webgui.beans.view.CurrentUserManagementBean" init-method="initialialize" scope="view"> - <property name="userManagerFacade" ref="userManager"/> + <bean id="currentUserManagementBean" class="kieker.webgui.web.beans.view.CurrentUserManagementBean" init-method="initialialize" scope="view"> + <property name="userService" ref="userService"/> </bean> <!-- The request scoped beans. --> - <bean id="stringBean" class="kieker.webgui.beans.request.StringBean" scope="request"/> - <bean id="newUserBean" class="kieker.webgui.beans.request.NewUserBean" scope="request"/> + <bean id="stringBean" class="kieker.webgui.web.beans.request.StringBean" scope="request"/> + <bean id="newUserBean" class="kieker.webgui.web.beans.request.NewUserBean" scope="request"/> <!-- The enums. --> <util:constant id="ROLE_USER" static-field="kieker.webgui.domain.User.Role.ROLE_USER"/> diff --git a/Kieker.WebGUI/src/main/webapp/pages/ProjectOverviewPage.xhtml b/Kieker.WebGUI/src/main/webapp/pages/ProjectOverviewPage.xhtml index 18e9b18f249f33733c647a8c3e9e1ead61797771..719740a3113693aaf36eef6ed77eb9edb539d80d 100644 --- a/Kieker.WebGUI/src/main/webapp/pages/ProjectOverviewPage.xhtml +++ b/Kieker.WebGUI/src/main/webapp/pages/ProjectOverviewPage.xhtml @@ -69,14 +69,18 @@ <h:outputText value="#{projectsBean.getAnalysisControllerState(project)}"/> </p:column> + <p:column headerText="#{localizedProjectOverviewMessages.owner}" style="text-align: center"> + <h:outputText value="N/A" /> + </p:column> + <p:column headerText="#{localizedProjectOverviewMessages.lastModification}" sortBy="#{projectsBean.getCurrTimeStamp(project)}" style="text-align: center"> <h:outputText value="#{projectsBean.getCurrTimeStamp(project)}" /> </p:column> - - <p:column headerText="#{localizedProjectOverviewMessages.owner}" style="text-align: center" rendered="false"> + + <p:column headerText="#{localizedProjectOverviewMessages.lastEditor}" style="text-align: center"> <h:outputText value="N/A" /> </p:column> - + </p:dataTable> </h:form> </ui:define>