diff options
author | Joe George <joe@zeroc.com> | 2015-03-03 17:30:50 -0500 |
---|---|---|
committer | Joe George <joe@zeroc.com> | 2015-05-12 11:41:55 -0400 |
commit | d35bb9f5c19e34aee31f83d445695a8186ef675e (patch) | |
tree | d5324eaf44f5f9776495537c51653f50a66a7237 /java/src/IceSSL/Plugin.java | |
download | ice-d35bb9f5c19e34aee31f83d445695a8186ef675e.tar.bz2 ice-d35bb9f5c19e34aee31f83d445695a8186ef675e.tar.xz ice-d35bb9f5c19e34aee31f83d445695a8186ef675e.zip |
Ice 3.4.2 Source Distributionv3.4.2
Diffstat (limited to 'java/src/IceSSL/Plugin.java')
-rw-r--r-- | java/src/IceSSL/Plugin.java | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/java/src/IceSSL/Plugin.java b/java/src/IceSSL/Plugin.java new file mode 100644 index 00000000000..56456baf528 --- /dev/null +++ b/java/src/IceSSL/Plugin.java @@ -0,0 +1,94 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2011 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +package IceSSL; + +/** + * Interface that allows applications to interact with the IceSSL plug-in. + **/ +public interface Plugin extends Ice.Plugin +{ + /** + * Establishes the SSL context. The context must be established before + * plug-in is initialized. Therefore, the application must set + * the property <code>Ice.InitPlugins</code> to zero, call + * <code>setContext</code> to set the context, and finally + * invoke {@link PluginManager#initializePlugins}. + * <p> + * If an application supplies its own SSL context, the + * plug-in skips its normal property-based configuration. + * + * @param context The SSL context for the plug-in. + **/ + void setContext(javax.net.ssl.SSLContext context); + + /** + * Returns the SSL context. Use caution when modifying the returned + * value: changes made to this value do not affect existing connections. + * + * @return The SSL context for the plug-in. + **/ + javax.net.ssl.SSLContext getContext(); + + /** + * Establishes the certificate verifier. This must be + * done before any connections are established. + * + * @param verifier The certificate verifier. + **/ + void setCertificateVerifier(CertificateVerifier verifier); + + /** + * Returns the certificate verifier. + * + * @return The certificate verifier (<code>null</code> if not set). + **/ + CertificateVerifier getCertificateVerifier(); + + /** + * Establishes the password callback. This must be + * done before the plug-in is initialized. + * + * @param callback The password callback. + **/ + void setPasswordCallback(PasswordCallback callback); + + /** + * Returns the password callback. + * + * @return The password callback (<code>null</code> if not set). + **/ + PasswordCallback getPasswordCallback(); + + /** + * Supplies an input stream for the keystore. Calling this method + * causes IceSSL to ignore the <code>IceSSL.Keystore</code> property. + * + * @param stream The input stream for the keystore. + **/ + void setKeystoreStream(java.io.InputStream stream); + + /** + * Supplies an input stream for the truststore. Calling this method + * causes IceSSL to ignore the <code>IceSSL.Truststore</code> property. It is + * legal to supply the same input stream as the one for {@link #setKeystoreStream}, + * in which case IceSSL uses the certificates contained in the keystore. + * + * @param stream The input stream for the truststore. + **/ + void setTruststoreStream(java.io.InputStream stream); + + /** + * Adds an input stream for the random number seed. You may call + * this method multiple times if necessary. + * + * @param stream The input stream for the random number seed. + **/ + void addSeedStream(java.io.InputStream stream); +} |