ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/catalina/mbeans/GroupMBean.java

Path
ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/catalina/mbeans/GroupMBean.java
Status
scanned
Type
file
Name
GroupMBean.java
Extension
.java
Programming language
Java
Mime type
text/x-c
File type
C source, ASCII text, with CRLF line terminators
Tag

      
    
Rootfs path

      
    
Size
4608 (4.5 KB)
MD5
26a0e9574da46136defde2568d028aea
SHA1
b573dc9e594fb43ad687ca700c572dfefbdaead6
SHA256
e8ac63fc2017c564aa27bfb0a310aeaa3b0affa46ed8ff786602b6fdbbc63c38
SHA512

      
    
SHA1_git
bbf1e142d267a427cbe3a55d6f72280ed092f3ac
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
GroupMBean.java | 4.5 KB |

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You 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 org.apache.catalina.mbeans; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import javax.management.MalformedObjectNameException; import javax.management.ObjectName; import org.apache.catalina.Group; import org.apache.catalina.Role; import org.apache.catalina.User; import org.apache.tomcat.util.modeler.BaseModelMBean; import org.apache.tomcat.util.modeler.ManagedBean; import org.apache.tomcat.util.modeler.Registry; import org.apache.tomcat.util.res.StringManager; /** * <p> * A <strong>ModelMBean</strong> implementation for the <code>org.apache.catalina.Group</code> component. * </p> */ public class GroupMBean extends BaseModelMBean { private static final StringManager sm = StringManager.getManager(GroupMBean.class); /** * The configuration information registry for our managed beans. */ protected final Registry registry = MBeanUtils.createRegistry(); /** * The <code>ManagedBean</code> information describing this MBean. */ protected final ManagedBean managed = registry.findManagedBean("Group"); /** * @return the MBean Names of all authorized roles for this group. */ public String[] getRoles() { Group group = (Group) this.resource; List<String> results = new ArrayList<>(); Iterator<Role> roles = group.getRoles(); while (roles.hasNext()) { Role role = null; try { role = roles.next(); ObjectName oname = MBeanUtils.createObjectName(managed.getDomain(), role); results.add(oname.toString()); } catch (MalformedObjectNameException e) { throw new IllegalArgumentException(sm.getString("userMBean.createError.role", role), e); } } return results.toArray(new String[0]); } /** * @return the MBean Names of all users that are members of this group. */ public String[] getUsers() { Group group = (Group) this.resource; List<String> results = new ArrayList<>(); Iterator<User> users = group.getUsers(); while (users.hasNext()) { User user = null; try { user = users.next(); ObjectName oname = MBeanUtils.createObjectName(managed.getDomain(), user); results.add(oname.toString()); } catch (MalformedObjectNameException e) { throw new IllegalArgumentException(sm.getString("userMBean.createError.user", user), e); } } return results.toArray(new String[0]); } /** * Add a new {@link Role} to those this group belongs to. * * @param rolename Role name of the new role */ public void addRole(String rolename) { Group group = (Group) this.resource; if (group == null) { return; } Role role = group.getUserDatabase().findRole(rolename); if (role == null) { throw new IllegalArgumentException(sm.getString("userMBean.invalidRole", rolename)); } group.addRole(role); } /** * Remove a {@link Role} from those this group belongs to. * * @param rolename Role name of the old role */ public void removeRole(String rolename) { Group group = (Group) this.resource; if (group == null) { return; } Role role = group.getUserDatabase().findRole(rolename); if (role == null) { throw new IllegalArgumentException(sm.getString("userMBean.invalidRole", rolename)); } group.removeRole(role); } }
Detected license expression
apache-2.0
Detected license expression (SPDX)
Apache-2.0
Percentage of license text
24.59
Copyrights

      
    
Holders

      
    
Authors

      
    
License detections License expression License expression SPDX
apache_2_0-4bde3f57-78aa-4201-96bf-531cba09e7de apache-2.0 Apache-2.0
URL Start line End line
http://www.apache.org/licenses/LICENSE-2.0 9 9