diff options
author | awnuk <awnuk@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-12-21 07:42:50 +0000 |
---|---|---|
committer | awnuk <awnuk@c9f7a03b-bd48-0410-a16d-cbbf54688b0b> | 2010-12-21 07:42:50 +0000 |
commit | 5a467a1aa4e26db85e25a35275c5dfd0d320d7b2 (patch) | |
tree | b0d2c21179fd12ed3bfc2da154b03e201c39a25a /pki/base/common/src/com/netscape/cmscore/request | |
parent | 9a945471f8dcf20441f18ae28b610f52905e51c5 (diff) | |
download | pki-5a467a1aa4e26db85e25a35275c5dfd0d320d7b2.tar.gz pki-5a467a1aa4e26db85e25a35275c5dfd0d320d7b2.tar.xz pki-5a467a1aa4e26db85e25a35275c5dfd0d320d7b2.zip |
Fixed bugzilla bug #649343.
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/trunk@1659 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
Diffstat (limited to 'pki/base/common/src/com/netscape/cmscore/request')
-rw-r--r-- | pki/base/common/src/com/netscape/cmscore/request/RequestQueue.java | 8 | ||||
-rw-r--r-- | pki/base/common/src/com/netscape/cmscore/request/RequestRepository.java | 66 |
2 files changed, 74 insertions, 0 deletions
diff --git a/pki/base/common/src/com/netscape/cmscore/request/RequestQueue.java b/pki/base/common/src/com/netscape/cmscore/request/RequestQueue.java index ff9ceb4f6..f390d436d 100644 --- a/pki/base/common/src/com/netscape/cmscore/request/RequestQueue.java +++ b/pki/base/common/src/com/netscape/cmscore/request/RequestQueue.java @@ -602,6 +602,14 @@ public class RequestQueue return (IRepository) mRepository; } + public String getPublishingStatus() { + return mRepository.getPublishingStatus(); + } + + public void setPublishingStatus(String status) { + mRepository.setPublishingStatus(status); + } + protected String mBaseDN; protected IDBSubsystem mDB; protected RequestRepository mRepository; diff --git a/pki/base/common/src/com/netscape/cmscore/request/RequestRepository.java b/pki/base/common/src/com/netscape/cmscore/request/RequestRepository.java index db77f41ac..c6ab7129e 100644 --- a/pki/base/common/src/com/netscape/cmscore/request/RequestRepository.java +++ b/pki/base/common/src/com/netscape/cmscore/request/RequestRepository.java @@ -23,6 +23,7 @@ import java.math.*; import com.netscape.certsrv.dbs.EDBException; import com.netscape.certsrv.dbs.IDBSubsystem; import com.netscape.certsrv.dbs.*; +import com.netscape.certsrv.dbs.repository.*; import com.netscape.certsrv.request.*; import com.netscape.certsrv.base.*; import com.netscape.certsrv.apps.*; @@ -145,4 +146,69 @@ class RequestRepository * the LDAP base DN for this repository */ protected String mBaseDN; + + + public String getPublishingStatus() { + RepositoryRecord record = null; + Object obj = null; + IDBSSession dbs = null; + String status = null; + + try { + dbs = mDB.createSession(); + obj = dbs.read(mBaseDN); + } catch (Exception e) { + CMS.debug("RequestRepository: getPublishingStatus: Error: " + e); + CMS.debugStackTrace(); + } finally { + // Close session - ignoring errors (UTIL) + if (dbs != null) { + try { + dbs.close(); + } catch (Exception ex) { + CMS.debug("RequestRepository: getPublishingStatus: Error: " + ex); + } + } + } + + if (obj != null || (obj instanceof RepositoryRecord)) { + record = (RepositoryRecord) obj; + status = record.getPublishingStatus(); + } else { + CMS.debug("RequestRepository: obj is NOT instanceof RepositoryRecord"); + } + CMS.debug("RequestRepository: getPublishingStatus mBaseDN: " + mBaseDN + + " status: " + ((status != null)?status:"null")); + + return status; + } + + public void setPublishingStatus(String status) { + IDBSSession dbs = null; + + CMS.debug("RequestRepository: setPublishingStatus mBaseDN: " + mBaseDN + " status: " + status); + ModificationSet mods = new ModificationSet(); + + if (status != null && status.length() > 0) { + mods.add(IRepositoryRecord.ATTR_PUB_STATUS, + Modification.MOD_REPLACE, status); + + try { + dbs = mDB.createSession(); + dbs.modify(mBaseDN, mods); + } catch (Exception e) { + CMS.debug("RequestRepository: setPublishingStatus: Error: " + e); + CMS.debugStackTrace(); + } finally { + // Close session - ignoring errors (UTIL) + if (dbs != null) { + try { + dbs.close(); + } catch (Exception ex) { + CMS.debug("RequestRepository: setPublishingStatus: Error: " + ex); + } + } + } + } + } } |