com.netscape.cms.publish.publishers
Class LdapCaCertPublisher

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

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

Interface for publishing a CA certificate to

Version:
$Revision: 1688 $, $Date: 2011-01-04 17:23:23 -0800 (Tue, 04 Jan 2011) $

Field Summary
static java.lang.String LDAP_ARL_ATTR
           
static java.lang.String LDAP_CA_OBJECTCLASS
           
static java.lang.String LDAP_CACERT_ATTR
           
static java.lang.String LDAP_CRL_ATTR
           
protected  java.lang.String mCaCertAttr
           
protected  java.lang.String mCaObjectclass
           
protected  IConfigStore mConfig
           
protected  java.lang.String mObjAdded
           
protected  java.lang.String mObjDeleted
           
 
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
LdapCaCertPublisher()
          constructor constructs default values.
LdapCaCertPublisher(java.lang.String caCertAttr, java.lang.String caObjectclass)
           
 
Method Summary
 java.lang.String getCaCertAttrName()
          returns the ca cert attribute where it'll be published.
 java.lang.String getCAObjectclass()
          Gets the CA object class to convert to.
 IConfigStore getConfigStore()
          Return config store.
 java.util.Vector getDefaultParams()
          Returns the initial default parameters.
 java.lang.String getDescription()
          Returns the description of the 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)
          Initialize from config store.
 void publish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object certObj)
          publish a CA certificate Adds the cert to the multi-valued certificate attribute as a DER encoded binary blob.
 void unpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object certObj)
          deletes the certificate from CA's certificate attribute.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LDAP_CACERT_ATTR

public static final java.lang.String LDAP_CACERT_ATTR
See Also:
Constant Field Values

LDAP_CA_OBJECTCLASS

public static final java.lang.String LDAP_CA_OBJECTCLASS
See Also:
Constant Field Values

LDAP_ARL_ATTR

public static final java.lang.String LDAP_ARL_ATTR
See Also:
Constant Field Values

LDAP_CRL_ATTR

public static final java.lang.String LDAP_CRL_ATTR
See Also:
Constant Field Values

mCaCertAttr

protected java.lang.String mCaCertAttr

mCaObjectclass

protected java.lang.String mCaObjectclass

mObjAdded

protected java.lang.String mObjAdded

mObjDeleted

protected java.lang.String mObjDeleted

mConfig

protected IConfigStore mConfig
Constructor Detail

LdapCaCertPublisher

public LdapCaCertPublisher()
constructor constructs default values.


LdapCaCertPublisher

public LdapCaCertPublisher(java.lang.String caCertAttr,
                           java.lang.String caObjectclass)
Method Detail

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

getImplName

public java.lang.String getImplName()
Description copied from interface: ILdapPublisher
Returns the implementation name.

Specified by:
getImplName in interface ILdapPublisher

getDescription

public java.lang.String getDescription()
Description copied from interface: ILdapPublisher
Returns the description of the publisher.

Specified by:
getDescription in interface ILdapPublisher

getInstanceParams

public java.util.Vector getInstanceParams()
Description copied from interface: ILdapPublisher
Returns the current instance parameters.

Specified by:
getInstanceParams in interface ILdapPublisher

getDefaultParams

public java.util.Vector getDefaultParams()
Description copied from interface: ILdapPublisher
Returns the initial default parameters.

Specified by:
getDefaultParams in interface ILdapPublisher

getConfigStore

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

Specified by:
getConfigStore in interface ILdapPlugin

init

public void init(IConfigStore config)
          throws EBaseException
Description copied from interface: ILdapPlugin
Initialize from config store.

Specified by:
init in interface ILdapPlugin
Parameters:
config - the configuration store to initialize from.
Throws:
ELdapException - initialization failed due to Ldap error.
EBaseException - initialization failed.

getCAObjectclass

public java.lang.String getCAObjectclass()
Gets the CA object class to convert to.


getCaCertAttrName

public java.lang.String getCaCertAttrName()
returns the ca cert attribute where it'll be published.


publish

public void publish(netscape.ldap.LDAPConnection conn,
                    java.lang.String dn,
                    java.lang.Object certObj)
             throws ELdapException
publish a CA certificate Adds the cert to the multi-valued certificate attribute as a DER encoded binary blob. Does not check if cert already exists. Converts the class to certificateAuthority.

Specified by:
publish in interface ILdapPublisher
Parameters:
conn - the LDAP connection
dn - dn of the entry to publish the certificate
certObj - the certificate object.
Throws:
ELdapException - publish failed.

unpublish

public void unpublish(netscape.ldap.LDAPConnection conn,
                      java.lang.String dn,
                      java.lang.Object certObj)
               throws ELdapException
deletes the certificate from CA's certificate attribute. if it's the last cert will also remove the certificateAuthority objectclass.

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