abstract class android.app.SystemServiceRegistry$StaticServiceFetcher<T> implements android.app.SystemServiceRegistry$ServiceFetcher<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: android.app.SystemServiceRegistry$StaticServiceFetcher
  super_class: java.lang.Object
{
  private T mCachedInstance;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Signature: TT;

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.app.SystemServiceRegistry$StaticServiceFetcher this
         0: .line 1136
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // android.app.SystemServiceRegistry$StaticServiceFetcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/app/SystemServiceRegistry$StaticServiceFetcher<TT;>;

  public final T getService(android.app.ContextImpl);
    descriptor: (Landroid/app/ContextImpl;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // android.app.SystemServiceRegistry$StaticServiceFetcher this
        start local 1 // android.app.ContextImpl ctx
         0: .line 1141
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 1142
            aload 0 /* this */
            getfield android.app.SystemServiceRegistry$StaticServiceFetcher.mCachedInstance:Ljava/lang/Object;
            ifnonnull 6
         2: .line 1144
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual android.app.SystemServiceRegistry$StaticServiceFetcher.createService:()Ljava/lang/Object;
            putfield android.app.SystemServiceRegistry$StaticServiceFetcher.mCachedInstance:Ljava/lang/Object;
         3: .line 1145
            goto 6
      StackMap locals: android.app.SystemServiceRegistry$StaticServiceFetcher android.app.ContextImpl android.app.SystemServiceRegistry$StaticServiceFetcher
      StackMap stack: android.os.ServiceManager$ServiceNotFoundException
         4: astore 3 /* e */
        start local 3 // android.os.ServiceManager$ServiceNotFoundException e
         5: .line 1146
            aload 3 /* e */
            invokestatic android.app.SystemServiceRegistry.onServiceNotFound:(Landroid/os/ServiceManager$ServiceNotFoundException;)V
        end local 3 // android.os.ServiceManager$ServiceNotFoundException e
         6: .line 1149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.app.SystemServiceRegistry$StaticServiceFetcher.mCachedInstance:Ljava/lang/Object;
            aload 2
            monitorexit
         7: areturn
         8: .line 1141
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         9: athrow
        end local 1 // android.app.ContextImpl ctx
        end local 0 // android.app.SystemServiceRegistry$StaticServiceFetcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Landroid/app/SystemServiceRegistry$StaticServiceFetcher<TT;>;
            0   10     1   ctx  Landroid/app/ContextImpl;
            5    6     3     e  Landroid/os/ServiceManager$ServiceNotFoundException;
      Exception table:
        from    to  target  type
           2     3       4  Class android.os.ServiceManager$ServiceNotFoundException
           1     7       8  any
           8     9       8  any
    Signature: (Landroid/app/ContextImpl;)TT;
    MethodParameters:
      Name  Flags
      ctx   

  public abstract T createService();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws android.os.ServiceManager$ServiceNotFoundException
    Signature: ()TT;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;Landroid/app/SystemServiceRegistry$ServiceFetcher<TT;>;
SourceFile: "SystemServiceRegistry.java"
NestHost: android.app.SystemServiceRegistry
InnerClasses:
  abstract ServiceFetcher = android.app.SystemServiceRegistry$ServiceFetcher of android.app.SystemServiceRegistry
  abstract StaticServiceFetcher = android.app.SystemServiceRegistry$StaticServiceFetcher of android.app.SystemServiceRegistry
  public ServiceNotFoundException = android.os.ServiceManager$ServiceNotFoundException of android.os.ServiceManager