com.netscape.cms.publish.publishers
Class OCSPPublisher

java.lang.Object
  extended by com.netscape.cms.publish.publishers.OCSPPublisher
All Implemented Interfaces:
IExtendedPluginInfo, ILdapPlugin, ILdapPublisher

public class OCSPPublisher
extends java.lang.Object
implements ILdapPublisher, IExtendedPluginInfo

This publisher writes certificate and CRL into a directory.

Version:
$Revision: 1211 $, $Date: 2010-08-18 10:15:37 -0700 (Wed, 18 Aug 2010) $

Field Summary
 
Fields inherited from interface com.netscape.certsrv.publish.ILdapPublisher
PROP_ENABLE, PROP_IMPLNAME, PROP_PREDICATE
 
Fields inherited from interface com.netscape.certsrv.base.IExtendedPluginInfo
HELP_TEXT, HELP_TOKEN
 
Constructor Summary
OCSPPublisher()
           
 
Method Summary
protected  java.net.Socket Connect(java.lang.String host, boolean secure, com.netscape.cmsutil.http.JssSSLSocketFactory factory)
           
 IConfigStore getConfigStore()
          Return config store.
 java.util.Vector getDefaultParams()
          Returns the initial default parameters.
 java.lang.String getDescription()
          Returns the description of the ldap publisher.
 java.lang.String[] getExtendedPluginInfo(java.util.Locale locale)
          This method returns an array of strings.
 java.lang.String getImplName()
          Returns the implementation name.
 java.util.Vector getInstanceParams()
          Returns the current instance parameters.
 void init(IConfigStore config)
          Initializes this plugin.
 void publish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object)
          Publishs a object to the ldap directory.
 void unpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object)
          Unpublishs a object to the ldap directory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OCSPPublisher

public OCSPPublisher()
Method Detail

getImplName

public java.lang.String getImplName()
Returns the implementation name.

Specified by:
getImplName in interface ILdapPublisher

getDescription

public java.lang.String getDescription()
Returns the description of the ldap publisher.

Specified by:
getDescription in interface ILdapPublisher

getExtendedPluginInfo

public java.lang.String[] getExtendedPluginInfo(java.util.Locale locale)
Description copied from interface: IExtendedPluginInfo
This method returns an array of strings. Each element of the array represents a configurable parameter, or some other meta-info (such as help-token) there is an entry indexed on that parameter name ;[,required];;... Where: type_info is either 'string', 'number', 'boolean', 'password' or 'choice(ch1,ch2,ch3,...)' If the marker 'required' is included after the type_info, the parameter will has some visually distinctive marking in the UI. 'description' is a short sentence describing the parameter 'choice' is rendered as a drop-down list. The first parameter in the list will be activated by default 'boolean' is rendered as a checkbox. The resulting parameter will be either 'true' or 'false' 'string' allows any characters 'number' allows only numbers 'password' is rendered as a password field (the characters are replaced with *'s when being types. This parameter is not passed through to the plugin. It is instead inserted directly into the password cache keyed on the instance name. The value of the parameter 'bindPWPrompt' (see example below) is set to the key. In addition to the configurable parameters, the following magic parameters may be defined: HELP_TOKEN;helptoken - a pointer to the online manual section for this plugin HELP_TEXT;helptext - a general help string describing the plugin For example: "username;string;The username you wish to login as" "bindPWPrompt;password;Enter password to bind as above user with" "algorithm;choice(RSA,DSA);Which algorithm do you want to use" "enable;boolean;Do you want to run this plugin" "port;number;Which port number do you want to use"

Specified by:
getExtendedPluginInfo in interface IExtendedPluginInfo

getInstanceParams

public java.util.Vector getInstanceParams()
Returns the current instance parameters.

Specified by:
getInstanceParams in interface ILdapPublisher

getDefaultParams

public java.util.Vector getDefaultParams()
Returns the initial default parameters.

Specified by:
getDefaultParams in interface ILdapPublisher

init

public void init(IConfigStore config)
Initializes this plugin.

Specified by:
init in interface ILdapPlugin
Parameters:
config - the configuration store to initialize from.

getConfigStore

public IConfigStore getConfigStore()
Description copied from interface: ILdapPlugin
Return config store.

Specified by:
getConfigStore in interface ILdapPlugin

Connect

protected java.net.Socket Connect(java.lang.String host,
                                  boolean secure,
                                  com.netscape.cmsutil.http.JssSSLSocketFactory factory)

publish

public void publish(netscape.ldap.LDAPConnection conn,
                    java.lang.String dn,
                    java.lang.Object object)
             throws ELdapException
Publishs a object to the ldap directory.

Specified by:
publish in interface ILdapPublisher
Parameters:
conn - a Ldap connection (null if LDAP publishing is not enabled)
dn - dn of the ldap entry to publish cert (null if LDAP publishing is not enabled)
object - object to publish (java.security.cert.X509Certificate or, java.security.cert.X509CRL)
Throws:
ELdapException - publish failed.

unpublish

public void unpublish(netscape.ldap.LDAPConnection conn,
                      java.lang.String dn,
                      java.lang.Object object)
               throws ELdapException
Unpublishs a object to the ldap directory.

Specified by:
unpublish in interface ILdapPublisher
Parameters:
conn - the Ldap connection (null if LDAP publishing is not enabled)
dn - dn of the ldap entry to unpublish cert (null if LDAP publishing is not enabled)
object - object to unpublish (java.security.cert.X509Certificate)
Throws:
ELdapException - unpublish failed.