Loading src/com/owncloud/android/lib/common/OwnCloudClientMap.java +18 −0 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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 { Loading @@ -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 Loading
src/com/owncloud/android/lib/common/OwnCloudClientMap.java +18 −0 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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 { Loading @@ -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