mirror of
https://github.com/owncloud/android-library.git
synced 2025-06-07 16:06:08 +00:00
Added method to OwnCloudClientMap to get/create new OwnCloudClients without credentials
This commit is contained in:
parent
057758671f
commit
b5ff057e95
@ -35,6 +35,7 @@ import android.accounts.AuthenticatorException;
|
||||
import android.accounts.OperationCanceledException;
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
import android.net.Uri;
|
||||
|
||||
import com.owncloud.android.lib.common.OwnCloudClient;
|
||||
import com.owncloud.android.lib.common.OwnCloudClientFactory;
|
||||
@ -58,6 +59,9 @@ public class OwnCloudClientMap {
|
||||
private static ConcurrentMap<String, OwnCloudClient> mClients =
|
||||
new java.util.concurrent.ConcurrentHashMap<String, OwnCloudClient>();
|
||||
|
||||
private static ConcurrentMap<String, OwnCloudClient> mAnonymousClient =
|
||||
new java.util.concurrent.ConcurrentHashMap<String, OwnCloudClient>();
|
||||
|
||||
public static synchronized OwnCloudClient getClientFor(Account account, Context context)
|
||||
throws OperationCanceledException, AuthenticatorException,
|
||||
AccountNotFoundException, IOException {
|
||||
@ -73,6 +77,20 @@ public class OwnCloudClientMap {
|
||||
}
|
||||
|
||||
|
||||
public static synchronized OwnCloudClient getAnonymousClientFor(
|
||||
Uri baseUri, Context context, boolean followRedirects) {
|
||||
OwnCloudClient client = mAnonymousClient.get(baseUri.toString());
|
||||
if (client == null) {
|
||||
client = OwnCloudClientFactory.createOwnCloudClient(
|
||||
baseUri,
|
||||
context.getApplicationContext(),
|
||||
followRedirects);
|
||||
mAnonymousClient.putIfAbsent(baseUri.toString(), client);
|
||||
}
|
||||
return client;
|
||||
}
|
||||
|
||||
|
||||
public static synchronized OwnCloudClient removeClientFor(Account account) {
|
||||
return mClients.remove(account.name);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user