content: /*
   * 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.chemistry.opencmis.commons;
  
  /**
   * Session parameter constants.
   * 
   * <table class="chemistry-table">
   * <caption>Session Parameters</caption>
   * <tr>
   * <th>Constant</th>
   * <th>Description</th>
   * <th>Binding</th>
   * <th>Value</th>
   * <th>Required</th>
   * <th>Default</th>
   * </tr>
   * <tr>
   * <td colspan="6"><b>General settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #BINDING_TYPE}</td>
   * <td>Defines the binding to use for the session</td>
   * <td>all</td>
   * <td>"atompub", "webservices", "browser", "local", "custom"</td>
   * <td>yes</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #BINDING_SPI_CLASS}</td>
   * <td>Binding implementation class</td>
   * <td>all</td>
   * <td>class name</td>
   * <td>Custom binding: yes<br>
   * all other binding: no</td>
   * <td>depends on {@link #BINDING_TYPE}</td>
   * </tr>
   * <tr>
   * <td>{@link #REPOSITORY_ID}</td>
   * <td>Repository ID</td>
   * <td>all</td>
   * <td>repository id</td>
   * <td>SessionFactory.createSession(): yes<br>
   * SessionFactory.getRepositories(): no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #LOCALE_ISO639_LANGUAGE}</td>
   * <td>Language code sent to server</td>
   * <td>all</td>
   * <td>ISO 639 code</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #LOCALE_ISO3166_COUNTRY}</td>
   * <td>Country code sent to server if language code is set</td>
   * <td>all</td>
   * <td>ISO 3166 code</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <tr>
   * <td>{@link #OBJECT_FACTORY_CLASS}</td>
   * <td>Object factory implementation class</td>
   * <td>all</td>
   * <td>class name</td>
   * <td>no</td>
   * <td>org.apache.chemistry.opencmis.client.runtime.repository.ObjectFactoryImpl
   * </td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Authentication settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #USER}</td>
   * <td>User name (used by the standard authentication provider)</td>
   * <td>all</td>
   * <td>user name</td>
   * <td>depends on the server</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #PASSWORD}</td>
   * <td>Password (used by the standard authentication provider)</td>
   * <td>all</td>
   * <td>password</td>
   * <td>depends on the server</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #AUTHENTICATION_PROVIDER_CLASS}</td>
   * <td>Authentication Provider class</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>class name</td>
   * <td>no</td>
   * <td>org.apache.chemistry.opencmis.client.bindings.spi.
   * StandardAuthenticationProvider</td>
   * </tr>
   * <tr>
   * <td>{@link #AUTH_HTTP_BASIC}</td>
   * <td>Switch to turn HTTP basic authentication on or off</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>depends on {@link #BINDING_TYPE}</td>
   * </tr>
   * <tr>
   * <td>{@link #AUTH_HTTP_BASIC_CHARSET}</td>
   * <td>Charset to encode HTTP basic authentication username and password</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>character set name</td>
   * <td>no</td>
   * <td>UTF-8</td>
   * </tr>
   * <tr>
   * <td>{@link #AUTH_SOAP_USERNAMETOKEN}</td>
   * <td>Switch to turn UsernameTokens on or off</td>
   * <td>Web Services</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>true</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>HTTP and network settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #HTTP_INVOKER_CLASS}</td>
   * <td>HTTP invoker class</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>class name</td>
   * <td>no</td>
   * <td>org.apache.chemistry.opencmis.client.bindings.spi.http.DefaultHttpInvoker
   * </td>
   * </tr>
   * <tr>
   * <td>{@link #COMPRESSION}</td>
   * <td>Switch to turn HTTP response compression on or off</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>false</td>
   * </tr>
   * <tr>
   * <td>{@link #CLIENT_COMPRESSION}</td>
   * <td>Switch to turn HTTP request compression on or off</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>false</td>
   * </tr>
   * <tr>
   * <td>{@link #COOKIES}</td>
   * <td>Switch to turn cookie support on or off</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>false</td>
   * </tr>
   * <tr>
   * <td>{@link #HEADER}</td>
   * <td>HTTP header</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>header header</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #USER_AGENT}</td>
   * <td>User agent header</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>user agent string</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #PROXY_USER}</td>
   * <td>Proxy user (used by the standard authentication provider)</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>user name</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #PROXY_PASSWORD}</td>
   * <td>Proxy password (used by the standard authentication provider)</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>password</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #CSRF_HEADER}</td>
   * <td>CSRF Header</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>header name</td>
   * <td>no</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #CONNECT_TIMEOUT}</td>
   * <td>HTTP connect timeout</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>time in milliseconds</td>
   * <td>no</td>
   * <td>JVM default</td>
   * </tr>
   * <tr>
   * <td>{@link #READ_TIMEOUT}</td>
   * <td>HTTP read timeout</td>
   * <td>AtomPub, Web Services, Browser</td>
   * <td>time in milliseconds</td>
   * <td>no</td>
   * <td>JVM default</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Cache settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_CLASS}</td>
   * <td>Cache implementation class</td>
   * <td>all</td>
   * <td>class name</td>
   * <td>no</td>
   * <td>org.apache.chemistry.opencmis.client.runtime.cache.CacheImpl</td>
   * </tr>
   * <tr>
   * <td>{@link #TYPE_DEFINITION_CACHE_CLASS}</td>
   * <td>Type definition cache implementation class</td>
   * <td>all</td>
   * <td>class name</td>
   * <td>no</td>
   * <td>
   * org.apache.chemistry.opencmis.client.bindings.impl.TypeDefinitionCacheImpl</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_SIZE_OBJECTS}</td>
   * <td>Object cache size</td>
   * <td>all</td>
   * <td>number of object entries</td>
   * <td>no</td>
   * <td>1000</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_TTL_OBJECTS}</td>
   * <td>Object cache time-to-live</td>
   * <td>all</td>
   * <td>time in milliseconds</td>
   * <td>no</td>
   * <td>7200000 (2 hours)</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_SIZE_PATHTOID}</td>
   * <td>Path-to-id cache size</td>
   * <td>all</td>
   * <td>number of path to object link entries</td>
   * <td>no</td>
   * <td>1000</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_TTL_PATHTOID}</td>
   * <td>Path-to-id cache time-to-live</td>
   * <td>all</td>
   * <td>time in milliseconds</td>
   * <td>no</td>
   * <td>180000 (30 minutes)</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_PATH_OMIT}</td>
   * <td>Turn off path-to-id cache</td>
   * <td>all</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>false</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_SIZE_REPOSITORIES}</td>
   * <td>Repository info cache size</td>
   * <td>all</td>
   * <td>number of repository info entries</td>
   * <td>no</td>
   * <td>10</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_SIZE_TYPES}</td>
   * <td>Type definition cache size</td>
   * <td>all</td>
   * <td>number of type definition entries</td>
   * <td>no</td>
   * <td>100</td>
   * </tr>
   * <tr>
   * <td>{@link #CACHE_SIZE_LINKS}</td>
   * <td>AtomPub link cache size</td>
   * <td>AtomPub</td>
   * <td>number of link entries</td>
   * <td>no</td>
   * <td>400</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>AtomPub Binding settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #ATOMPUB_URL}</td>
   * <td>AtomPub service document URL</td>
   * <td>AtomPub</td>
   * <td>URL</td>
   * <td>yes</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Web Services Binding settings</b></td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_REPOSITORY_SERVICE}</td>
   * <td>Repository Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_REPOSITORY_SERVICE} or
   * {@link #WEBSERVICES_REPOSITORY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_REPOSITORY_SERVICE_ENDPOINT}</td>
   * <td>Repository Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_REPOSITORY_SERVICE} or
   * {@link #WEBSERVICES_REPOSITORY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_NAVIGATION_SERVICE}</td>
   * <td>Navigation Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_NAVIGATION_SERVICE} or
   * {@link #WEBSERVICES_NAVIGATION_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_NAVIGATION_SERVICE_ENDPOINT}</td>
   * <td>Navigation Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_NAVIGATION_SERVICE} or
   * {@link #WEBSERVICES_NAVIGATION_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_OBJECT_SERVICE}</td>
   * <td>Object Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_OBJECT_SERVICE} or
   * {@link #WEBSERVICES_OBJECT_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_OBJECT_SERVICE_ENDPOINT}</td>
   * <td>Object Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_OBJECT_SERVICE} or
   * {@link #WEBSERVICES_OBJECT_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_VERSIONING_SERVICE}</td>
   * <td>Versioning Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_VERSIONING_SERVICE} or
   * {@link #WEBSERVICES_VERSIONING_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_VERSIONING_SERVICE_ENDPOINT}</td>
   * <td>Versioning Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_VERSIONING_SERVICE} or
   * {@link #WEBSERVICES_VERSIONING_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_DISCOVERY_SERVICE}</td>
   * <td>Discovery Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_DISCOVERY_SERVICE} or
   * {@link #WEBSERVICES_DISCOVERY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_DISCOVERY_SERVICE_ENDPOINT}</td>
   * <td>Discovery Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_DISCOVERY_SERVICE} or
   * {@link #WEBSERVICES_DISCOVERY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_RELATIONSHIP_SERVICE}</td>
   * <td>Relationship Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_RELATIONSHIP_SERVICE} or
   * {@link #WEBSERVICES_RELATIONSHIP_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_RELATIONSHIP_SERVICE_ENDPOINT}</td>
   * <td>Relationship Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_DISCOVERY_SERVICE} or
   * {@link #WEBSERVICES_RELATIONSHIP_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_MULTIFILING_SERVICE}</td>
   * <td>Multifiling Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_MULTIFILING_SERVICE} or
   * {@link #WEBSERVICES_MULTIFILING_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_MULTIFILING_SERVICE_ENDPOINT}</td>
   * <td>Multifiling Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_MULTIFILING_SERVICE} or
   * {@link #WEBSERVICES_MULTIFILING_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_POLICY_SERVICE}</td>
   * <td>Policy Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_POLICY_SERVICE} or
   * {@link #WEBSERVICES_POLICY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_POLICY_SERVICE_ENDPOINT}</td>
   * <td>Policy Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_POLICY_SERVICE} or
   * {@link #WEBSERVICES_POLICY_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_ACL_SERVICE}</td>
   * <td>ACL Service WSDL URL</td>
   * <td>Web Services</td>
   * <td>WSDL URL</td>
   * <td>either {@link #WEBSERVICES_ACL_SERVICE} or
   * {@link #WEBSERVICES_ACL_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_ACL_SERVICE_ENDPOINT}</td>
   * <td>ACL Service endpoint URL</td>
   * <td>Web Services</td>
   * <td>Endpoint URL</td>
   * <td>either {@link #WEBSERVICES_ACL_SERVICE} or
   * {@link #WEBSERVICES_ACL_SERVICE_ENDPOINT} must be set</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_MEMORY_THRESHOLD}</td>
   * <td>Documents smaller than the threshold are kept in main memory, larger
   * documents are written to a temporary file</td>
   * <td>Web Services</td>
   * <td>size in bytes</td>
   * <td>no</td>
   * <td>4194304 (4MB)</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_REPSONSE_MEMORY_THRESHOLD}</td>
   * <td>Web Service responses (XML SOAP parts) smaller than the threshold are
   * kept in main memory, larger responses are written to a temporary file</td>
   * <td>Web Services</td>
   * <td>size in bytes</td>
   * <td>no</td>
   * <td>(JAX-WS implementation default)</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_TEMP_DIRECTORY}</td>
   * <td>Sets the path for temp files to an existing directory</td>
   * <td>Web Services</td>
   * <td>path to temp directory</td>
   * <td>no</td>
   * <td>(JAX-WS implementation default)</td>
   * </tr>
   * <tr>
   * <td>{@link #WEBSERVICES_TEMP_ENCRYPT}</td>
   * <td>Defines whether temp files should be encrypted or not</td>
   * <td>Web Services</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Browser Binding</b></td>
   * </tr>
   * <tr>
   * <td>{@link #BROWSER_URL}</td>
   * <td>Browser binding service document URL</td>
   * <td>Browser</td>
   * <td>URL</td>
   * <td>yes</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td>{@link #BROWSER_SUCCINCT}</td>
   * <td>Defines if properties should be sent in the succinct format</td>
   * <td>Browser</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"true"</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Local Binding</b></td>
   * </tr>
   * <tr>
   * <td>{@link #LOCAL_FACTORY}</td>
   * <td>Class name of the local service factory (if client and server reside in
   * the same JVM)</td>
   * <td>Local</td>
   * <td>class name</td>
   * <td>yes</td>
   * <td>-</td>
   * </tr>
   * <tr>
   * <td colspan="6"><b>Workarounds</b></td>
   * </tr>
   * <tr>
   * <td>{@link #INCLUDE_OBJECTID_URL_PARAM_ON_CHECKOUT}</td>
   * <td>Defines if the object ID should be added to the check out URL<br>
   * (Workaround for SharePoint 2010)</td>
   * <td>AtomPub</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * <tr>
   * <td>{@link #INCLUDE_OBJECTID_URL_PARAM_ON_MOVE}</td>
   * <td>Defines if the object ID should be added to the move URL<br>
   * (Workaround for SharePoint 2010)</td>
   * <td>AtomPub</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * <tr>
   * <td>{@link #OMIT_CHANGE_TOKENS}</td>
   * <td>Defines if the change token should be omitted for updating calls<br>
   * (Workaround for SharePoint 2010 and SharePoint 2013)</td>
   * <td>all</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * <tr>
   * <td>{@link #ADD_NAME_ON_CHECK_IN}</td>
   * <td>Defines if the document name should be added to the properties on check
   * in if no properties are updated<br>
   * (Workaround for SharePoint 2010 and SharePoint 2013)</td>
   * <td>AtomPub</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * <tr>
   * <td>{@link #LATEST_VERSION_WITH_VERSION_SERIES_ID}</td>
   * <td>Defines if getObjectOfLatestVersion should use the version series ID
   * instead of the object ID<br>
   * (Workaround for SharePoint 2010 and SharePoint 2013)</td>
   * <td>AtomPub</td>
   * <td>"true", "false"</td>
   * <td>no</td>
   * <td>"false"</td>
   * </tr>
   * </table>
   */
  public final class SessionParameter {
  
      // ---- general parameter ----
      public static final String USER = "org.apache.chemistry.opencmis.user";
      public static final String PASSWORD = "org.apache.chemistry.opencmis.password";
  
      // --- binding parameter ----
      /** Predefined binding types (see {@code BindingType}). */
      public static final String BINDING_TYPE = "org.apache.chemistry.opencmis.binding.spi.type";
  
      /** Class name of the binding class. */
      public static final String BINDING_SPI_CLASS = "org.apache.chemistry.opencmis.binding.spi.classname";
  
      /**
       * Forces OpenCMIS to use the specified CMIS version and ignore the CMIS
       * version reported by the repository.
       */
      public static final String FORCE_CMIS_VERSION = "org.apache.chemistry.opencmis.cmisversion";
  
      /** URL of the AtomPub service document. */
      public static final String ATOMPUB_URL = "org.apache.chemistry.opencmis.binding.atompub.url";
  
      /** WSDL URLs for Web Services. */
      public static final String WEBSERVICES_REPOSITORY_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.RepositoryService";
      public static final String WEBSERVICES_NAVIGATION_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.NavigationService";
      public static final String WEBSERVICES_OBJECT_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.ObjectService";
      public static final String WEBSERVICES_VERSIONING_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.VersioningService";
      public static final String WEBSERVICES_DISCOVERY_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.DiscoveryService";
      public static final String WEBSERVICES_RELATIONSHIP_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.RelationshipService";
      public static final String WEBSERVICES_MULTIFILING_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.MultiFilingService";
      public static final String WEBSERVICES_POLICY_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.PolicyService";
      public static final String WEBSERVICES_ACL_SERVICE = "org.apache.chemistry.opencmis.binding.webservices.ACLService";
  
      /** Endpoint URLs for Web Services. */
      public static final String WEBSERVICES_REPOSITORY_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.RepositoryService.endpoint";
      public static final String WEBSERVICES_NAVIGATION_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.NavigationService.endpoint";
      public static final String WEBSERVICES_OBJECT_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.ObjectService.endpoint";
      public static final String WEBSERVICES_VERSIONING_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.VersioningService.endpoint";
      public static final String WEBSERVICES_DISCOVERY_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.DiscoveryService.endpoint";
      public static final String WEBSERVICES_RELATIONSHIP_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.RelationshipService.endpoint";
      public static final String WEBSERVICES_MULTIFILING_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.MultiFilingService.endpoint";
      public static final String WEBSERVICES_POLICY_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.PolicyService.endpoint";
      public static final String WEBSERVICES_ACL_SERVICE_ENDPOINT = "org.apache.chemistry.opencmis.binding.webservices.ACLService.endpoint";
  
      public static final String WEBSERVICES_MEMORY_THRESHOLD = "org.apache.chemistry.opencmis.binding.webservices.memoryThreshold";
      public static final String WEBSERVICES_REPSONSE_MEMORY_THRESHOLD = "org.apache.chemistry.opencmis.binding.webservices.responseMemoryThreshold";
  
      public static final String WEBSERVICES_TEMP_DIRECTORY = "org.apache.chemistry.opencmis.binding.webservices.tempDirectory";
      public static final String WEBSERVICES_TEMP_ENCRYPT = "org.apache.chemistry.opencmis.binding.webservices.tempEncrypt";
  
      public static final String WEBSERVICES_PORT_PROVIDER_CLASS = "org.apache.chemistry.opencmis.binding.webservices.portprovider.classname";
  
      public static final String WEBSERVICES_JAXWS_IMPL = "org.apache.chemistry.opencmis.binding.webservices.jaxws.impl";
  
      /** URL of the Browser Binding entry point. */
      public static final String BROWSER_URL = "org.apache.chemistry.opencmis.binding.browser.url";
      public static final String BROWSER_SUCCINCT = "org.apache.chemistry.opencmis.binding.browser.succinct";
      public static final String BROWSER_DATETIME_FORMAT = "org.apache.chemistry.opencmis.binding.browser.datetimeformat";
  
      /** Factory class name for the local binding. */
      public static final String LOCAL_FACTORY = "org.apache.chemistry.opencmis.binding.local.classname";
  
      // --- authentication ---
  
      /** Class name of the authentication provider. */
      public static final String AUTHENTICATION_PROVIDER_CLASS = "org.apache.chemistry.opencmis.binding.auth.classname";
  
      /**
       * Toggle for HTTP basic authentication. Evaluated by the standard
       * authentication provider.
       */
      public static final String AUTH_HTTP_BASIC = "org.apache.chemistry.opencmis.binding.auth.http.basic";
      public static final String AUTH_HTTP_BASIC_CHARSET = "org.apache.chemistry.opencmis.binding.auth.http.basic.charset";
  
      /**
       * Toggle for OAuth Bearer token authentication. Evaluated by the standard
       * authentication provider.
       */
      public static final String AUTH_OAUTH_BEARER = "org.apache.chemistry.opencmis.binding.auth.http.oauth.bearer";
  
      /**
       * Toggle for WS-Security UsernameToken authentication. Evaluated by the
       * standard authentication provider.
       */
      public static final String AUTH_SOAP_USERNAMETOKEN = "org.apache.chemistry.opencmis.binding.auth.soap.usernametoken";
  
      // --- OAuth ---
  
      public static final String OAUTH_CLIENT_ID = "org.apache.chemistry.opencmis.oauth.clientId";
      public static final String OAUTH_CLIENT_SECRET = "org.apache.chemistry.opencmis.oauth.clientSecret";
      public static final String OAUTH_CODE = "org.apache.chemistry.opencmis.oauth.code";
      public static final String OAUTH_TOKEN_ENDPOINT = "org.apache.chemistry.opencmis.oauth.tokenEndpoint";
      public static final String OAUTH_REDIRECT_URI = "org.apache.chemistry.opencmis.oauth.redirectUri";
  
      public static final String OAUTH_ACCESS_TOKEN = "org.apache.chemistry.opencmis.oauth.accessToken";
      public static final String OAUTH_REFRESH_TOKEN = "org.apache.chemistry.opencmis.oauth.refreshToken";
      public static final String OAUTH_EXPIRATION_TIMESTAMP = "org.apache.chemistry.opencmis.oauth.expirationTimestamp";
      public static final String OAUTH_DEFAULT_TOKEN_LIFETIME = "org.apache.chemistry.opencmis.oauth.defaultTokenLifetime";
  
      // --- client certificates ---
  
      public static final String CLIENT_CERT_KEYFILE = "org.apache.chemistry.opencmis.clientcerts.keyfile";
      public static final String CLIENT_CERT_PASSPHRASE = "org.apache.chemistry.opencmis.clientcerts.passphrase";
  
      // --- connection ---
  
      public static final String HTTP_INVOKER_CLASS = "org.apache.chemistry.opencmis.binding.httpinvoker.classname";
  
      public static final String COMPRESSION = "org.apache.chemistry.opencmis.binding.compression";
      public static final String CLIENT_COMPRESSION = "org.apache.chemistry.opencmis.binding.clientcompression";
  
      public static final String COOKIES = "org.apache.chemistry.opencmis.binding.cookies";
  
      public static final String HEADER = "org.apache.chemistry.opencmis.binding.header";
  
      public static final String CONNECT_TIMEOUT = "org.apache.chemistry.opencmis.binding.connecttimeout";
      public static final String READ_TIMEOUT = "org.apache.chemistry.opencmis.binding.readtimeout";
  
      public static final String PROXY_USER = "org.apache.chemistry.opencmis.binding.proxyuser";
      public static final String PROXY_PASSWORD = "org.apache.chemistry.opencmis.binding.proxypassword";
  
      public static final String CSRF_HEADER = "org.apache.chemistry.opencmis.binding.csrfheader";
  
      public static final String USER_AGENT = "org.apache.chemistry.opencmis.binding.useragent";
  
      // --- cache ---
  
      public static final String CACHE_SIZE_OBJECTS = "org.apache.chemistry.opencmis.cache.objects.size";
      public static final String CACHE_TTL_OBJECTS = "org.apache.chemistry.opencmis.cache.objects.ttl";
      public static final String CACHE_SIZE_PATHTOID = "org.apache.chemistry.opencmis.cache.pathtoid.size";
      public static final String CACHE_TTL_PATHTOID = "org.apache.chemistry.opencmis.cache.pathtoid.ttl";
      public static final String CACHE_PATH_OMIT = "org.apache.chemistry.opencmis.cache.path.omit";
  
      public static final String CACHE_SIZE_REPOSITORIES = "org.apache.chemistry.opencmis.binding.cache.repositories.size";
      public static final String CACHE_SIZE_TYPES = "org.apache.chemistry.opencmis.binding.cache.types.size";
      public static final String CACHE_SIZE_LINKS = "org.apache.chemistry.opencmis.binding.cache.links.size";
  
      // --- session control ---
  
      public static final String LOCALE_ISO639_LANGUAGE = "org.apache.chemistry.opencmis.locale.iso639";
      public static final String LOCALE_ISO3166_COUNTRY = "org.apache.chemistry.opencmis.locale.iso3166";
      public static final String LOCALE_VARIANT = "org.apache.chemistry.opencmis.locale.variant";
  
      public static final String OBJECT_FACTORY_CLASS = "org.apache.chemistry.opencmis.objectfactory.classname";
      public static final String CACHE_CLASS = "org.apache.chemistry.opencmis.cache.classname";
      public static final String TYPE_DEFINITION_CACHE_CLASS = "org.apache.chemistry.opencmis.cache.types.classname";
  
      public static final String REPOSITORY_ID = "org.apache.chemistry.opencmis.session.repository.id";
  
      // --- workarounds ---
  
      public static final String INCLUDE_OBJECTID_URL_PARAM_ON_CHECKOUT = "org.apache.chemistry.opencmis.workaround.includeObjectIdOnCheckout";
      public static final String INCLUDE_OBJECTID_URL_PARAM_ON_MOVE = "org.apache.chemistry.opencmis.workaround.includeObjectIdOnMove";
      public static final String OMIT_CHANGE_TOKENS = "org.apache.chemistry.opencmis.workaround.omitChangeTokens";
      public static final String ADD_NAME_ON_CHECK_IN = "org.apache.chemistry.opencmis.workaround.addNameOnCheckIn";
      public static final String LATEST_VERSION_WITH_VERSION_SERIES_ID = "org.apache.chemistry.opencmis.workaround.getLatestVersionWithVersionSeriesId";
  
      // utility class
      private SessionParameter() {
      }
  }
  