Package org.xipki.ca.server.db
Class CaManagerQueryExecutor
- java.lang.Object
-
- org.xipki.ca.server.db.CaManagerQueryExecutor
-
public class CaManagerQueryExecutor extends Object
Execute the database queries to manage CA system.- Since:
- 2.0.0
- Author:
- Lijun Liao (xipki)
-
-
Field Summary
Fields Modifier and Type Field Description protected org.xipki.datasource.DataSourceWrapperdatasourceprotected intdbSchemaVersionprotected intmaxX500nameLen
-
Constructor Summary
Constructors Constructor Description CaManagerQueryExecutor(org.xipki.datasource.DataSourceWrapper datasource)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCa(org.xipki.ca.api.mgmt.entry.CaEntry caEntry)voidaddCaAlias(String aliasName, org.xipki.ca.api.NameId ca)voidaddCertprofile(org.xipki.ca.api.mgmt.entry.CertprofileEntry dbEntry)voidaddCertprofileToCa(org.xipki.ca.api.NameId profile, org.xipki.ca.api.NameId ca)voidaddDbSchema(String name, String value)org.xipki.ca.api.NameIdaddEmbeddedRequestor(String requestorName)voidaddKeypairGen(org.xipki.ca.api.mgmt.entry.KeypairGenEntry dbEntry)voidaddPublisher(org.xipki.ca.api.mgmt.entry.PublisherEntry dbEntry)voidaddPublisherToCa(org.xipki.ca.api.NameId publisher, org.xipki.ca.api.NameId ca)voidaddRequestor(org.xipki.ca.api.mgmt.entry.RequestorEntry dbEntry)voidaddRequestorToCa(org.xipki.ca.api.mgmt.entry.CaHasRequestorEntry requestor, org.xipki.ca.api.NameId ca)voidaddSigner(org.xipki.ca.api.mgmt.entry.SignerEntry dbEntry)protected PreparedStatementbuildPrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... columns)protected StringbuildSelectFirstSql(String coreSql)protected StringbuildSelectFirstSql(String orderBy, String coreSql)voidchangeCa(org.xipki.ca.api.mgmt.entry.ChangeCaEntry changeCaEntry, org.xipki.ca.api.mgmt.entry.CaEntry currentCaEntry, org.xipki.ca.api.mgmt.entry.CaConfColumn currentCaConfColumn, org.xipki.security.SecurityFactory securityFactory)IdentifiedCertprofilechangeCertprofile(org.xipki.ca.api.NameId nameId, String type, String conf, CaManagerImpl certprofileManager)voidchangeDbSchema(String name, String value)protected voidchangeIfNotNull(String tableName, org.xipki.ca.server.db.QueryExecutor.SqlColumn whereColumn, org.xipki.ca.server.db.QueryExecutor.SqlColumn... columns)KeypairGenEntryWrapperchangeKeypairGen(String name, String type, String conf, CaManagerImpl manager)IdentifiedCertPublisherchangePublisher(String name, String type, String conf, CaManagerImpl publisherManager)RequestorEntryWrapperchangeRequestor(org.xipki.ca.api.NameId nameId, String type, String conf, org.xipki.password.PasswordResolver passwordResolver)SignerEntryWrapperchangeSigner(String name, String type, String conf, String base64Cert, CaManagerImpl signerManager)voidchangeSystemEvent(SystemEvent systemEvent)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2col2Bool(Boolean value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2col2Int(Integer value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2col2Long(Long value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2col2Str(String value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2col2Timestamp(Timestamp value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumncolBool(String name, Boolean value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumncolInt(String name, Integer value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumncolLong(String name, Long value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumncolStr(String name, String value)protected static org.xipki.ca.server.db.QueryExecutor.SqlColumncolStr(String name, String value, boolean sensitive, boolean signerConf)voidcommitNextCrlNoIfLess(org.xipki.ca.api.NameId ca, long nextCrlNo)Map<String,Integer>createCaAliases()Set<Integer>createCaHasProfiles(org.xipki.ca.api.NameId ca)Set<Integer>createCaHasPublishers(org.xipki.ca.api.NameId ca)Set<org.xipki.ca.api.mgmt.entry.CaHasRequestorEntry>createCaHasRequestors(org.xipki.ca.api.NameId ca)CaInfocreateCaInfo(String name, CertStore certstore)org.xipki.ca.api.mgmt.entry.CertprofileEntrycreateCertprofile(String name)org.xipki.ca.api.mgmt.entry.KeypairGenEntrycreateKeypairGen(String name)org.xipki.ca.api.mgmt.entry.PublisherEntrycreatePublisher(String name)org.xipki.ca.api.mgmt.entry.RequestorEntrycreateRequestor(String name)org.xipki.ca.api.mgmt.entry.SignerEntrycreateSigner(String name)booleandeleteRowWithName(String name, String table)protected org.xipki.ca.server.db.ResultRowexecQuery1PrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected org.xipki.ca.server.db.ResultRowexecQuery1PrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected List<org.xipki.ca.server.db.ResultRow>execQueryPrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected List<org.xipki.ca.server.db.ResultRow>execQueryPrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected List<org.xipki.ca.server.db.ResultRow>execQueryStmt(String sql)protected List<org.xipki.ca.server.db.ResultRow>execQueryStmt0(String sql)protected intexecUpdatePrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected intexecUpdatePrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params)protected intexecUpdateStmt(String sql)protected intexecUpdateStmt0(String sql)Map<String,String>getDbSchemas()intgetDbSchemaVersion()protected IntegergetIdForName(String sql, String name)protected Map<Integer,String>getIdNameMap(String tableName)intgetMaxX500nameLen()protected intgetNonNullIdForName(String sql, String name)IntegergetRequestorId(String requestorName)SystemEventgetSystemEvent(String eventName)Retrieve the system event.List<String>namesFromTable(String table)protected voidnotNulls(Object param1, String name1, Object param2, String name2)protected voidnotNulls(Object param1, String name1, Object param2, String name2, Object param3, String name3)protected voidnotNulls(Object param1, String name1, Object param2, String name2, Object param3, String name3, Object param4, String name4)voidremoveCa(String caName)voidremoveCaAlias(String aliasName)voidremoveCertprofileFromCa(String profileName, String caName)voidremoveDbSchema(String name)voidremovePublisherFromCa(String publisherName, String caName)voidremoveRequestorFromCa(String requestorName, String caName)voidrevokeCa(String caName, org.xipki.security.CertRevocationInfo revocationInfo)protected static Stringstr(String sa, String sb)voidunlockCa()voidunrevokeCa(String caName)
-
-
-
Method Detail
-
getSystemEvent
public SystemEvent getSystemEvent(String eventName) throws org.xipki.ca.api.mgmt.CaMgmtException
Retrieve the system event.- Parameters:
eventName- Event name- Returns:
- the System event, may be
null. - Throws:
org.xipki.ca.api.mgmt.CaMgmtException- If error occurs.
-
changeSystemEvent
public void changeSystemEvent(SystemEvent systemEvent) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCaAliases
public Map<String,Integer> createCaAliases() throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCertprofile
public org.xipki.ca.api.mgmt.entry.CertprofileEntry createCertprofile(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createPublisher
public org.xipki.ca.api.mgmt.entry.PublisherEntry createPublisher(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getRequestorId
public Integer getRequestorId(String requestorName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createRequestor
public org.xipki.ca.api.mgmt.entry.RequestorEntry createRequestor(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createSigner
public org.xipki.ca.api.mgmt.entry.SignerEntry createSigner(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createKeypairGen
public org.xipki.ca.api.mgmt.entry.KeypairGenEntry createKeypairGen(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCaInfo
public CaInfo createCaInfo(String name, CertStore certstore) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCaHasRequestors
public Set<org.xipki.ca.api.mgmt.entry.CaHasRequestorEntry> createCaHasRequestors(org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCaHasProfiles
public Set<Integer> createCaHasProfiles(org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
createCaHasPublishers
public Set<Integer> createCaHasPublishers(org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addCa
public void addCa(org.xipki.ca.api.mgmt.entry.CaEntry caEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addCaAlias
public void addCaAlias(String aliasName, org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addCertprofile
public void addCertprofile(org.xipki.ca.api.mgmt.entry.CertprofileEntry dbEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addCertprofileToCa
public void addCertprofileToCa(org.xipki.ca.api.NameId profile, org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addPublisherToCa
public void addPublisherToCa(org.xipki.ca.api.NameId publisher, org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addRequestor
public void addRequestor(org.xipki.ca.api.mgmt.entry.RequestorEntry dbEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addEmbeddedRequestor
public org.xipki.ca.api.NameId addEmbeddedRequestor(String requestorName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addRequestorToCa
public void addRequestorToCa(org.xipki.ca.api.mgmt.entry.CaHasRequestorEntry requestor, org.xipki.ca.api.NameId ca) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addPublisher
public void addPublisher(org.xipki.ca.api.mgmt.entry.PublisherEntry dbEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeCa
public void changeCa(org.xipki.ca.api.mgmt.entry.ChangeCaEntry changeCaEntry, org.xipki.ca.api.mgmt.entry.CaEntry currentCaEntry, org.xipki.ca.api.mgmt.entry.CaConfColumn currentCaConfColumn, org.xipki.security.SecurityFactory securityFactory) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
commitNextCrlNoIfLess
public void commitNextCrlNoIfLess(org.xipki.ca.api.NameId ca, long nextCrlNo) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeCertprofile
public IdentifiedCertprofile changeCertprofile(org.xipki.ca.api.NameId nameId, String type, String conf, CaManagerImpl certprofileManager) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeRequestor
public RequestorEntryWrapper changeRequestor(org.xipki.ca.api.NameId nameId, String type, String conf, org.xipki.password.PasswordResolver passwordResolver) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeSigner
public SignerEntryWrapper changeSigner(String name, String type, String conf, String base64Cert, CaManagerImpl signerManager) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeKeypairGen
public KeypairGenEntryWrapper changeKeypairGen(String name, String type, String conf, CaManagerImpl manager) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changePublisher
public IdentifiedCertPublisher changePublisher(String name, String type, String conf, CaManagerImpl publisherManager) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removeCa
public void removeCa(String caName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removeCaAlias
public void removeCaAlias(String aliasName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removeCertprofileFromCa
public void removeCertprofileFromCa(String profileName, String caName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removeRequestorFromCa
public void removeRequestorFromCa(String requestorName, String caName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removePublisherFromCa
public void removePublisherFromCa(String publisherName, String caName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
removeDbSchema
public void removeDbSchema(String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
revokeCa
public void revokeCa(String caName, org.xipki.security.CertRevocationInfo revocationInfo) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addKeypairGen
public void addKeypairGen(org.xipki.ca.api.mgmt.entry.KeypairGenEntry dbEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addSigner
public void addSigner(org.xipki.ca.api.mgmt.entry.SignerEntry dbEntry) throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
unlockCa
public void unlockCa() throws org.xipki.ca.api.mgmt.CaMgmtException- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
unrevokeCa
public void unrevokeCa(String caName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
addDbSchema
public void addDbSchema(String name, String value) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeDbSchema
public void changeDbSchema(String name, String value) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getDbSchemas
public Map<String,String> getDbSchemas() throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getDbSchemaVersion
public int getDbSchemaVersion()
-
getMaxX500nameLen
public int getMaxX500nameLen()
-
namesFromTable
public List<String> namesFromTable(String table) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
deleteRowWithName
public boolean deleteRowWithName(String name, String table) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
execUpdateStmt0
protected int execUpdateStmt0(String sql) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
execUpdatePrepStmt0
protected int execUpdatePrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
execQueryStmt0
protected List<org.xipki.ca.server.db.ResultRow> execQueryStmt0(String sql) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
execQuery1PrepStmt0
protected org.xipki.ca.server.db.ResultRow execQuery1PrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
execQueryPrepStmt0
protected List<org.xipki.ca.server.db.ResultRow> execQueryPrepStmt0(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
changeIfNotNull
protected void changeIfNotNull(String tableName, org.xipki.ca.server.db.QueryExecutor.SqlColumn whereColumn, org.xipki.ca.server.db.QueryExecutor.SqlColumn... columns) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getNonNullIdForName
protected int getNonNullIdForName(String sql, String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getIdForName
protected Integer getIdForName(String sql, String name) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
getIdNameMap
protected Map<Integer,String> getIdNameMap(String tableName) throws org.xipki.ca.api.mgmt.CaMgmtException
- Throws:
org.xipki.ca.api.mgmt.CaMgmtException
-
colBool
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn colBool(String name, Boolean value)
-
colInt
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn colInt(String name, Integer value)
-
colLong
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn colLong(String name, Long value)
-
colStr
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn colStr(String name, String value)
-
colStr
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn colStr(String name, String value, boolean sensitive, boolean signerConf)
-
col2Bool
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2 col2Bool(Boolean value)
-
col2Int
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2 col2Int(Integer value)
-
col2Long
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2 col2Long(Long value)
-
col2Str
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2 col2Str(String value)
-
col2Timestamp
protected static org.xipki.ca.server.db.QueryExecutor.SqlColumn2 col2Timestamp(Timestamp value)
-
execUpdateStmt
protected int execUpdateStmt(String sql) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
execUpdatePrepStmt
protected int execUpdatePrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
execQueryStmt
protected List<org.xipki.ca.server.db.ResultRow> execQueryStmt(String sql) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
execQuery1PrepStmt
protected org.xipki.ca.server.db.ResultRow execQuery1PrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
execQueryPrepStmt
protected List<org.xipki.ca.server.db.ResultRow> execQueryPrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... params) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
buildPrepStmt
protected PreparedStatement buildPrepStmt(String sql, org.xipki.ca.server.db.QueryExecutor.SqlColumn2... columns) throws org.xipki.datasource.DataAccessException
- Throws:
org.xipki.datasource.DataAccessException
-
notNulls
protected void notNulls(Object param1, String name1, Object param2, String name2, Object param3, String name3)
-
-