public class org.eclipse.jgit.gitrepo.RepoProject$CopyFile extends org.eclipse.jgit.gitrepo.RepoProject$ReferenceFile
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.jgit.gitrepo.RepoProject$CopyFile
super_class: org.eclipse.jgit.gitrepo.RepoProject$ReferenceFile
{
public void <init>(org.eclipse.jgit.lib.Repository, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Lorg/eclipse/jgit/lib/Repository;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial org.eclipse.jgit.gitrepo.RepoProject$ReferenceFile.<init>:(Lorg/eclipse/jgit/lib/Repository;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jgit/gitrepo/RepoProject$CopyFile;
0 2 1 repo Lorg/eclipse/jgit/lib/Repository;
0 2 2 path Ljava/lang/String;
0 2 3 src Ljava/lang/String;
0 2 4 dest Ljava/lang/String;
MethodParameters:
Name Flags
repo
path
src
dest
public void copy();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=1
start local 0 0: new java.io.File
dup
aload 0
getfield org.eclipse.jgit.gitrepo.RepoProject$CopyFile.repo:Lorg/eclipse/jgit/lib/Repository;
invokevirtual org.eclipse.jgit.lib.Repository.getWorkTree:()Ljava/io/File;
1: new java.lang.StringBuilder
dup
aload 0
getfield org.eclipse.jgit.gitrepo.RepoProject$CopyFile.path:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.eclipse.jgit.gitrepo.RepoProject$CopyFile.src:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 1
start local 1 3: new java.io.File
dup
aload 0
getfield org.eclipse.jgit.gitrepo.RepoProject$CopyFile.repo:Lorg/eclipse/jgit/lib/Repository;
invokevirtual org.eclipse.jgit.lib.Repository.getWorkTree:()Ljava/io/File;
aload 0
getfield org.eclipse.jgit.gitrepo.RepoProject$CopyFile.dest:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 2
start local 2 4: aconst_null
astore 3
aconst_null
astore 4
5: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 5
start local 5 6: new java.io.FileOutputStream
dup
aload 2
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 6
start local 6 7: aload 5
invokevirtual java.io.FileInputStream.getChannel:()Ljava/nio/channels/FileChannel;
astore 7
start local 7 8: aload 6
invokevirtual java.io.FileOutputStream.getChannel:()Ljava/nio/channels/FileChannel;
aload 7
lconst_0
aload 7
invokevirtual java.nio.channels.FileChannel.size:()J
invokevirtual java.nio.channels.FileChannel.transferFrom:(Ljava/nio/channels/ReadableByteChannel;JJ)J
pop2
end local 7 9: aload 6
ifnull 12
aload 6
invokevirtual java.io.FileOutputStream.close:()V
goto 12
StackMap locals: org.eclipse.jgit.gitrepo.RepoProject$CopyFile java.io.File java.io.File java.lang.Throwable java.lang.Throwable java.io.FileInputStream java.io.FileOutputStream
StackMap stack: java.lang.Throwable
10: astore 3
aload 6
ifnull 11
aload 6
invokevirtual java.io.FileOutputStream.close:()V
end local 6 StackMap locals:
StackMap stack:
11: aload 3
athrow
StackMap locals:
StackMap stack:
12: aload 5
ifnull 20
aload 5
invokevirtual java.io.FileInputStream.close:()V
goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 4
aload 3
ifnonnull 14
aload 4
astore 3
goto 15
StackMap locals:
StackMap stack:
14: aload 3
aload 4
if_acmpeq 15
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 5
ifnull 16
aload 5
invokevirtual java.io.FileInputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
16: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
17: astore 4
aload 3
ifnonnull 18
aload 4
astore 3
goto 19
StackMap locals:
StackMap stack:
18: aload 3
aload 4
if_acmpeq 19
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
19: aload 3
athrow
20: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual java.io.File.canExecute:()Z
invokevirtual java.io.File.setExecutable:(Z)Z
pop
21: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/eclipse/jgit/gitrepo/RepoProject$CopyFile;
3 22 1 srcFile Ljava/io/File;
4 22 2 destFile Ljava/io/File;
6 16 5 input Ljava/io/FileInputStream;
7 11 6 output Ljava/io/FileOutputStream;
8 9 7 channel Ljava/nio/channels/FileChannel;
Exception table:
from to target type
7 9 10 any
6 12 13 any
5 17 17 any
Exceptions:
throws java.io.IOException
}
SourceFile: "RepoProject.java"
NestHost: org.eclipse.jgit.gitrepo.RepoProject
InnerClasses:
public CopyFile = org.eclipse.jgit.gitrepo.RepoProject$CopyFile of org.eclipse.jgit.gitrepo.RepoProject
public ReferenceFile = org.eclipse.jgit.gitrepo.RepoProject$ReferenceFile of org.eclipse.jgit.gitrepo.RepoProject