37
37
38
38
import java .util .ArrayList ;
39
39
40
+ /**
41
+ * Presents the list of authentication options for this app to the user.
42
+ */
40
43
public class AuthMethodPickerActivity
41
44
extends IDPBaseActivity
42
45
implements IDPProvider .IDPCallback , View .OnClickListener {
43
46
44
47
private static final String TAG = "AuthMethodPicker" ;
45
48
private ArrayList <IDPProviderParcel > mProviderParcels ;
46
- private ArrayList <IDPProvider > mIDPProviders ;
49
+ private ArrayList <IDPProvider > mIdpProviders ;
47
50
48
51
@ Override
49
52
protected void onCreate (Bundle savedInstanceState ) {
50
53
super .onCreate (savedInstanceState );
51
54
setContentView (R .layout .nascar_layout );
52
55
Button emailButton = (Button ) findViewById (R .id .email_provider );
53
56
emailButton .setOnClickListener (this );
54
- mProviderParcels = getIntent ().getParcelableArrayListExtra (ControllerConstants .EXTRA_PROVIDERS );
55
- populateIDPList (mProviderParcels );
56
- }
57
-
58
- public static Intent createIntent (
59
- Context context , String appName , ArrayList <IDPProviderParcel > parcels ) {
60
- return new Intent ()
61
- .setClass (context , AuthMethodPickerActivity .class )
62
- .putExtra (ControllerConstants .EXTRA_APP_NAME , appName )
63
- .putParcelableArrayListExtra (ControllerConstants .EXTRA_PROVIDERS , parcels )
64
- .putExtra (EXTRA_ID , IDPController .NASCAR_SCREEN );
57
+ mProviderParcels =
58
+ getIntent ().getParcelableArrayListExtra (ControllerConstants .EXTRA_PROVIDERS );
59
+ populateIdpList (mProviderParcels );
65
60
}
66
61
67
- private void populateIDPList (ArrayList <IDPProviderParcel > mProviders ) {
68
- mIDPProviders = new ArrayList <>();
69
- for (IDPProviderParcel providerParcel : mProviders ) {
62
+ private void populateIdpList (ArrayList <IDPProviderParcel > providers ) {
63
+ mIdpProviders = new ArrayList <>();
64
+ for (IDPProviderParcel providerParcel : providers ) {
70
65
switch (providerParcel .getProviderType ()) {
71
66
case FacebookAuthProvider .PROVIDER_ID :
72
- mIDPProviders .add (new FacebookProvider (this , providerParcel ));
67
+ mIdpProviders .add (new FacebookProvider (this , providerParcel ));
73
68
break ;
74
69
case GoogleAuthProvider .PROVIDER_ID :
75
- mIDPProviders .add (new GoogleProvider (this , providerParcel ));
70
+ mIdpProviders .add (new GoogleProvider (this , providerParcel ));
76
71
break ;
77
72
case EmailAuthProvider .PROVIDER_ID :
78
73
findViewById (R .id .email_provider ).setVisibility (View .VISIBLE );
@@ -85,7 +80,7 @@ private void populateIDPList(ArrayList<IDPProviderParcel> mProviders) {
85
80
}
86
81
}
87
82
LinearLayout btnHolder = (LinearLayout ) findViewById (R .id .btn_holder );
88
- for (final IDPProvider provider : mIDPProviders ) {
83
+ for (final IDPProvider provider : mIdpProviders ) {
89
84
View loginButton = null ;
90
85
switch (provider .getProviderId ()) {
91
86
case GoogleAuthProvider .PROVIDER_ID :
@@ -116,8 +111,8 @@ public void onClick(View view) {
116
111
@ Override
117
112
public void onActivityResult (int requestCode , int resultCode , Intent data ) {
118
113
super .onActivityResult (requestCode , resultCode , data );
119
- for (IDPProvider provider : mIDPProviders ) {
120
- provider .onActivityResult (requestCode , resultCode , data );
114
+ for (IDPProvider provider : mIdpProviders ) {
115
+ provider .onActivityResult (requestCode , resultCode , data );
121
116
}
122
117
}
123
118
@@ -135,9 +130,25 @@ public void onFailure(Bundle extra) {
135
130
}
136
131
137
132
@ Override
138
- public void onClick (View v ) {
139
- if (v .getId () == R .id .email_provider ) {
140
- finish (IDPBaseActivity .EMAIL_LOGIN_NEEDED , new Intent ());
133
+ public void onClick (View view ) {
134
+ if (view .getId () == R .id .email_provider ) {
135
+ finish (IDPBaseActivity .EMAIL_LOGIN_NEEDED , new Intent ());
141
136
}
142
137
}
138
+
139
+ /**
140
+ * Creates an intent to start the authentication picker activity with the required information.
141
+ * @param context The context of the activity which intends to start the picker.
142
+ * @param appName The Firebase application name.
143
+ * @param parcels The supported provider descriptors.
144
+ * @return The intent to start the authentication picker activity.
145
+ */
146
+ public static Intent createIntent (
147
+ Context context , String appName , ArrayList <IDPProviderParcel > parcels ) {
148
+ return new Intent ()
149
+ .setClass (context , AuthMethodPickerActivity .class )
150
+ .putExtra (ControllerConstants .EXTRA_APP_NAME , appName )
151
+ .putParcelableArrayListExtra (ControllerConstants .EXTRA_PROVIDERS , parcels )
152
+ .putExtra (EXTRA_ID , IDPController .NASCAR_SCREEN );
153
+ }
143
154
}
0 commit comments