001/*
002 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003 *
004 * Copyright (c) 2005 Sun Microsystems Inc. All Rights Reserved
005 *
006 * The contents of this file are subject to the terms
007 * of the Common Development and Distribution License
008 * (the License). You may not use this file except in
009 * compliance with the License.
010 *
011 * You can obtain a copy of the License at
012 * https://opensso.dev.java.net/public/CDDLv1.0.html or
013 * opensso/legal/CDDLv1.0.txt
014 * See the License for the specific language governing
015 * permission and limitations under the License.
016 *
017 * When distributing Covered Code, include this CDDL
018 * Header Notice in each file and include the License file
019 * at opensso/legal/CDDLv1.0.txt.
020 * If applicable, add the following below the CDDL Header,
021 * with the fields enclosed by brackets [] replaced by
022 * your own identifying information:
023 * "Portions Copyrighted [year] [name of copyright owner]"
024 *
025 * $Id: AMConstants.java,v 1.6 2009/01/28 05:34:47 ww203982 Exp $
026 *
027 * Portions Copyright 2015 ForgeRock AS.
028 */
029
030package com.iplanet.am.sdk;
031
032import java.util.HashSet;
033import java.util.Set;
034
035import org.forgerock.opendj.ldap.SearchScope;
036
037/**
038 * This interface defines constants used by <code>AM SDK</code>.
039 * @supported.all.api
040 * 
041 * <br>
042 * @deprecated  As of Sun Java System Access Manager 7.1.
043 */
044public interface AMConstants {
045
046    // search scope
047    /**
048     * Specifies search scope to be just for the object specified
049     */
050    public static final int SCOPE_BASE = SearchScope.BASE_OBJECT.intValue();
051
052    /**
053     * Specifies search scope to be a one level search.
054     */
055    public static final int SCOPE_ONE = SearchScope.SINGLE_LEVEL.intValue();
056
057    /**
058     * Specifies search scope to be a sub tree search.
059     */
060    public static final int SCOPE_SUB = SearchScope.WHOLE_SUBTREE.intValue();
061
062    /*
063     * The above constants SCOPE_BASE, SCOPE_ONE, and SCOPE_SUB should be kept
064     * in synch with the corresponding constants defined in
065     * com.iplanet.ums.SearchControl
066     */
067
068    /**
069     * Subscribable attribute
070     */
071    public static String SUBSCRIBABLE_ATTRIBUTE = 
072        "iplanet-am-group-subscribable";
073
074    /**
075     * Unique member attribute
076     */
077    public static final String UNIQUE_MEMBER_ATTRIBUTE = "uniquemember";
078
079    // All Protected Constants used with in SDK package
080    // Sting Constants NOT Public
081    // Attributes
082    static final String STATIC_GROUP_DN_ATTRIBUTE = 
083        "iplanet-am-static-group-dn";
084
085    static final String CONTAINER_SUPPORTED_TYPES_ATTRIBUTE = 
086        "sunIdentityServerSupportedTypes";
087
088    static final String INET_DOMAIN_STATUS_ATTRIBUTE = "inetdomainstatus";
089
090    static final String SERVICE_STATUS_ATTRIBUTE = "sunRegisteredServiceName";
091
092    static final String ROLE_MANAGED_CONTAINER_DN_ATTRIBUTE = 
093        "iplanet-am-role-managed-container-dn";
094
095    static final String UNIQUE_ATTRIBUTE_LIST_ATTRIBUTE = 
096        "sunnamespaceuniqueattrs";
097
098    static final String USER_PASSWORD_ATTRIBUTE = "userpassword";
099
100    static final String USER_ENCRYPTED_PASSWORD_ATTRIBUTE = 
101        "encrypteduserpassword";
102
103    static final String REQUIRED_SERVICES_ATTR = "iplanet-am-required-services";
104
105    static final String USER_SEARCH_RETURN_ATTR = 
106        "iplanet-am-admin-console-user-return-attribute";
107
108    static final String DCT_ENABLED_ATTR = "iplanet-am-admin-console-dctree";
109
110    static final String DCT_ATTRIBUTE_LIST_ATTR = 
111        "iplanet-am-admin-console-dctree-attr-list";
112
113    static final String ADMIN_GROUPS_ENABLED_ATTR = 
114        "iplanet-am-admin-console-compliance-admin-groups";
115
116    static final String COMPLIANCE_USER_DELETION_ATTR = 
117        "iplanet-am-admin-console-compliance-user-deletion";
118
119    static final String COMPLIANCE_SPECIAL_FILTER_ATTR = 
120        "iplanet-am-admin-console-special-search-filters";
121
122    static final String ADMIN_ROLE_ATTR = "adminrole";
123
124    static final String EMAIL_ATTRIBUTE = "mail";
125
126    static final String INET_DOMAIN_STATUS_ATTR = "inetdomainstatus";
127
128    static final String DOMAIN_ADMINISTRATORS = "DomainAdministrators";
129
130    static final String DOMAIN_HELP_DESK_ADMINISTRATORS = 
131        "DomainHelpDeskAdministrators";
132
133    static final String INET_ADMIN_OBJECT_CLASS = "inetadmin";
134
135    // Pre Post Processing Impl attribute
136    static final String PRE_POST_PROCESSING_MODULES_ATTR = 
137        "iplanet-am-admin-console-pre-post-processing-modules";
138
139    // notification attribute names
140    static final String USER_CREATE_NOTIFICATION_LIST = 
141        "iplanet-am-user-create-notification-list";
142
143    static final String USER_DELETE_NOTIFICATION_LIST = 
144        "iplanet-am-user-delete-notification-list";
145
146    static final String USER_MODIFY_NOTIFICATION_LIST = 
147        "iplanet-am-user-modify-notification-list";
148
149    static final String FILTER_ATTR_NAME = "nsRoleFilter";
150
151    static final String USERID_PASSWORD_VALIDATION_CLASS = 
152        "iplanet-am-admin-console-user-password-validation-class";
153
154    static final String INVALID_USERID_CHARACTERS = 
155        "iplanet-am-admin-console-invalid-chars";
156
157    // Other Constants
158    static final String CONTAINER_DEFAULT_TEMPLATE_ROLE = 
159        "ContainerDefaultTemplateRole";
160
161    // Service Names
162    static final String ADMINISTRATION_SERVICE = 
163        "iPlanetAMAdminConsoleService";
164
165    // Properties
166    static final String CACHE_ENABLED_DISABLED_KEY = 
167        "com.iplanet.am.sdk.caching.enabled";
168
169    static final String CACHE_MAX_SIZE_KEY = "com.iplanet.am.sdk.cache.maxSize";
170
171    // Plugin interface for processing user create/delete/modify
172    static final String USER_ENTRY_PROCESSING_IMPL = 
173        "com.iplanet.am.sdk.userEntryProcessingImpl";
174
175    // COS Attribute type could default, operational, override,
176    // For policy attributes, will use "override" since user won't be
177    // able to customize them
178    // suffix for policy COSDefinition, i.e. &lt;serviceName>Policy
179    static final String POLICY_SUFFIX = "Policy";
180
181    static final String POLICY_COSATTR_TYPE = " override";
182
183    // For other attributes, user will be able to customize them
184    // so use default
185    static final String OTHER_COSATTR_TYPE = " default";
186
187    // Other constant values
188    static final int ADD_MEMBER = 1;
189
190    static final int REMOVE_MEMBER = 2;
191
192    // Constant for removing attribute
193    public static final Set REMOVE_ATTRIBUTE = new HashSet();
194}