diff options
author | Ade Lee <alee@redhat.com> | 2014-06-26 23:12:27 +0800 |
---|---|---|
committer | Ade Lee <alee@redhat.com> | 2014-07-17 21:08:12 +0800 |
commit | 80c40916baf0b16ab37829f51fdf6a5a0833d407 (patch) | |
tree | dc18c8df08ca07fc3f123fdce56d1f9a0693da97 /base/common/src/com/netscape/certsrv | |
parent | bebc70bbf17e69b01d4449b20515031120dec0d5 (diff) | |
download | pki-80c40916baf0b16ab37829f51fdf6a5a0833d407.tar.gz pki-80c40916baf0b16ab37829f51fdf6a5a0833d407.tar.xz pki-80c40916baf0b16ab37829f51fdf6a5a0833d407.zip |
Add ability to create database as subtree of existing tree
This patch adds the ability to create a subsystem that uses
an existing subtree to create the internal basedn. This is useful
for instance, for IPA which will use the original o=ipaca as the
top level DN for a KRA, which will be situated at o=ipadrm, o=ipaca.
The patch also allows such a system to be cloned, but not to setup the
replication agreements, on the assumption that the data is already being
replicated at the top-level DN or some higher level.
The patch also contains some minor cleanups - removing unused imports and
removal of an invalid reference in the python code.
Ticket 1051
Diffstat (limited to 'base/common/src/com/netscape/certsrv')
-rw-r--r-- | base/common/src/com/netscape/certsrv/system/ConfigurationRequest.java | 42 |
1 files changed, 39 insertions, 3 deletions
diff --git a/base/common/src/com/netscape/certsrv/system/ConfigurationRequest.java b/base/common/src/com/netscape/certsrv/system/ConfigurationRequest.java index fc85d3d65..8a7556496 100644 --- a/base/common/src/com/netscape/certsrv/system/ConfigurationRequest.java +++ b/base/common/src/com/netscape/certsrv/system/ConfigurationRequest.java @@ -55,6 +55,7 @@ public class ConfigurationRequest { private static final String DSHOST = "dsHost"; private static final String DSPORT = "dsPort"; private static final String BASEDN = "basedn"; + private static final String CREATE_NEW_DB = "createNewDB"; private static final String BINDDN = "binddn"; private static final String DATABASE = "database"; private static final String SECURECONN = "secureConn"; @@ -63,6 +64,7 @@ public class ConfigurationRequest { private static final String CLONE_REPLICATION_PORT = "cloneReplicationPort"; private static final String REPLICATE_SCHEMA = "replicateSchema"; private static final String REPLICATION_SECURITY = "replicationSecurity"; + private static final String SETUP_REPLICATION = "setupReplication"; private static final String ISSUING_CA = "issuingCa"; private static final String BACKUP_KEYS = "backupKeys"; private static final String BACKUP_FILE = "backupFile"; @@ -156,6 +158,9 @@ public class ConfigurationRequest { protected String baseDN; @XmlElement + protected String createNewDB; + + @XmlElement protected String bindDN; @XmlElement @@ -183,6 +188,9 @@ public class ConfigurationRequest { protected String replicationSecurity; @XmlElement + protected String setupReplication; + + @XmlElement protected List<SystemCertData> systemCerts; @XmlElement @@ -297,6 +305,7 @@ public class ConfigurationRequest { dsHost = form.getFirst(DSHOST); dsPort = form.getFirst(DSPORT); baseDN = form.getFirst(BASEDN); + createNewDB = form.getFirst(CREATE_NEW_DB); bindDN = form.getFirst(BINDDN); database = form.getFirst(DATABASE); secureConn = form.getFirst(SECURECONN); @@ -305,6 +314,7 @@ public class ConfigurationRequest { cloneReplicationPort = form.getFirst(CLONE_REPLICATION_PORT); replicateSchema = form.getFirst(REPLICATE_SCHEMA); replicationSecurity = form.getFirst(REPLICATION_SECURITY); + setupReplication = form.getFirst(SETUP_REPLICATION); //TODO - figure out how to get the cert requests issuingCA = form.getFirst(ISSUING_CA); backupFile = form.getFirst(BACKUP_FILE); @@ -409,11 +419,11 @@ public class ConfigurationRequest { this.securityDomainPassword = securityDomainPassword; } - public String getIsClone() { - return isClone; + public boolean isClone() { + return (isClone!= null) && isClone.equalsIgnoreCase("true"); } - public void setIsClone(String isClone) { + public void setClone(String isClone) { this.isClone = isClone; } @@ -621,6 +631,18 @@ public class ConfigurationRequest { this.replicationSecurity = replicationSecurity; } + public boolean getSetupReplication() { + // default to true + if (setupReplication == null) { + return true; + } + return setupReplication.equalsIgnoreCase("true"); + } + + public void setSetupReplication(String setupReplication) { + this.setupReplication = setupReplication; + } + /** * @return the database */ @@ -963,6 +985,18 @@ public class ConfigurationRequest { this.sharedDBUserDN = sharedDBUserDN; } + public boolean getCreateNewDB() { + // default to true + if (createNewDB == null) { + return true; + } + return createNewDB.equalsIgnoreCase("true"); + } + + public void setCreateNewDB(String createNewDB) { + this.createNewDB = createNewDB; + } + @Override public String toString() { return "ConfigurationRequest [pin=XXXX" + @@ -1020,6 +1054,8 @@ public class ConfigurationRequest { ", generateSubsystemCert=" + generateSubsystemCert + ", sharedDB=" + sharedDB + ", sharedDBUserDN=" + sharedDBUserDN + + ", createNewDB=" + createNewDB + + ", setupReplication=" + setupReplication + "]"; } |