98 lines
1.8 KiB
Plaintext
98 lines
1.8 KiB
Plaintext
|
@startuml
|
||
|
|
||
|
|
||
|
Actor Activity
|
||
|
participant "AbstractListFragment" as A
|
||
|
participant "AbstractCursorListFragment" as B
|
||
|
participant "ConcreteCursorListFragment" as C
|
||
|
|
||
|
Activity -> A: onCreate
|
||
|
activate A
|
||
|
A -> C: createAdapter()
|
||
|
activate C
|
||
|
C --> A: return adapter
|
||
|
deactivate C
|
||
|
deactivate A
|
||
|
|
||
|
Activity -> B: onCreateView
|
||
|
activate B
|
||
|
B -> A: onCreateView
|
||
|
deactivate B
|
||
|
activate A
|
||
|
A -> A: connect this class as swipe refresh listener
|
||
|
A -> A: setup gridview
|
||
|
activate A
|
||
|
A -> B: createOnItemClickListener
|
||
|
activate B
|
||
|
B --> A: return click listener
|
||
|
deactivate B
|
||
|
deactivate A
|
||
|
A -> A: restore saved state (if any)
|
||
|
A -> A: enable options menu
|
||
|
A -> B:
|
||
|
deactivate A
|
||
|
activate B
|
||
|
B -> B: restore saved search query (if any)
|
||
|
activate B
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
|
||
|
Activity -> B: onActivityCreated
|
||
|
activate B
|
||
|
B -> LoaderManager: initialize cursor loader
|
||
|
activate LoaderManager
|
||
|
LoaderManager -> B: onCreateLoader
|
||
|
B -> C: createCursorLoader
|
||
|
activate B
|
||
|
activate C
|
||
|
C --> B: return cursorLoader
|
||
|
deactivate C
|
||
|
B --> LoaderManager: return cursorLoader
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
deactivate LoaderManager
|
||
|
|
||
|
Activity -> B: onStart
|
||
|
Activate B
|
||
|
B ->> LoaderManager: onStart
|
||
|
Activate LoaderManager
|
||
|
B -> B: bind to library sync service
|
||
|
activate B
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
LoaderManager ->> B: onLoadFinished
|
||
|
|
||
|
Activity -> B: onResume
|
||
|
Activate B
|
||
|
B -> B: register to eventbus
|
||
|
activate B
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
== UI active ==
|
||
|
...
|
||
|
Activity ->> B: user selects list item
|
||
|
activate B
|
||
|
B -> B: saveSearchState
|
||
|
activate B
|
||
|
deactivate B
|
||
|
B -> C: onListItemClicked(view)
|
||
|
Activate C
|
||
|
C -> Activity: onItemSelected
|
||
|
note over Activity: starts corresponding InfoFragment
|
||
|
deactivate C
|
||
|
deactivate B
|
||
|
== UI inactive ==
|
||
|
Activity -> B: onPause
|
||
|
activate B
|
||
|
B -> B: unregister from eventbus
|
||
|
activate B
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
|
||
|
Activity -> B: onStop
|
||
|
activate B
|
||
|
B -> B: unbind from library sync service
|
||
|
activate B
|
||
|
deactivate B
|
||
|
deactivate B
|
||
|
@enduml
|