Example #1
0
 @Override
 public void onStop() {
   if (mWireables != null) {
     for (Wireable wireable : mWireables) {
       wireable.onStop();
     }
   }
 }
Example #2
0
 private Wireable getWireable(Class<? extends Wireable> wireClass) {
   if (mWireables == null) {
     return null;
   }
   for (Wireable wireable : mWireables) {
     if (wireClass.equals(wireable.getClass())) {
       return wireable;
     }
   }
   return null;
 }
Example #3
0
  @SuppressWarnings("unchecked")
  public <T extends Wireable> T unwire(Class<T> wireClass) {
    assertObjectAndWorkerThread(wireClass);
    Context context = mImpl.getNotNullContext();

    Wireable wireable = getWireable(wireClass);
    if (wireable != null) {

      if (context instanceof Application || context instanceof Service) {
        wireable.onStop();
        wireable.onDestroy();
      }

      mWireables.remove(wireable);
    }
    return (T) wireable;
  }
Example #4
0
 @Override
 public void onDestroy() {
   if (mWireables != null) {
     for (Wireable wireable : mWireables) {
       wireable.onDestroy();
     }
   }
   synchronized (this) {
     if (mDelayedTasks != null && mDelayedTasks.size() > 0) {
       Handler handler = getMainHandlerNotNull();
       Collection<Task> tasks = mDelayedTasks.values();
       for (Task task : tasks) {
         handler.removeCallbacks(task);
         task.recycle();
       }
       mDelayedTasks.clear();
     }
   }
 }
Example #5
0
  public TinyBus wire(Wireable wireable) {
    assertObjectAndWorkerThread(wireable);
    Context context = mImpl.getNotNullContext();

    if (mWireables == null) {
      mWireables = new ArrayList<Wireable>();
    }
    mWireables.add(wireable);

    wireable.onCreate(this, context.getApplicationContext());
    wireable.assertSuperOnCreateCalled();

    if (context instanceof Application || context instanceof Service) {
      wireable.onStart();
    }

    // TODO, what to do with already started activity?
    return this;
  }