[android][auth] implemented missing 'unlink' method

This commit is contained in:
Salakar
2017-07-12 16:26:02 +01:00
parent 0898f0913d
commit 97447dab5e
3 changed files with 70 additions and 3 deletions

View File

@@ -643,6 +643,38 @@ public class RNFirebaseAuth extends ReactContextBaseJavaModule {
}
}
/**
* unlink
*
* @url https://firebase.google.com/docs/reference/android/com/google/firebase/auth/FirebaseUser.html#unlink(java.lang.String)
* @param providerId
* @param promise
*/
@ReactMethod
public void unlink(final String providerId, final Promise promise) {
FirebaseUser user = mAuth.getCurrentUser();
Log.d(TAG, "unlink");
if (user != null) {
user.unlink(providerId)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
Log.d(TAG, "unlink:onComplete:success");
promiseWithUser(task.getResult().getUser(), promise);
} else {
Exception exception = task.getException();
Log.e(TAG, "unlink:onComplete:failure", exception);
promiseRejectAuthException(promise, exception);
}
}
});
} else {
promiseNoUser(promise, true);
}
}
/**
* reauthenticate
*