use of org.apache.catalina.User in project tomcat by apache.
the class SparseUserDatabaseMBean method findUser.
/**
* Return the MBean Name for the specified user name (if any);
* otherwise return <code>null</code>.
*
* @param username User name to look up
* @return the user object name
*/
public String findUser(String username) {
UserDatabase database = (UserDatabase) this.resource;
User user = database.findUser(username);
if (user == null) {
return null;
}
try {
ObjectName oname = MBeanUtils.createObjectName(managedUser.getDomain(), user);
if (database.isSparse() && !mserver.isRegistered(oname)) {
MBeanUtils.createMBean(user);
}
return oname.toString();
} catch (Exception e) {
throw new IllegalArgumentException(sm.getString("userMBean.createError.user", username), e);
}
}
use of org.apache.catalina.User in project tomcat by apache.
the class SparseUserDatabaseMBean method removeUser.
/**
* Remove an existing user and destroy the corresponding MBean.
*
* @param username User name to remove
*/
public void removeUser(String username) {
UserDatabase database = (UserDatabase) this.resource;
User user = database.findUser(username);
if (user == null) {
return;
}
try {
MBeanUtils.destroyMBean(user);
database.removeUser(user);
} catch (Exception e) {
throw new IllegalArgumentException(sm.getString("userMBean.destroyError.user", username), e);
}
}
use of org.apache.catalina.User in project tomcat by apache.
the class SparseUserDatabaseMBean method getUsers.
/**
* @return the MBean Names of all users defined in this database.
*/
public String[] getUsers() {
UserDatabase database = (UserDatabase) this.resource;
List<String> results = new ArrayList<>();
Iterator<User> users = database.getUsers();
while (users.hasNext()) {
User user = users.next();
results.add(findUser(user.getUsername()));
}
return results.toArray(new String[0]);
}
use of org.apache.catalina.User in project tomcat by apache.
the class DataSourceUserDatabaseMBean method removeUserRole.
/**
* Remove specified role from the user.
* @param username The user name
* @param rolename The role name
*/
public void removeUserRole(String username, String rolename) {
UserDatabase database = (UserDatabase) this.resource;
User user = database.findUser(username);
Role role = database.findRole(rolename);
if (user != null && role != null) {
user.removeRole(role);
}
}
use of org.apache.catalina.User in project tomcat by apache.
the class DataSourceUserDatabaseMBean method getUsers.
/**
* @return the names of all users defined in this database.
*/
public String[] getUsers() {
UserDatabase database = (UserDatabase) this.resource;
List<String> results = new ArrayList<>();
Iterator<User> users = database.getUsers();
while (users.hasNext()) {
User user = users.next();
results.add(user.getUsername());
}
return results.toArray(new String[0]);
}
Aggregations