import * as asn1js from "asn1js"; import * as pvutils from "pvutils"; import { EMPTY_STRING } from "./constants"; import { AsnError } from "./errors"; import { PkiObject, PkiObjectParameters } from "./PkiObject"; import * as Schema from "./Schema";
export type PolicyConstraintsParameters = PkiObjectParameters & Partial<IPolicyConstraints>;
/** * Represents the PolicyConstraints structure described in [RFC5280](https://datatracker.ietf.org/doc/html/rfc5280)
*/
export class PolicyConstraints extends PkiObject implements IPolicyConstraints {
public requireExplicitPolicy?: number; public inhibitPolicyMapping?: number;
/** * Initializes a new instance of the {@link PolicyConstraints} class * @param parameters Initialization parameters
*/
constructor(parameters: PolicyConstraintsParameters = {}) { super();
if (REQUIRE_EXPLICIT_POLICY in parameters) { this.requireExplicitPolicy = pvutils.getParametersValue(parameters, REQUIRE_EXPLICIT_POLICY, PolicyConstraints.defaultValues(REQUIRE_EXPLICIT_POLICY));
} if (INHIBIT_POLICY_MAPPING in parameters) { this.inhibitPolicyMapping = pvutils.getParametersValue(parameters, INHIBIT_POLICY_MAPPING, PolicyConstraints.defaultValues(INHIBIT_POLICY_MAPPING));
}
if (parameters.schema) { this.fromSchema(parameters.schema);
}
}
/** * Returns default values for all class members * @param memberName String name for a class member * @returns Default value
*/ publicstatic override defaultValues(memberName: typeof REQUIRE_EXPLICIT_POLICY): number; publicstatic override defaultValues(memberName: typeof INHIBIT_POLICY_MAPPING): number; publicstatic override defaultValues(memberName: string): any { switch (memberName) { case REQUIRE_EXPLICIT_POLICY: return0; case INHIBIT_POLICY_MAPPING: return0; default: returnsuper.defaultValues(memberName);
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.