public class org.eclipse.jgit.transport.PushCertificateParser
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jgit.transport.PushCertificateParser
super_class: java.lang.Object
{
static final java.lang.String BEGIN_SIGNATURE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "-----BEGIN PGP SIGNATURE-----"
static final java.lang.String END_SIGNATURE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "-----END PGP SIGNATURE-----"
static final java.lang.String VERSION;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "certificate version"
static final java.lang.String PUSHER;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "pusher"
static final java.lang.String PUSHEE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "pushee"
static final java.lang.String NONCE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "nonce"
static final java.lang.String END_CERT;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "push-cert-end"
private static final java.lang.String VERSION_0_1;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "0.1"
private boolean received;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String version;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jgit.transport.PushCertificateIdent pusher;
descriptor: Lorg/eclipse/jgit/transport/PushCertificateIdent;
flags: (0x0002) ACC_PRIVATE
private java.lang.String pushee;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String sentNonce;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String receivedNonce;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private org.eclipse.jgit.transport.PushCertificate$NonceStatus nonceStatus;
descriptor: Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;
flags: (0x0002) ACC_PRIVATE
private java.lang.String signature;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final org.eclipse.jgit.lib.Repository db;
descriptor: Lorg/eclipse/jgit/lib/Repository;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int nonceSlopLimit;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean enabled;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.eclipse.jgit.transport.NonceGenerator nonceGenerator;
descriptor: Lorg/eclipse/jgit/transport/NonceGenerator;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.eclipse.jgit.transport.ReceiveCommand> commands;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jgit/transport/ReceiveCommand;>;
public static org.eclipse.jgit.transport.PushCertificate fromReader(java.io.Reader);
descriptor: (Ljava/io/Reader;)Lorg/eclipse/jgit/transport/PushCertificate;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new org.eclipse.jgit.transport.PushCertificateParser
dup
invokespecial org.eclipse.jgit.transport.PushCertificateParser.<init>:()V
aload 0
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.parse:(Ljava/io/Reader;)Lorg/eclipse/jgit/transport/PushCertificate;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 r Ljava/io/Reader;
Exceptions:
throws org.eclipse.jgit.errors.PackProtocolException, java.io.IOException
MethodParameters:
Name Flags
r
public static org.eclipse.jgit.transport.PushCertificate fromString(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/transport/PushCertificate;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.io.StringReader
dup
aload 0
invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
invokestatic org.eclipse.jgit.transport.PushCertificateParser.fromReader:(Ljava/io/Reader;)Lorg/eclipse/jgit/transport/PushCertificate;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 str Ljava/lang/String;
Exceptions:
throws org.eclipse.jgit.errors.PackProtocolException, java.io.IOException
MethodParameters:
Name Flags
str
public void <init>(org.eclipse.jgit.lib.Repository, org.eclipse.jgit.transport.SignedPushConfig);
descriptor: (Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/transport/SignedPushConfig;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.eclipse.jgit.transport.PushCertificateParser.commands:Ljava/util/List;
2: aload 2
ifnull 6
3: aload 0
aload 2
invokevirtual org.eclipse.jgit.transport.SignedPushConfig.getCertNonceSlopLimit:()I
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceSlopLimit:I
4: aload 0
aload 2
invokevirtual org.eclipse.jgit.transport.SignedPushConfig.getNonceGenerator:()Lorg/eclipse/jgit/transport/NonceGenerator;
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
5: goto 8
6: StackMap locals: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.SignedPushConfig
StackMap stack:
aload 0
iconst_0
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceSlopLimit:I
7: aload 0
aconst_null
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
8: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.eclipse.jgit.transport.PushCertificateParser.db:Lorg/eclipse/jgit/lib/Repository;
9: aload 0
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
ifnull 10
iconst_1
goto 11
StackMap locals:
StackMap stack: org.eclipse.jgit.transport.PushCertificateParser
10: iconst_0
StackMap locals: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.SignedPushConfig
StackMap stack: org.eclipse.jgit.transport.PushCertificateParser int
11: putfield org.eclipse.jgit.transport.PushCertificateParser.enabled:Z
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 13 1 into Lorg/eclipse/jgit/lib/Repository;
0 13 2 cfg Lorg/eclipse/jgit/transport/SignedPushConfig;
MethodParameters:
Name Flags
into
cfg
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.eclipse.jgit.transport.PushCertificateParser.commands:Ljava/util/List;
2: aload 0
aconst_null
putfield org.eclipse.jgit.transport.PushCertificateParser.db:Lorg/eclipse/jgit/lib/Repository;
3: aload 0
iconst_0
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceSlopLimit:I
4: aload 0
aconst_null
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
5: aload 0
iconst_1
putfield org.eclipse.jgit.transport.PushCertificateParser.enabled:Z
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
public org.eclipse.jgit.transport.PushCertificate parse(java.io.Reader);
descriptor: (Ljava/io/Reader;)Lorg/eclipse/jgit/transport/PushCertificate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new org.eclipse.jgit.transport.PushCertificateParser$StreamReader
dup
aload 1
invokespecial org.eclipse.jgit.transport.PushCertificateParser$StreamReader.<init>:(Ljava/io/Reader;)V
astore 2
start local 2 1: aload 0
aload 2
iconst_1
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.receiveHeader:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Z)V
2: goto 7
start local 3 3: StackMap locals: org.eclipse.jgit.transport.PushCertificateParser$StreamReader java.lang.String
StackMap stack:
aload 3
ldc "-----BEGIN PGP SIGNATURE-----"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
4: aload 0
aload 2
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.receiveSignature:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;)V
5: goto 11
6: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.addCommand:(Ljava/lang/String;)V
end local 3 7: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.eclipse.jgit.transport.PushCertificateParser$StreamReader.read:()Ljava/lang/String;
dup
astore 3
start local 3 8: invokevirtual java.lang.String.isEmpty:()Z
ifeq 3
9: goto 11
end local 3 StackMap locals:
StackMap stack: java.io.EOFException
10: pop
11: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.build:()Lorg/eclipse/jgit/transport/PushCertificate;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 12 1 r Ljava/io/Reader;
1 12 2 reader Lorg/eclipse/jgit/transport/PushCertificateParser$StreamReader;
3 7 3 line Ljava/lang/String;
8 10 3 line Ljava/lang/String;
Exception table:
from to target type
2 9 10 Class java.io.EOFException
Exceptions:
throws org.eclipse.jgit.errors.PackProtocolException, java.io.IOException
MethodParameters:
Name Flags
r
public org.eclipse.jgit.transport.PushCertificate build();
descriptor: ()Lorg/eclipse/jgit/transport/PushCertificate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.received:Z
ifeq 1
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.enabled:Z
ifne 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
new org.eclipse.jgit.transport.PushCertificate
dup
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.version:Ljava/lang/String;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.pusher:Lorg/eclipse/jgit/transport/PushCertificateIdent;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.pushee:Ljava/lang/String;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.receivedNonce:Ljava/lang/String;
3: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceStatus:Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.commands:Ljava/util/List;
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.signature:Ljava/lang/String;
4: invokespecial org.eclipse.jgit.transport.PushCertificate.<init>:(Ljava/lang/String;Lorg/eclipse/jgit/transport/PushCertificateIdent;Ljava/lang/String;Ljava/lang/String;Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;Ljava/util/List;Ljava/lang/String;)V
5: areturn
6: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
astore 1
start local 1 7: new java.io.IOException
dup
aload 1
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
aload 1
invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
7 8 1 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
2 5 6 Class java.lang.IllegalArgumentException
Exceptions:
throws java.io.IOException
public boolean enabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.enabled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
public java.lang.String getAdvertiseNonce();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.sentNonce:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "push-cert="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
1 4 1 nonce Ljava/lang/String;
private java.lang.String sentNonce();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.sentNonce:Ljava/lang/String;
ifnonnull 4
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
ifnull 4
1: aload 0
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.db:Lorg/eclipse/jgit/lib/Repository;
2: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual java.util.concurrent.TimeUnit.toSeconds:(J)J
3: invokeinterface org.eclipse.jgit.transport.NonceGenerator.createNonce:(Lorg/eclipse/jgit/lib/Repository;J)Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.sentNonce:Ljava/lang/String;
4: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.sentNonce:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
private static java.lang.String (org.eclipse.jgit.transport.PushCertificateParser$StringReader, java.lang.String);
descriptor: (Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.eclipse.jgit.transport.PushCertificateParser$StringReader.read:()Ljava/lang/String;
aload 1
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 reader Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;
0 1 1 header Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
header
private static java.lang.String (java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifeq 2
1: new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.String.length:()I
aload 1
invokevirtual java.lang.String.length:()I
if_icmple 5
3: aload 0
aload 1
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 5
4: aload 0
aload 1
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.charAt:(I)C
bipush 32
if_icmpeq 8
5: StackMap locals:
StackMap stack:
new org.eclipse.jgit.errors.PackProtocolException
dup
6: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidField:Ljava/lang/String;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
7: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 s Ljava/lang/String;
0 9 1 header Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
header
public void (org.eclipse.jgit.transport.PacketLineIn, boolean);
descriptor: (Lorg/eclipse/jgit/transport/PacketLineIn;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader
dup
aload 1
invokespecial org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader.<init>:(Lorg/eclipse/jgit/transport/PacketLineIn;)V
iload 2
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.receiveHeader:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Z)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 2 1 pckIn Lorg/eclipse/jgit/transport/PacketLineIn;
0 2 2 stateless Z
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pckIn
stateless
private void (org.eclipse.jgit.transport.PushCertificateParser$StringReader, boolean);
descriptor: (Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
ldc "certificate version"
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Ljava/lang/String;)Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.version:Ljava/lang/String;
1: goto 4
StackMap locals:
StackMap stack: java.io.EOFException
2: pop
3: return
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.eclipse.jgit.transport.PushCertificateParser.received:Z
5: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.version:Ljava/lang/String;
ldc "0.1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
6: new org.eclipse.jgit.errors.PackProtocolException
dup
7: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidFieldValue:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "certificate version"
aastore
dup
iconst_1
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.version:Ljava/lang/String;
aastore
8: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 1
ldc "pusher"
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 10: aload 0
aload 3
invokestatic org.eclipse.jgit.transport.PushCertificateIdent.parse:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/PushCertificateIdent;
putfield org.eclipse.jgit.transport.PushCertificateParser.pusher:Lorg/eclipse/jgit/transport/PushCertificateIdent;
11: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.pusher:Lorg/eclipse/jgit/transport/PushCertificateIdent;
ifnonnull 16
12: new org.eclipse.jgit.errors.PackProtocolException
dup
13: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidFieldValue:Ljava/lang/String;
iconst_2
anewarray java.lang.Object
dup
iconst_0
14: ldc "pusher"
aastore
dup
iconst_1
aload 3
aastore
15: invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokeinterface org.eclipse.jgit.transport.PushCertificateParser$StringReader.read:()Ljava/lang/String;
astore 4
start local 4 17: aload 4
ldc "pushee"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 21
18: aload 0
aload 4
ldc "pushee"
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.pushee:Ljava/lang/String;
19: aload 0
aload 1
ldc "nonce"
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;Ljava/lang/String;)Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.receivedNonce:Ljava/lang/String;
20: goto 22
21: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 4
ldc "nonce"
invokestatic org.eclipse.jgit.transport.PushCertificateParser.parseHeader:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.receivedNonce:Ljava/lang/String;
22: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
ifnull 27
23: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceGenerator:Lorg/eclipse/jgit/transport/NonceGenerator;
24: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.receivedNonce:Ljava/lang/String;
aload 0
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.sentNonce:()Ljava/lang/String;
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.db:Lorg/eclipse/jgit/lib/Repository;
iload 2
aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.nonceSlopLimit:I
25: invokeinterface org.eclipse.jgit.transport.NonceGenerator.verify:(Ljava/lang/String;Ljava/lang/String;Lorg/eclipse/jgit/lib/Repository;ZI)Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;
26: goto 28
27: StackMap locals:
StackMap stack: org.eclipse.jgit.transport.PushCertificateParser
getstatic org.eclipse.jgit.transport.PushCertificate$NonceStatus.UNSOLICITED:Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;
28: StackMap locals: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.transport.PushCertificateParser$StringReader int java.lang.String java.lang.String
StackMap stack: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.transport.PushCertificate$NonceStatus
putfield org.eclipse.jgit.transport.PushCertificateParser.nonceStatus:Lorg/eclipse/jgit/transport/PushCertificate$NonceStatus;
29: aload 1
invokeinterface org.eclipse.jgit.transport.PushCertificateParser$StringReader.read:()Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifne 37
30: new org.eclipse.jgit.errors.PackProtocolException
dup
31: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidHeader:Ljava/lang/String;
32: invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 33: StackMap locals: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.transport.PushCertificateParser$StringReader int
StackMap stack: java.io.EOFException
astore 3
start local 3 34: new org.eclipse.jgit.errors.PackProtocolException
dup
35: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidHeader:Ljava/lang/String;
aload 3
36: invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 37: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 38 1 reader Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;
0 38 2 stateless Z
10 33 3 rawPusher Ljava/lang/String;
17 33 4 next Ljava/lang/String;
34 37 3 eof Ljava/io/EOFException;
Exception table:
from to target type
0 1 2 Class java.io.EOFException
0 3 33 Class java.io.EOFException
4 33 33 Class java.io.EOFException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
stateless
public void receiveSignature(org.eclipse.jgit.transport.PacketLineIn);
descriptor: (Lorg/eclipse/jgit/transport/PacketLineIn;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader
dup
aload 1
invokespecial org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader.<init>:(Lorg/eclipse/jgit/transport/PacketLineIn;)V
astore 2
start local 2 1: aload 0
aload 2
invokevirtual org.eclipse.jgit.transport.PushCertificateParser.receiveSignature:(Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;)V
2: aload 2
invokeinterface org.eclipse.jgit.transport.PushCertificateParser$StringReader.read:()Ljava/lang/String;
ldc "push-cert-end"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 6
3: new org.eclipse.jgit.errors.PackProtocolException
dup
4: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidSignature:Ljava/lang/String;
5: invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: org.eclipse.jgit.transport.PushCertificateParser$StringReader
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 7 1 pckIn Lorg/eclipse/jgit/transport/PacketLineIn;
1 7 2 reader Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
pckIn
private void receiveSignature(org.eclipse.jgit.transport.PushCertificateParser$StringReader);
descriptor: (Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
putfield org.eclipse.jgit.transport.PushCertificateParser.received:Z
1: new java.lang.StringBuilder
dup
ldc "-----BEGIN PGP SIGNATURE-----"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
astore 2
start local 2 2: goto 4
start local 3 3: StackMap locals: java.lang.StringBuilder java.lang.String
StackMap stack:
aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.eclipse.jgit.transport.PushCertificateParser$StringReader.read:()Ljava/lang/String;
dup
astore 3
start local 3 5: ldc "-----END PGP SIGNATURE-----"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
6: aload 0
aload 2
ldc "-----END PGP SIGNATURE-----"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.eclipse.jgit.transport.PushCertificateParser.signature:Ljava/lang/String;
end local 3 end local 2 7: goto 12
StackMap locals: org.eclipse.jgit.transport.PushCertificateParser org.eclipse.jgit.transport.PushCertificateParser$StringReader
StackMap stack: java.io.EOFException
8: astore 2
start local 2 9: new org.eclipse.jgit.errors.PackProtocolException
dup
10: invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
getfield org.eclipse.jgit.internal.JGitText.pushCertificateInvalidSignature:Ljava/lang/String;
aload 2
11: invokespecial org.eclipse.jgit.errors.PackProtocolException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 13 1 reader Lorg/eclipse/jgit/transport/PushCertificateParser$StringReader;
2 7 2 sig Ljava/lang/StringBuilder;
3 4 3 line Ljava/lang/String;
5 7 3 line Ljava/lang/String;
9 12 2 eof Ljava/io/EOFException;
Exception table:
from to target type
1 7 8 Class java.io.EOFException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
reader
public void addCommand(org.eclipse.jgit.transport.ReceiveCommand);
descriptor: (Lorg/eclipse/jgit/transport/ReceiveCommand;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.commands:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 2 1 cmd Lorg/eclipse/jgit/transport/ReceiveCommand;
MethodParameters:
Name Flags
cmd
public void addCommand(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.eclipse.jgit.transport.PushCertificateParser.commands:Ljava/util/List;
aload 1
invokestatic org.eclipse.jgit.transport.ReceivePack.parseCommand:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/ReceiveCommand;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/transport/PushCertificateParser;
0 2 1 line Ljava/lang/String;
Exceptions:
throws org.eclipse.jgit.errors.PackProtocolException
MethodParameters:
Name Flags
line
}
SourceFile: "PushCertificateParser.java"
NestMembers:
org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader org.eclipse.jgit.transport.PushCertificateParser$StreamReader org.eclipse.jgit.transport.PushCertificateParser$StringReader
InnerClasses:
public final NonceStatus = org.eclipse.jgit.transport.PushCertificate$NonceStatus of org.eclipse.jgit.transport.PushCertificate
private PacketLineReader = org.eclipse.jgit.transport.PushCertificateParser$PacketLineReader of org.eclipse.jgit.transport.PushCertificateParser
private StreamReader = org.eclipse.jgit.transport.PushCertificateParser$StreamReader of org.eclipse.jgit.transport.PushCertificateParser
private abstract StringReader = org.eclipse.jgit.transport.PushCertificateParser$StringReader of org.eclipse.jgit.transport.PushCertificateParser