Skip to content

Commit

Permalink
Add auto binding to default (build-int) dispatchers.
Browse files Browse the repository at this point in the history
Dispatchers extending those and already calling `LightCycles.bind` should remove it. It won't change any behavior, but calling it again adds unnecessary binding - which may be expensive due to the usage of reflexion. 

Fix #36
  • Loading branch information
glung authored Dec 10, 2016
1 parent 1836bdc commit 265478d
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package com.soundcloud.lightcycle;

import com.soundcloud.lightcycle.util.Preconditions;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.view.MenuItem;

import com.soundcloud.lightcycle.util.Preconditions;

import java.util.HashSet;
import java.util.Set;

Expand All @@ -28,6 +28,7 @@ public void bind(ActivityLightCycle<T> lightCycle) {

@Override
public void onCreate(T activity, @Nullable Bundle bundle) {
LightCycles.bind(this);
for (ActivityLightCycle<T> component : activityLightCycles) {
component.onCreate(activity, bundle);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package com.soundcloud.lightcycle;

import com.soundcloud.lightcycle.util.Preconditions;

import android.annotation.TargetApi;
import android.app.Activity;
import android.app.Fragment;
Expand All @@ -10,8 +12,6 @@
import android.view.MenuItem;
import android.view.View;

import com.soundcloud.lightcycle.util.Preconditions;

import java.util.HashSet;
import java.util.Set;

Expand All @@ -32,13 +32,15 @@ public void bind(FragmentLightCycle<T> lightCycle) {

@Override
public void onAttach(T fragment, Activity activity) {
LightCycles.bind(this);
for (FragmentLightCycle<T> component : fragmentLightCycles) {
component.onAttach(fragment, activity);
}
}

@Override
public void onAttach(T fragment, Context context) {
LightCycles.bind(this);
for (FragmentLightCycle<T> component : fragmentLightCycles) {
component.onAttach(fragment, context);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package com.soundcloud.lightcycle;

import com.soundcloud.lightcycle.util.Preconditions;

import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.MenuItem;
import android.view.View;

import com.soundcloud.lightcycle.util.Preconditions;

import java.util.HashSet;
import java.util.Set;

Expand All @@ -28,6 +28,7 @@ public void bind(SupportFragmentLightCycle<T> lightCycle) {

@Override
public void onAttach(T fragment, Activity activity) {
LightCycles.bind(this);
for (SupportFragmentLightCycle<T> component : fragmentLightCycles) {
component.onAttach(fragment, activity);
}
Expand Down

0 comments on commit 265478d

Please sign in to comment.