增加获取所有证书列表问题

This commit is contained in:
yihzhou
2022-12-13 14:08:24 +08:00
parent 92ee7a17e8
commit 85ef86ee49
3 changed files with 37 additions and 2 deletions
@@ -6,6 +6,7 @@ import com.sunyard.cert.X509;
import com.sunyard.constant.CertUsage;
import java.io.UnsupportedEncodingException;
import java.util.List;
/**
* 证书操作相关接口
@@ -102,6 +103,14 @@ public interface SydCertApi {
String sign
);
/**
* 查询所有证书
* @return
* certDNs: 证书DN
*/
List<String> getAllCert() throws UnsupportedEncodingException;
/**
* 查询所有证书
* @param dataFlag 数据包标志 0:起始包 1:中间包 2:结束包
@@ -1321,6 +1321,25 @@ public class SydApi4j implements SydApi {
return r;
}
@Override
public List<String> getAllCert() throws UnsupportedEncodingException {
ArrayList<String> m_certs =new ArrayList<String>();
//查出证书总数,一次次的拿出来
RetWrap allCert =getAllCert(0);
Integer allnum =(Integer) allCert.get("certAllNum");//总数
List<String> certs = (List<String>)allCert.get("certDNs");//部分证书列表
m_certs.addAll(certs);
int loop = allnum%16;//循环次数
for (int i = 1; i < loop; i++) {
RetWrap partCert= getAllCert(16*i);
List<String> partcerts = (List<String>)partCert.get("certDNs");
m_certs.addAll(partcerts);
}
return m_certs;
}
// 测试通过
@Override