final class android.content.ContentResolver$ParcelFileDescriptorInner extends android.os.ParcelFileDescriptor
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.content.ContentResolver$ParcelFileDescriptorInner
super_class: android.os.ParcelFileDescriptor
{
private final android.content.IContentProvider mContentProvider;
descriptor: Landroid/content/IContentProvider;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicBoolean mProviderReleased;
descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final android.content.ContentResolver this$0;
descriptor: Landroid/content/ContentResolver;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(android.content.ContentResolver, android.os.ParcelFileDescriptor, android.content.IContentProvider);
descriptor: (Landroid/content/ContentResolver;Landroid/os/ParcelFileDescriptor;Landroid/content/IContentProvider;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield android.content.ContentResolver$ParcelFileDescriptorInner.this$0:Landroid/content/ContentResolver;
1: aload 0
aload 2
invokespecial android.os.ParcelFileDescriptor.<init>:(Landroid/os/ParcelFileDescriptor;)V
2: aload 0
new java.util.concurrent.atomic.AtomicBoolean
dup
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
putfield android.content.ContentResolver$ParcelFileDescriptorInner.mProviderReleased:Ljava/util/concurrent/atomic/AtomicBoolean;
3: aload 0
aload 3
putfield android.content.ContentResolver$ParcelFileDescriptorInner.mContentProvider:Landroid/content/IContentProvider;
4: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/content/ContentResolver$ParcelFileDescriptorInner;
0 5 2 pfd Landroid/os/ParcelFileDescriptor;
0 5 3 icp Landroid/content/IContentProvider;
MethodParameters:
Name Flags
this$0 final
pfd
icp
public void releaseResources();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield android.content.ContentResolver$ParcelFileDescriptorInner.mProviderReleased:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
ifeq 2
1: aload 0
getfield android.content.ContentResolver$ParcelFileDescriptorInner.this$0:Landroid/content/ContentResolver;
aload 0
getfield android.content.ContentResolver$ParcelFileDescriptorInner.mContentProvider:Landroid/content/IContentProvider;
invokevirtual android.content.ContentResolver.releaseProvider:(Landroid/content/IContentProvider;)Z
pop
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/content/ContentResolver$ParcelFileDescriptorInner;
}
SourceFile: "ContentResolver.java"
NestHost: android.content.ContentResolver
InnerClasses:
private final ParcelFileDescriptorInner = android.content.ContentResolver$ParcelFileDescriptorInner of android.content.ContentResolver