Class FileBasedPublisher
- java.lang.Object
-
- com.netscape.cms.publish.publishers.FileBasedPublisher
-
- All Implemented Interfaces:
IExtendedPluginInfo,ILdapPlugin,ILdapPublisher
public class FileBasedPublisher extends java.lang.Object implements ILdapPublisher, IExtendedPluginInfo
This publisher writes certificate and CRL into a directory.- Version:
- $Revision$, $Date$
-
-
Field Summary
Fields Modifier and Type Field Description static org.slf4j.Loggerloggerprotected intmaxAgeprotected intmaxFullCRLsprotected booleanmB64Attrprotected booleanmDerAttrprotected booleanmLatestCRLprotected java.lang.StringmLinkExtprotected java.lang.StringmTimeStampprotected booleanmZipCRLprotected intmZipLevel-
Fields inherited from interface com.netscape.certsrv.base.IExtendedPluginInfo
HELP_TEXT, HELP_TOKEN
-
Fields inherited from interface com.netscape.certsrv.publish.ILdapPublisher
PROP_ENABLE, PROP_IMPLNAME, PROP_PREDICATE
-
-
Constructor Summary
Constructors Constructor Description FileBasedPublisher()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleangetB64Attr()returns the B64 attribute where it'll be published.IConfigStoregetConfigStore()Return config store.java.io.File[]getCRLFiles(java.io.File dir)Gets all the CRLS (full and delta) in the directory These match- - .* and - - -delta.* java.util.Vector<java.lang.String>getDefaultParams()Returns the initial default parameters.booleangetDerAttr()returns the Der attribute where it'll be published.java.lang.StringgetDescription()Returns the description of the ldap publisher.java.lang.String[]getExtendedPluginInfo(java.util.Locale locale)This method returns an array of strings.java.io.File[]getFullCRLFiles(java.io.File dir)Gets the full CRLs in the directory * These match- - .* java.lang.StringgetImplName()Returns the implementation name.java.util.Vector<java.lang.String>getInstanceParams()Returns the current instance parameters.voidinit(IConfigStore config)Initializes this plugin.voidpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object)Publishes a object to the ldap directory.voidpurgeExcessFiles()voidpurgeExpiredFiles()voidsetIssuingPointId(java.lang.String crlIssuingPointId)voidunpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object)Unpublishes a object to the ldap directory.
-
-
-
Field Detail
-
logger
public static org.slf4j.Logger logger
-
mDerAttr
protected boolean mDerAttr
-
mB64Attr
protected boolean mB64Attr
-
mLatestCRL
protected boolean mLatestCRL
-
mZipCRL
protected boolean mZipCRL
-
mTimeStamp
protected java.lang.String mTimeStamp
-
mLinkExt
protected java.lang.String mLinkExt
-
mZipLevel
protected int mZipLevel
-
maxAge
protected int maxAge
-
maxFullCRLs
protected int maxFullCRLs
-
-
Method Detail
-
setIssuingPointId
public void setIssuingPointId(java.lang.String crlIssuingPointId)
-
getImplName
public java.lang.String getImplName()
Returns the implementation name.- Specified by:
getImplNamein interfaceILdapPublisher
-
getDescription
public java.lang.String getDescription()
Returns the description of the ldap publisher.- Specified by:
getDescriptionin interfaceILdapPublisher
-
getExtendedPluginInfo
public java.lang.String[] getExtendedPluginInfo(java.util.Locale locale)
Description copied from interface:IExtendedPluginInfoThis 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:
getExtendedPluginInfoin interfaceIExtendedPluginInfo
-
getInstanceParams
public java.util.Vector<java.lang.String> getInstanceParams()
Returns the current instance parameters.- Specified by:
getInstanceParamsin interfaceILdapPublisher
-
getDefaultParams
public java.util.Vector<java.lang.String> getDefaultParams()
Returns the initial default parameters.- Specified by:
getDefaultParamsin interfaceILdapPublisher
-
init
public void init(IConfigStore config)
Initializes this plugin.- Specified by:
initin interfaceILdapPlugin- Parameters:
config- the configuration store to initialize from.
-
getConfigStore
public IConfigStore getConfigStore()
Description copied from interface:ILdapPluginReturn config store.- Specified by:
getConfigStorein interfaceILdapPlugin
-
publish
public void publish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object) throws ELdapExceptionPublishes a object to the ldap directory.- Specified by:
publishin interfaceILdapPublisher- 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.
-
getCRLFiles
public java.io.File[] getCRLFiles(java.io.File dir)
Gets all the CRLS (full and delta) in the directory These match- - .* and - - -delta.* - Parameters:
dir-- Returns:
- array of files
-
getFullCRLFiles
public java.io.File[] getFullCRLFiles(java.io.File dir)
Gets the full CRLs in the directory * These match- - .* - Parameters:
dir-- Returns:
- array of files
-
purgeExpiredFiles
public void purgeExpiredFiles()
-
purgeExcessFiles
public void purgeExcessFiles()
-
unpublish
public void unpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object) throws ELdapExceptionUnpublishes a object to the ldap directory.- Specified by:
unpublishin interfaceILdapPublisher- 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.
-
getDerAttr
public boolean getDerAttr()
returns the Der attribute where it'll be published.
-
getB64Attr
public boolean getB64Attr()
returns the B64 attribute where it'll be published.
-
-