Red Hat Application Migration Toolkit
package iaik.x509.extensions;
import iaik.asn1.ASN1Object;
import iaik.asn1.BIT_STRING;
import iaik.asn1.ObjectID;
import iaik.x509.V3Extension;
public class KeyUsage extends V3Extension {
private int a;
public static final int decipherOnly = 256;
public static final int encipherOnly = 128;
public static final int cRLSign = 64;
public static final int keyCertSign = 32;
public static final int keyAgreement = 16;
public static final int dataEncipherment = 8;
public static final int keyEncipherment = 4;
public static final int nonRepudiation = 2;
public static final int digitalSignature = 1;
public static final ObjectID oid = new ObjectID("2.5.29.15", "KeyUsage");
public String toString() {
StringBuffer var1 = new StringBuffer();
if((this.a & 1) != 0) {
var1.append("digitalSignature | ");
}
if((this.a & 2) != 0) {
var1.append("nonRepudiation | ");
}
if((this.a & 4) != 0) {
var1.append("keyEncipherment | ");
}
if((this.a & 8) != 0) {
var1.append("dataEncipherment | ");
}
if((this.a & 16) != 0) {
var1.append("keyAgreement | ");
}
if((this.a & 32) != 0) {
var1.append("keyCertSign | ");
}
if((this.a & 64) != 0) {
var1.append("cRLSign | ");
}
if((this.a & 128) != 0) {
var1.append("encipherOnly | ");
}
if((this.a & 256) != 0) {
var1.append("decipherOnly | ");
}
var1.setLength(var1.length() - 3);
return var1.toString();
}
public ASN1Object toASN1Object() {
StringBuffer var1 = new StringBuffer(Integer.toBinaryString(this.a));
var1.reverse();
return new BIT_STRING(var1.toString());
}
public void set(int var1) {
this.a = var1;
}
public boolean isSet(int var1) {
return (this.a & var1) != 0;
}
public void init(ASN1Object var1) {
BIT_STRING var2 = (BIT_STRING)var1;
StringBuffer var3 = (new StringBuffer(var2.getBinaryString())).reverse();
this.a = Integer.parseInt(var3.toString(), 2);
}
public int hashCode() {
return oid.hashCode();
}
public ObjectID getObjectID() {
return oid;
}
public boolean[] getBooleanArray() {
boolean[] var1 = new boolean[9];
int var2 = this.a;
for(int var3 = 0; var2 != 0; var2 >>= 1) {
if((var2 & 1) != 0) {
var1[var3] = true;
}
++var3;
}
return var1;
}
public int get() {
return this.a;
}
public KeyUsage(int var1) {
this.a = var1;
}
public KeyUsage() {
}
}