public abstract class org.apache.commons.vfs2.provider.AbstractLayeredFileProvider extends org.apache.commons.vfs2.provider.AbstractFileProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.commons.vfs2.provider.AbstractLayeredFileProvider
  super_class: org.apache.commons.vfs2.provider.AbstractFileProvider
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
         0: .line 31
            aload 0 /* this */
            invokespecial org.apache.commons.vfs2.provider.AbstractFileProvider.<init>:()V
         1: .line 32
            aload 0 /* this */
            invokestatic org.apache.commons.vfs2.provider.LayeredFileNameParser.getInstance:()Lorg/apache/commons/vfs2/provider/LayeredFileNameParser;
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.setFileNameParser:(Lorg/apache/commons/vfs2/provider/FileNameParser;)V
         2: .line 33
            return
        end local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/vfs2/provider/AbstractLayeredFileProvider;

  public org.apache.commons.vfs2.FileObject findFile(org.apache.commons.vfs2.FileObject, java.lang.String, org.apache.commons.vfs2.FileSystemOptions);
    descriptor: (Lorg/apache/commons/vfs2/FileObject;Ljava/lang/String;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
        start local 1 // org.apache.commons.vfs2.FileObject baseFile
        start local 2 // java.lang.String uri
        start local 3 // org.apache.commons.vfs2.FileSystemOptions fileSystemOptions
         0: .line 48
            aload 0 /* this */
            aload 1 /* baseFile */
            ifnull 1
            aload 1 /* baseFile */
            invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
            goto 2
      StackMap locals:
      StackMap stack: org.apache.commons.vfs2.provider.AbstractLayeredFileProvider
         1: aconst_null
      StackMap locals: org.apache.commons.vfs2.provider.AbstractLayeredFileProvider org.apache.commons.vfs2.FileObject java.lang.String org.apache.commons.vfs2.FileSystemOptions
      StackMap stack: org.apache.commons.vfs2.provider.AbstractLayeredFileProvider org.apache.commons.vfs2.FileName
         2: aload 2 /* uri */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.parseUri:(Lorg/apache/commons/vfs2/FileName;Ljava/lang/String;)Lorg/apache/commons/vfs2/FileName;
            checkcast org.apache.commons.vfs2.provider.LayeredFileName
            astore 4 /* name */
        start local 4 // org.apache.commons.vfs2.provider.LayeredFileName name
         3: .line 53
            aload 4 /* name */
            invokevirtual org.apache.commons.vfs2.provider.LayeredFileName.getOuterName:()Lorg/apache/commons/vfs2/FileName;
            astore 5 /* fileName */
        start local 5 // org.apache.commons.vfs2.FileName fileName
         4: .line 54
            aload 0 /* this */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.getContext:()Lorg/apache/commons/vfs2/provider/VfsComponentContext;
            aload 1 /* baseFile */
            aload 5 /* fileName */
            invokeinterface org.apache.commons.vfs2.FileName.getURI:()Ljava/lang/String;
            aload 3 /* fileSystemOptions */
            invokeinterface org.apache.commons.vfs2.provider.VfsComponentContext.resolveFile:(Lorg/apache/commons/vfs2/FileObject;Ljava/lang/String;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileObject;
            astore 6 /* file */
        start local 6 // org.apache.commons.vfs2.FileObject file
         5: .line 57
            aload 0 /* this */
            aload 4 /* name */
            invokevirtual org.apache.commons.vfs2.provider.LayeredFileName.getScheme:()Ljava/lang/String;
            aload 6 /* file */
            aload 3 /* fileSystemOptions */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.createFileSystem:(Ljava/lang/String;Lorg/apache/commons/vfs2/FileObject;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileObject;
            astore 7 /* rootFile */
        start local 7 // org.apache.commons.vfs2.FileObject rootFile
         6: .line 60
            aload 7 /* rootFile */
            aload 4 /* name */
            invokevirtual org.apache.commons.vfs2.provider.LayeredFileName.getPath:()Ljava/lang/String;
            invokeinterface org.apache.commons.vfs2.FileObject.resolveFile:(Ljava/lang/String;)Lorg/apache/commons/vfs2/FileObject;
            areturn
        end local 7 // org.apache.commons.vfs2.FileObject rootFile
        end local 6 // org.apache.commons.vfs2.FileObject file
        end local 5 // org.apache.commons.vfs2.FileName fileName
        end local 4 // org.apache.commons.vfs2.provider.LayeredFileName name
        end local 3 // org.apache.commons.vfs2.FileSystemOptions fileSystemOptions
        end local 2 // java.lang.String uri
        end local 1 // org.apache.commons.vfs2.FileObject baseFile
        end local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/apache/commons/vfs2/provider/AbstractLayeredFileProvider;
            0    7     1           baseFile  Lorg/apache/commons/vfs2/FileObject;
            0    7     2                uri  Ljava/lang/String;
            0    7     3  fileSystemOptions  Lorg/apache/commons/vfs2/FileSystemOptions;
            3    7     4               name  Lorg/apache/commons/vfs2/provider/LayeredFileName;
            4    7     5           fileName  Lorg/apache/commons/vfs2/FileName;
            5    7     6               file  Lorg/apache/commons/vfs2/FileObject;
            6    7     7           rootFile  Lorg/apache/commons/vfs2/FileObject;
    Exceptions:
      throws org.apache.commons.vfs2.FileSystemException
    MethodParameters:
                   Name  Flags
      baseFile           final
      uri                final
      fileSystemOptions  final

  public synchronized org.apache.commons.vfs2.FileObject createFileSystem(java.lang.String, org.apache.commons.vfs2.FileObject, org.apache.commons.vfs2.FileSystemOptions);
    descriptor: (Ljava/lang/String;Lorg/apache/commons/vfs2/FileObject;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileObject;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
        start local 1 // java.lang.String scheme
        start local 2 // org.apache.commons.vfs2.FileObject file
        start local 3 // org.apache.commons.vfs2.FileSystemOptions fileSystemOptions
         0: .line 76
            aload 2 /* file */
            invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
            astore 4 /* rootName */
        start local 4 // org.apache.commons.vfs2.FileName rootName
         1: .line 77
            aload 0 /* this */
            aload 4 /* rootName */
            aload 3 /* fileSystemOptions */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.findFileSystem:(Ljava/lang/Comparable;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileSystem;
            astore 5 /* fs */
        start local 5 // org.apache.commons.vfs2.FileSystem fs
         2: .line 78
            aload 5 /* fs */
            ifnonnull 5
         3: .line 80
            aload 0 /* this */
            aload 1 /* scheme */
            aload 2 /* file */
            aload 3 /* fileSystemOptions */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.doCreateFileSystem:(Ljava/lang/String;Lorg/apache/commons/vfs2/FileObject;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileSystem;
            astore 5 /* fs */
         4: .line 81
            aload 0 /* this */
            aload 4 /* rootName */
            aload 5 /* fs */
            invokevirtual org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.addFileSystem:(Ljava/lang/Comparable;Lorg/apache/commons/vfs2/FileSystem;)V
         5: .line 83
      StackMap locals: org.apache.commons.vfs2.FileName org.apache.commons.vfs2.FileSystem
      StackMap stack:
            aload 5 /* fs */
            invokeinterface org.apache.commons.vfs2.FileSystem.getRoot:()Lorg/apache/commons/vfs2/FileObject;
            areturn
        end local 5 // org.apache.commons.vfs2.FileSystem fs
        end local 4 // org.apache.commons.vfs2.FileName rootName
        end local 3 // org.apache.commons.vfs2.FileSystemOptions fileSystemOptions
        end local 2 // org.apache.commons.vfs2.FileObject file
        end local 1 // java.lang.String scheme
        end local 0 // org.apache.commons.vfs2.provider.AbstractLayeredFileProvider this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lorg/apache/commons/vfs2/provider/AbstractLayeredFileProvider;
            0    6     1             scheme  Ljava/lang/String;
            0    6     2               file  Lorg/apache/commons/vfs2/FileObject;
            0    6     3  fileSystemOptions  Lorg/apache/commons/vfs2/FileSystemOptions;
            1    6     4           rootName  Lorg/apache/commons/vfs2/FileName;
            2    6     5                 fs  Lorg/apache/commons/vfs2/FileSystem;
    Exceptions:
      throws org.apache.commons.vfs2.FileSystemException
    MethodParameters:
                   Name  Flags
      scheme             final
      file               final
      fileSystemOptions  final

  protected abstract org.apache.commons.vfs2.FileSystem doCreateFileSystem(java.lang.String, org.apache.commons.vfs2.FileObject, org.apache.commons.vfs2.FileSystemOptions);
    descriptor: (Ljava/lang/String;Lorg/apache/commons/vfs2/FileObject;Lorg/apache/commons/vfs2/FileSystemOptions;)Lorg/apache/commons/vfs2/FileSystem;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws org.apache.commons.vfs2.FileSystemException
    MethodParameters:
                   Name  Flags
      scheme             final
      file               final
      fileSystemOptions  final
}
SourceFile: "AbstractLayeredFileProvider.java"