class CognitoIdentityProvider {

    @NonNull
    public Optional<Cognito> getCachedCognitoToken() {
        Cognito cognitoToken = localCognitoTokenStore.getCognitoToken();
        return cognitoToken != null ? Optional.of(cognitoToken) : Optional.absent();
    }

    @Inject public  CognitoIdentityProvider(@NonNull IdentityManager identityManager,
                                   @NonNull LocalCognitoTokenStore localCognitoTokenStore);

}