001/* 002 * Copyright 2011-2016 UnboundID Corp. 003 * 004 * This program is free software; you can redistribute it and/or modify 005 * it under the terms of the GNU General Public License (GPLv2 only) 006 * or the terms of the GNU Lesser General Public License (LGPLv2.1 only) 007 * as published by the Free Software Foundation. 008 * 009 * This program is distributed in the hope that it will be useful, 010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 012 * GNU General Public License for more details. 013 * 014 * You should have received a copy of the GNU General Public License 015 * along with this program; if not, see <http://www.gnu.org/licenses>. 016 */ 017 018package com.unboundid.scim.sdk; 019 020 021 022/** 023 * This class defines a number of constants used in Simple Cloud Identity 024 * Management (SCIM) interfaces. 025 */ 026public final class SCIMConstants 027{ 028 /** 029 * The SCIM name for the schemas attribute. 030 */ 031 public static final String SCHEMAS_ATTRIBUTE_NAME = "schemas"; 032 /** 033 * The namespace label associated with the default schema. 034 */ 035 public static final String DEFAULT_SCHEMA_PREFIX = "scim"; 036 037 /** 038 * Prevent this class from being instantiated. 039 */ 040 private SCIMConstants() 041 { 042 // No implementation is required. 043 } 044 045 046 047 /** 048 * The URI of the SCIM Core schema. 049 */ 050 public static final String SCHEMA_URI_CORE = 051 "urn:scim:schemas:core:1.0"; 052 053 /** 054 * The URI of the SCIM Enterprise schema extension. 055 */ 056 public static final String SCHEMA_URI_ENTERPRISE_EXTENSION = 057 "urn:scim:schemas:extension:enterprise:1.0"; 058 059 /** 060 * The resource name for the Service Provider Configuration in the core 061 * schema. 062 */ 063 public static final String RESOURCE_NAME_SERVICE_PROVIDER_CONFIG = 064 "ServiceProviderConfig"; 065 066 /** 067 * The resource name for the Group resource in the core schema. 068 */ 069 public static final String RESOURCE_NAME_GROUP = "Group"; 070 071 /** 072 * The resource name for the User resource in the core schema. 073 */ 074 public static final String RESOURCE_NAME_USER = "User"; 075 076 /** 077 * The resource name for the Schema resource in the core schema. 078 */ 079 public static final String RESOURCE_NAME_SCHEMA = "Schema"; 080 081 /** 082 * The end point for the Service Provider Configuration in the core 083 * schema. 084 */ 085 public static final String RESOURCE_ENDPOINT_SERVICE_PROVIDER_CONFIG = 086 "ServiceProviderConfigs"; 087 088 /** 089 * The end point for Groups in the REST protocol. 090 */ 091 public static final String RESOURCE_ENDPOINT_GROUPS = "Groups"; 092 093 /** 094 * The end point for Users in the REST protocol. 095 */ 096 public static final String RESOURCE_ENDPOINT_USERS = "Users"; 097 098 /** 099 * The end point for Schemas in the REST protocol. 100 */ 101 public static final String RESOURCE_ENDPOINT_SCHEMAS = "Schemas"; 102 103 /** 104 * The HTTP query parameter used in a URI to select specific SCIM attributes. 105 */ 106 public static final String QUERY_PARAMETER_ATTRIBUTES = "attributes"; 107 108 /** 109 * The HTTP query parameter used in a URI to provide a filter expression. 110 */ 111 public static final String QUERY_PARAMETER_FILTER = "filter"; 112 113 /** 114 * The HTTP query parameter used in a URI to identify the search base entry 115 * when performing an LDAP search. 116 */ 117 public static final String QUERY_PARAMETER_BASE_ID = "base-id"; 118 119 /** 120 * The HTTP query parameter used in a URI to set the search scope when 121 * performing an LDAP search. 122 */ 123 public static final String QUERY_PARAMETER_SCOPE = "scope"; 124 125 /** 126 * The HTTP query parameter used in a URI to sort by a SCIM attribute. 127 */ 128 public static final String QUERY_PARAMETER_SORT_BY = "sortBy"; 129 130 /** 131 * The HTTP query parameter used in a URI to specify the sort order. 132 */ 133 public static final String QUERY_PARAMETER_SORT_ORDER = "sortOrder"; 134 135 /** 136 * The HTTP query parameter used in a URI to specify the starting index 137 * for page results. 138 */ 139 public static final String QUERY_PARAMETER_PAGE_START_INDEX = "startIndex"; 140 141 /** 142 * The HTTP query parameter used in a URI to specify the maximum size of 143 * a page of results. 144 */ 145 public static final String QUERY_PARAMETER_PAGE_SIZE = "count"; 146 147 /** 148 * The name of the HTTP Origin field. 149 */ 150 public static final String HEADER_NAME_ORIGIN = 151 "Origin"; 152 153 /** 154 * The system property to allow implicit schema checking. 155 * This is NOT supported but is provided for migration purposes only. 156 */ 157 public static final String IMPLICIT_SCHEMA_CHECKING_PROPERTY = 158 "com.unboundid.scim.implicit-schema-checking"; 159 160 /** 161 * The character that separates the schema URI from the basic attribute name 162 * in a fully qualified attribute name. e.g. urn:scim:schemas:core:1.0:name 163 */ 164 public static final char SEPARATOR_CHAR_QUALIFIED_ATTRIBUTE = ':'; 165}