SYMBOL INDEX (86 symbols across 14 files) FILE: sample/src/main/java/com/techyourchance/threadposters/FakeDataFetcher.java class FakeDataFetcher (line 5) | public class FakeDataFetcher { class DataFetchException (line 7) | public static class DataFetchException extends Exception {} method getData (line 11) | @WorkerThread FILE: sample/src/main/java/com/techyourchance/threadposters/FetchDataUseCase.java class FetchDataUseCase (line 13) | public class FetchDataUseCase { type Listener (line 15) | public interface Listener { method onDataFetched (line 16) | void onDataFetched(String data); method onDataFetchFailed (line 17) | void onDataFetchFailed(); method FetchDataUseCase (line 27) | public FetchDataUseCase(FakeDataFetcher fakeDataFetcher, method registerListener (line 35) | public void registerListener(Listener listener) { method unregisterListener (line 39) | public void unregisterListener(Listener listener) { method fetchData (line 43) | public void fetchData() { method fetchDataSync (line 53) | @WorkerThread method notifyFailure (line 74) | @UiThread method notifySuccess (line 81) | @UiThread FILE: sample/src/main/java/com/techyourchance/threadposters/SampleActivity.java class SampleActivity (line 10) | public class SampleActivity extends AppCompatActivity implements FetchDa... method onCreate (line 19) | @Override method onStart (line 40) | @Override method onStop (line 46) | @Override method fetchData (line 52) | private void fetchData() { method onDataFetched (line 57) | @Override method showData (line 63) | private void showData(String data) { method onDataFetchFailed (line 69) | @Override method showError (line 75) | private void showError() { method showProgressIndicationAndHideOthers (line 80) | private void showProgressIndicationAndHideOthers() { method hideProgressIndication (line 87) | private void hideProgressIndication() { FILE: sample/src/main/java/com/techyourchance/threadposters/SampleApplication.java class SampleApplication (line 8) | public class SampleApplication extends Application { method getFetchDataUseCase (line 21) | public FetchDataUseCase getFetchDataUseCase() { FILE: sample/src/test/java/com/techyourchance/threadposters/FetchDataUseCaseTest.java class FetchDataUseCaseTest (line 15) | public class FetchDataUseCaseTest { method setup (line 27) | @Before method fetchData_successNoListeners_completesWithoutErrors (line 41) | @Test method fetchData_successMultipleListeners_notifiedWithCorrectData (line 56) | @Test method fetchData_failureMultipleListeners_notifiedOfFailure (line 74) | @Test method success (line 96) | private void success() throws FakeDataFetcher.DataFetchException { method failure (line 100) | private void failure() throws FakeDataFetcher.DataFetchException { FILE: threadposter/src/main/java/com/techyourchance/threadposter/BackgroundThreadPoster.java class BackgroundThreadPoster (line 8) | public class BackgroundThreadPoster { method BackgroundThreadPoster (line 15) | public BackgroundThreadPoster() { method post (line 23) | public void post(Runnable runnable) { method getThreadPoolExecutor (line 32) | protected final ThreadPoolExecutor getThreadPoolExecutor() { method getThreadFactory (line 41) | protected final ThreadFactory getThreadFactory() { method newThreadPoolExecutor (line 51) | protected ThreadPoolExecutor newThreadPoolExecutor() { FILE: threadposter/src/main/java/com/techyourchance/threadposter/UiThreadPoster.java class UiThreadPoster (line 6) | public class UiThreadPoster { method UiThreadPoster (line 10) | public UiThreadPoster() { method post (line 18) | public void post(Runnable runnable) { method getMainHandler (line 26) | protected Handler getMainHandler() { FILE: threadposter/src/main/java/com/techyourchance/threadposter/testdoubles/BackgroundThreadPosterTestDouble.java class BackgroundThreadPosterTestDouble (line 18) | class BackgroundThreadPosterTestDouble extends BackgroundThreadPoster { method post (line 26) | @Override method newThreadPoolExecutor (line 35) | @Override method join (line 66) | void join() { FILE: threadposter/src/main/java/com/techyourchance/threadposter/testdoubles/ThreadPostersTestDouble.java class ThreadPostersTestDouble (line 12) | public class ThreadPostersTestDouble { method join (line 19) | public void join() { method getBackgroundTestDouble (line 29) | public BackgroundThreadPoster getBackgroundTestDouble() { method getUiTestDouble (line 33) | public UiThreadPoster getUiTestDouble() { FILE: threadposter/src/main/java/com/techyourchance/threadposter/testdoubles/UiThreadPosterTestDouble.java class UiThreadPosterTestDouble (line 17) | class UiThreadPosterTestDouble extends UiThreadPoster { method getMainHandler (line 21) | @Override method post (line 28) | @Override method join (line 38) | void join() { FILE: threadposter/src/test/java/com/techyourchance/threadposter/BackgroundThreadPosterTest.java class BackgroundThreadPosterTest (line 11) | public class BackgroundThreadPosterTest { method setup (line 20) | @Before method execute_singleRunnable_executionSuccessful (line 25) | @Test method execute_multipleRunnablesIndependent_executionSuccessful (line 41) | @Test method execute_multipleRunnablesInterdependent_executionSuccessful (line 64) | @Test FILE: threadposter/src/test/java/com/techyourchance/threadposter/UiThreadPosterTest.java class UiThreadPosterTest (line 15) | public class UiThreadPosterTest { method setup (line 20) | @Before method execute_delegatesToUiHandler (line 32) | @Test FILE: threadposter/src/test/java/com/techyourchance/threadposter/testdoubles/BackgroundThreadPosterTestDoubleTest.java class BackgroundThreadPosterTestDoubleTest (line 15) | public class BackgroundThreadPosterTestDoubleTest { method setup (line 24) | @Before method executeThenJoin_singleRunnable_sideEffectsNotVisibleBeforeJoin (line 29) | @Test method executeThenJoin_singleRunnable_sideEffectsVisibleAfterJoin (line 46) | @Test method executeThenJoin_multipleRunnablesIndependent_sideEffectsNotVisibleBeforeJoin (line 63) | @Test method executeThenJoin_multipleRunnablesIndependent_sideEffectsVisibleAfterJoin (line 87) | @Test method executeThenJoin_multipleRunnablesInterdependent_sideEffectsNotVisibleBeforeJoin (line 111) | @Test method executeThenJoin_multipleRunnablesInterdependent_sideEffectsVisibleAfterJoin (line 138) | @Test method executeThenJoin_multipleNestedRunnablesInterdependent_sideEffectsVisibleAfterJoin (line 165) | @Test class Counter (line 202) | private class Counter { method increment (line 206) | private void increment() { method getCount (line 210) | private int getCount() { FILE: threadposter/src/test/java/com/techyourchance/threadposter/testdoubles/UiThreadPosterTestDoubleTest.java class UiThreadPosterTestDoubleTest (line 11) | public class UiThreadPosterTestDoubleTest { method setup (line 20) | @Before method executeThenJoin_singleRunnable_sideEffectNotVisibleBeforeJoin (line 25) | @Test method executeThenJoin_singleRunnable_sideEffectsVisibleAfterJoin (line 43) | @Test method executeThenJoin_multipleRunnables_sideEffectsNotVisibleBeforeJoin (line 61) | @Test method executeThenJoin_multipleRunnables_sideEffectsVisibleAfterJoinInOrder (line 92) | @Test method executeThenJoin_multipleNestedRunnables_sideEffectsVisibleAfterJoinInReversedOrder (line 124) | @Test class Appender (line 158) | private class Appender { method append (line 162) | private synchronized void append(String string) { method getString (line 166) | private synchronized String getString() {