public static CaCaps getInstance(String scepMessage) { CaCaps ret = new CaCaps(); if (scepMessage == null || scepMessage.isEmpty()) { return ret; } StringTokenizer st = new StringTokenizer(scepMessage, "\r\n"); List<CaCapability> caps = new ArrayList<>(st.countTokens()); while (st.hasMoreTokens()) { String token = st.nextToken(); try { CaCapability cap = CaCapability.forValue(token); caps.add(cap); } catch (IllegalArgumentException ex) { LOG.warn("ignore unknown CACap '{}'", token); } } if (!caps.isEmpty()) { ret.addCapabilities(caps.toArray(new CaCapability[0])); } return ret; }
public ScepResponder(CaCaps caCaps, CaEmulator caEmulator, RaEmulator raEmulator, NextCaAndRa nextCaAndRa, ScepControl control) throws Exception { this.caCaps = ScepUtil.requireNonNull("caCaps", caCaps); this.caEmulator = ScepUtil.requireNonNull("caEmulator", caEmulator); this.control = ScepUtil.requireNonNull("control", control); this.raEmulator = raEmulator; this.nextCaAndRa = nextCaAndRa; CaCaps caps = caCaps; if (nextCaAndRa == null) { caps.removeCapabilities(CaCapability.GetNextCACert); } else { caps.addCapabilities(CaCapability.GetNextCACert); } }
public ScepResponder(CaManagerImpl caManager, MgmtEntry.Ca caEntry) throws CaMgmtException { this.caManager = Args.notNull(caManager, "caManager"); this.caIdent = Args.notNull(caEntry, "caEntry").getIdent(); this.control = caEntry.getScepControl(); String responderName = caEntry.getScepResponderName(); SignerEntryWrapper responder = caManager.getSignerWrapper(responderName); if (responder == null) { throw new CaMgmtException("Unknown responder " + responderName); } // CACaps CaCaps caps = new CaCaps(); caps.addCapabilities(CaCapability.AES, CaCapability.DES3, CaCapability.POSTPKIOperation, CaCapability.Renewal, CaCapability.SHA1, CaCapability.SHA256, CaCapability.SHA512); this.caCaps = caps; setResponder(responder); }