View Javadoc
1   /*
2    *   Licensed to the Apache Software Foundation (ASF) under one
3    *   or more contributor license agreements.  See the NOTICE file
4    *   distributed with this work for additional information
5    *   regarding copyright ownership.  The ASF licenses this file
6    *   to you under the Apache License, Version 2.0 (the
7    *   "License"); you may not use this file except in compliance
8    *   with the License.  You may obtain a copy of the License at
9    *
10   *     https://www.apache.org/licenses/LICENSE-2.0
11   *
12   *   Unless required by applicable law or agreed to in writing,
13   *   software distributed under the License is distributed on an
14   *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   *   KIND, either express or implied.  See the License for the
16   *   specific language governing permissions and limitations
17   *   under the License.
18   *
19   */
20  package org.apache.directory.api.ldap.model.subtree;
21  
22  
23  import org.apache.directory.api.util.Strings;
24  
25  
26  /**
27   * The Administrative roles
28   *
29   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
30   */
31  public enum AdministrativeRole
32  {
33      /** The AutonomousArea role */
34      AutonomousArea("autonomousArea"),
35  
36      /** The AccessControlSpecificArea role */
37      AccessControlSpecificArea("accessControlSpecificArea"),
38  
39      /** The AccessControlInnerArea role */
40      AccessControlInnerArea("accessControlInnerArea"),
41  
42      /** The CollectiveAttributeSpecificArea role */
43      CollectiveAttributeSpecificArea("collectiveAttributeSpecificArea"),
44  
45      /** The CollectiveAttributeInnerArea role */
46      CollectiveAttributeInnerArea("collectiveAttributeInnerArea"),
47  
48      /** The SubSchemaSpecificArea role */
49      SubSchemaSpecificArea("subSchemaSpecificArea"),
50  
51      /** The TriggerExecutionSpecificArea role */
52      TriggerExecutionSpecificArea("triggerExecutionSpecificArea"),
53  
54      /** The TriggerExecutionInnerArea role */
55      TriggerExecutionInnerArea("triggerExecutionInnerArea"),
56      
57      /** The PasswordPolicySpecificArea role */
58      PasswordPolicySpecificArea("passwordPolicySpecificArea");
59  
60      /** The AdministrativeRole as a String */
61      private String role;
62  
63  
64      /**
65       * Creates an instance of AdministrativeRole
66       * 
67       * @param role The role's name
68       */
69      AdministrativeRole( String role )
70      {
71          this.role = Strings.toLowerCaseAscii( Strings.trim( role ) );
72      }
73  
74  
75      /**
76       * @return The AdministrativeRole as a String
77       */
78      public String getRole()
79      {
80          return role;
81      }
82  }