Path: blob/master/src/java.naming/share/classes/module-info.java
41145 views
/*1* Copyright (c) 2014, 2020, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation. Oracle designates this7* particular file as subject to the "Classpath" exception as provided8* by Oracle in the LICENSE file that accompanied this code.9*10* This code is distributed in the hope that it will be useful, but WITHOUT11* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or12* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License13* version 2 for more details (a copy is included in the LICENSE file that14* accompanied this code).15*16* You should have received a copy of the GNU General Public License version17* 2 along with this work; if not, write to the Free Software Foundation,18* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.19*20* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA21* or visit www.oracle.com if you need additional information or have any22* questions.23*/2425/**26* Defines the Java Naming and Directory Interface (JNDI) API.27* <p>28* Common standard JNDI environment properties that may be supported29* by JNDI providers are defined and documented in30* {@link javax.naming.Context}. Specific JNDI provider implementations31* may also support other environment or system properties, which are specific32* to their implementation.33*34* @implNote35* The following implementation specific environment properties are supported by the36* default LDAP Naming Service Provider implementation in the JDK:37* <ul>38* <li>{@code com.sun.jndi.ldap.connect.timeout}:39* <br>The value of this property is the string representation40* of an integer representing the connection timeout in41* milliseconds. If the LDAP provider cannot establish a42* connection within that period, it aborts the connection attempt.43* The integer should be greater than zero. An integer less than44* or equal to zero means to use the network protocol's (i.e., TCP's)45* timeout value.46* <br> If this property is not specified, the default is to wait47* for the connection to be established or until the underlying48* network times out.49* </li>50* <li>{@code com.sun.jndi.ldap.read.timeout}:51* <br>The value of this property is the string representation52* of an integer representing the read timeout in milliseconds53* for LDAP operations. If the LDAP provider cannot get a LDAP54* response within that period, it aborts the read attempt. The55* integer should be greater than zero. An integer less than or56* equal to zero means no read timeout is specified which is equivalent57* to waiting for the response infinitely until it is received.58* <br>If this property is not specified, the default is to wait59* for the response until it is received.60* </li>61* <li>{@code com.sun.jndi.ldap.tls.cbtype}:62* <br>The value of this property is the string representing the TLS63* Channel Binding type required for an LDAP connection over SSL/TLS.64* Possible value is :65* <ul>66* <li>"tls-server-end-point" - Channel Binding data is created on67* the basis of the TLS server certificate.68* </li>69* </ul>70* <br>"tls-unique" TLS Channel Binding type is specified in RFC-592971* but not supported.72* <br>If this property is not specified, the client does not send73* channel binding information to the server.74* </li>75* </ul>76* <p>The following implementation specific system properties are supported by the77* default LDAP Naming Service Provider implementation in the JDK:78* <ul>79* <li>{@systemProperty com.sun.jndi.ldap.object.trustSerialData}:80* <br>The value of this system property is the string representation of a boolean value81* which allows to control the deserialization of java objects from the 'javaSerializedData'82* LDAP attribute. To prevent the deserialization of java objects from the 'javaSerializedData'83* attribute, the system property value can be set to 'false'.84* <br>If the property is not specified then the deserialization of java objects85* from the 'javaSerializedData' attribute is allowed.86* </li>87* <li>{@systemProperty jdk.jndi.object.factoriesFilter}:88* <br>The value of this system property defines a filter used by89* the JNDI runtime implementation to control the set of object factory classes which will90* be allowed to instantiate objects from object references returned by naming/directory systems.91* The factory class named by the reference instance will be matched against this filter.92* The filter property supports pattern-based filter syntax with the same format as93* {@link java.io.ObjectInputFilter.Config#createFilter(String) jdk.serialFilter}.94* This property can also be specified as a {@linkplain java.security.Security security property}.95* This property is also supported by the <a href="{@docRoot}/jdk.naming.rmi/module-summary.html">default JNDI96* RMI Provider</a>.97* <br>The default value allows any object factory class specified by the reference98* instance to recreate the referenced object.99* </li>100* </ul>101* <p>Other providers may define additional properties in their module description:102* <ul>103* <li><a href="{@docRoot}/jdk.naming.dns/module-summary.html">DNS Naming Provider</a></li>104* <li><a href="{@docRoot}/jdk.naming.rmi/module-summary.html">RMI Naming Provider</a></li>105* </ul>106* @provides javax.naming.ldap.spi.LdapDnsProvider107*108* @uses javax.naming.ldap.spi.LdapDnsProvider109*110* @moduleGraph111* @since 9112*/113module java.naming {114requires java.security.sasl;115116exports javax.naming;117exports javax.naming.directory;118exports javax.naming.event;119exports javax.naming.ldap;120exports javax.naming.spi;121exports javax.naming.ldap.spi;122123exports com.sun.jndi.toolkit.ctx to124jdk.naming.dns;125exports com.sun.jndi.toolkit.url to126jdk.naming.dns,127jdk.naming.rmi;128129uses javax.naming.ldap.StartTlsResponse;130uses javax.naming.spi.InitialContextFactory;131uses javax.naming.ldap.spi.LdapDnsProvider;132133provides java.security.Provider with134sun.security.provider.certpath.ldap.JdkLDAP;135}136137138