class android.widget.CursorTreeAdapter$MyCursorHelper
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.widget.CursorTreeAdapter$MyCursorHelper
super_class: java.lang.Object
{
private android.database.Cursor mCursor;
descriptor: Landroid/database/Cursor;
flags: (0x0002) ACC_PRIVATE
private boolean mDataValid;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int mRowIDColumn;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private android.widget.CursorTreeAdapter$MyCursorHelper$MyContentObserver mContentObserver;
descriptor: Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyContentObserver;
flags: (0x0002) ACC_PRIVATE
private android.widget.CursorTreeAdapter$MyCursorHelper$MyDataSetObserver mDataSetObserver;
descriptor: Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyDataSetObserver;
flags: (0x0002) ACC_PRIVATE
final android.widget.CursorTreeAdapter this$0;
descriptor: Landroid/widget/CursorTreeAdapter;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(android.widget.CursorTreeAdapter, android.database.Cursor);
descriptor: (Landroid/widget/CursorTreeAdapter;Landroid/database/Cursor;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 2 0: aload 0
aload 1
putfield android.widget.CursorTreeAdapter$MyCursorHelper.this$0:Landroid/widget/CursorTreeAdapter;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 2
ifnull 2
iconst_1
goto 3
StackMap locals: android.widget.CursorTreeAdapter$MyCursorHelper android.widget.CursorTreeAdapter android.database.Cursor
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 3
start local 3 4: aload 0
aload 2
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
5: aload 0
iload 3
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
6: aload 0
iload 3
ifeq 7
aload 2
ldc "_id"
invokeinterface android.database.Cursor.getColumnIndex:(Ljava/lang/String;)I
goto 8
StackMap locals: android.widget.CursorTreeAdapter$MyCursorHelper android.widget.CursorTreeAdapter android.database.Cursor int
StackMap stack: android.widget.CursorTreeAdapter$MyCursorHelper
7: iconst_m1
StackMap locals: android.widget.CursorTreeAdapter$MyCursorHelper android.widget.CursorTreeAdapter android.database.Cursor int
StackMap stack: android.widget.CursorTreeAdapter$MyCursorHelper int
8: putfield android.widget.CursorTreeAdapter$MyCursorHelper.mRowIDColumn:I
9: aload 0
new android.widget.CursorTreeAdapter$MyCursorHelper$MyContentObserver
dup
aload 0
invokespecial android.widget.CursorTreeAdapter$MyCursorHelper$MyContentObserver.<init>:(Landroid/widget/CursorTreeAdapter$MyCursorHelper;)V
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mContentObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyContentObserver;
10: aload 0
new android.widget.CursorTreeAdapter$MyCursorHelper$MyDataSetObserver
dup
aload 0
invokespecial android.widget.CursorTreeAdapter$MyCursorHelper$MyDataSetObserver.<init>:(Landroid/widget/CursorTreeAdapter$MyCursorHelper;)V
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataSetObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyDataSetObserver;
11: iload 3
ifeq 14
12: aload 2
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mContentObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyContentObserver;
invokeinterface android.database.Cursor.registerContentObserver:(Landroid/database/ContentObserver;)V
13: aload 2
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataSetObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyDataSetObserver;
invokeinterface android.database.Cursor.registerDataSetObserver:(Landroid/database/DataSetObserver;)V
14: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
0 15 2 cursor Landroid/database/Cursor;
4 15 3 cursorPresent Z
MethodParameters:
Name Flags
this$0 final
cursor
android.database.Cursor getCursor();
descriptor: ()Landroid/database/Cursor;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
int getCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
ifeq 2
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
ifnull 2
1: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
invokeinterface android.database.Cursor.getCount:()I
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
long getId(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
ifeq 4
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
ifnull 4
1: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
iload 1
invokeinterface android.database.Cursor.moveToPosition:(I)Z
ifeq 3
2: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mRowIDColumn:I
invokeinterface android.database.Cursor.getLong:(I)J
lreturn
3: StackMap locals:
StackMap stack:
lconst_0
lreturn
4: StackMap locals:
StackMap stack:
lconst_0
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
0 5 1 position I
MethodParameters:
Name Flags
position
android.database.Cursor moveTo(int);
descriptor: (I)Landroid/database/Cursor;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
ifeq 2
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
ifnull 2
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
iload 1
invokeinterface android.database.Cursor.moveToPosition:(I)Z
ifeq 2
1: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
0 3 1 position I
MethodParameters:
Name Flags
position
void changeCursor(android.database.Cursor, boolean);
descriptor: (Landroid/database/Cursor;Z)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
if_acmpne 1
return
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.widget.CursorTreeAdapter$MyCursorHelper.deactivate:()V
2: aload 0
aload 1
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
3: aload 1
ifnull 10
4: aload 1
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mContentObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyContentObserver;
invokeinterface android.database.Cursor.registerContentObserver:(Landroid/database/ContentObserver;)V
5: aload 1
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataSetObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyDataSetObserver;
invokeinterface android.database.Cursor.registerDataSetObserver:(Landroid/database/DataSetObserver;)V
6: aload 0
aload 1
ldc "_id"
invokeinterface android.database.Cursor.getColumnIndex:(Ljava/lang/String;)I
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mRowIDColumn:I
7: aload 0
iconst_1
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
8: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.this$0:Landroid/widget/CursorTreeAdapter;
iload 2
invokevirtual android.widget.CursorTreeAdapter.notifyDataSetChanged:(Z)V
9: goto 13
10: StackMap locals:
StackMap stack:
aload 0
iconst_m1
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mRowIDColumn:I
11: aload 0
iconst_0
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
12: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.this$0:Landroid/widget/CursorTreeAdapter;
invokevirtual android.widget.CursorTreeAdapter.notifyDataSetInvalidated:()V
13: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
0 14 1 cursor Landroid/database/Cursor;
0 14 2 releaseCursors Z
MethodParameters:
Name Flags
cursor
releaseCursors
void deactivate();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mContentObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyContentObserver;
invokeinterface android.database.Cursor.unregisterContentObserver:(Landroid/database/ContentObserver;)V
3: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataSetObserver:Landroid/widget/CursorTreeAdapter$MyCursorHelper$MyDataSetObserver;
invokeinterface android.database.Cursor.unregisterDataSetObserver:(Landroid/database/DataSetObserver;)V
4: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
invokeinterface android.database.Cursor.close:()V
5: aload 0
aconst_null
putfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
boolean isValid();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mDataValid:Z
ifeq 1
aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.mCursor:Landroid/database/Cursor;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/CursorTreeAdapter$MyCursorHelper;
static android.widget.CursorTreeAdapter access$0(android.widget.CursorTreeAdapter$MyCursorHelper);
descriptor: (Landroid/widget/CursorTreeAdapter$MyCursorHelper;)Landroid/widget/CursorTreeAdapter;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield android.widget.CursorTreeAdapter$MyCursorHelper.this$0:Landroid/widget/CursorTreeAdapter;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "CursorTreeAdapter.java"
NestHost: android.widget.CursorTreeAdapter
InnerClasses:
MyCursorHelper = android.widget.CursorTreeAdapter$MyCursorHelper of android.widget.CursorTreeAdapter
private MyContentObserver = android.widget.CursorTreeAdapter$MyCursorHelper$MyContentObserver of android.widget.CursorTreeAdapter$MyCursorHelper
private MyDataSetObserver = android.widget.CursorTreeAdapter$MyCursorHelper$MyDataSetObserver of android.widget.CursorTreeAdapter$MyCursorHelper