package org.bouncycastle.asn1.cmc; import org.bouncycastle.asn1.ASN1Sequence; import org.bouncycastle.asn1.DERSequence; import org.bouncycastle.asn1.DERUTF8String; public class CMCStatusInfoBuilder { private final CMCStatus cMCStatus; private final ASN1Sequence bodyList; private DERUTF8String statusString; private CMCStatusInfo.OtherInfo otherInfo; public CMCStatusInfoBuilder(CMCStatus cMCStatus, BodyPartID bodyPartID) { this.cMCStatus = cMCStatus; this.bodyList = new DERSequence(bodyPartID); } public CMCStatusInfoBuilder(CMCStatus cMCStatus, BodyPartID[] bodyList) { this.cMCStatus = cMCStatus; this.bodyList = new DERSequence(bodyList); } public CMCStatusInfoBuilder setStatusString(String statusString) { this.statusString = new DERUTF8String(statusString); return this; } public CMCStatusInfoBuilder setOtherInfo(CMCFailInfo failInfo) { this.otherInfo = new CMCStatusInfo.OtherInfo(failInfo); return this; } public CMCStatusInfoBuilder setOtherInfo(PendInfo pendInfo) { this.otherInfo = new CMCStatusInfo.OtherInfo(pendInfo); return this; } public CMCStatusInfo build() { return new CMCStatusInfo(cMCStatus, bodyList, statusString, otherInfo); } }