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 protected int
maxAge
protected int
maxFullCRLs
protected boolean
mB64Attr
protected boolean
mDerAttr
protected boolean
mLatestCRL
protected java.lang.String
mLinkExt
protected java.lang.String
mTimeStamp
protected boolean
mZipCRL
protected int
mZipLevel
-
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 boolean
getB64Attr()
returns the B64 attribute where it'll be published.IConfigStore
getConfigStore()
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.boolean
getDerAttr()
returns the Der attribute where it'll be published.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.io.File[]
getFullCRLFiles(java.io.File dir)
Gets the full CRLs in the directory * These match- - .* java.lang.String
getImplName()
Returns the implementation name.java.util.Vector<java.lang.String>
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)
Publishes a object to the ldap directory.void
purgeExcessFiles()
void
purgeExpiredFiles()
void
setIssuingPointId(java.lang.String crlIssuingPointId)
void
unpublish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object)
Unpublishes a object to the ldap directory.
-
-
-
Field Detail
-
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:
getImplName
in interfaceILdapPublisher
-
getDescription
public java.lang.String getDescription()
Returns the description of the ldap publisher.- Specified by:
getDescription
in interfaceILdapPublisher
-
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 interfaceIExtendedPluginInfo
-
getInstanceParams
public java.util.Vector<java.lang.String> getInstanceParams()
Returns the current instance parameters.- Specified by:
getInstanceParams
in interfaceILdapPublisher
-
getDefaultParams
public java.util.Vector<java.lang.String> getDefaultParams()
Returns the initial default parameters.- Specified by:
getDefaultParams
in interfaceILdapPublisher
-
init
public void init(IConfigStore config)
Initializes this plugin.- Specified by:
init
in interfaceILdapPlugin
- Parameters:
config
- the configuration store to initialize from.
-
getConfigStore
public IConfigStore getConfigStore()
Description copied from interface:ILdapPlugin
Return config store.- Specified by:
getConfigStore
in interfaceILdapPlugin
-
publish
public void publish(netscape.ldap.LDAPConnection conn, java.lang.String dn, java.lang.Object object) throws ELdapException
Publishes a object to the ldap directory.- Specified by:
publish
in 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 ELdapException
Unpublishes a object to the ldap directory.- Specified by:
unpublish
in 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.
-
-