Loading src/main/aidl/de/luhmer/owncloud/accountimporter/helper/IInputStreamService.aidl→src/main/aidl/de/luhmer/owncloud/accountimporter/aidl/IInputStreamService.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ More information here: https://github.com/abeluck/android-streams-ipc */ package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; interface IInputStreamService { ParcelFileDescriptor performNextcloudRequest(in ParcelFileDescriptor input); Loading src/main/java/de/luhmer/owncloud/accountimporter/helper/AccountImporter.java→src/main/java/de/luhmer/owncloud/accountimporter/AccountImporter.java +28 −18 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter; import android.accounts.Account; import android.accounts.AccountManager; Loading @@ -6,10 +6,12 @@ import android.accounts.AuthenticatorException; import android.accounts.OperationCanceledException; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; import android.support.annotation.RequiresApi; import android.widget.Toast; import java.io.IOException; import java.util.ArrayList; Loading @@ -20,7 +22,9 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import static android.content.Context.MODE_PRIVATE; import de.luhmer.owncloud.accountimporter.exceptions.NextcloudFilesAppNotInstalledException; import de.luhmer.owncloud.accountimporter.helper.AsyncTaskHelper; import de.luhmer.owncloud.accountimporter.model.SingleSignOnAccount; /** * Nextcloud SingleSignOn Loading @@ -47,28 +51,34 @@ public class AccountImporter { private static final String PREF_FILE_NAME = "PrefNextcloudAccount"; private static final String PREF_ACCOUNT_STRING = "PREF_ACCOUNT_STRING"; private static final String AUTH_TOKEN = "NextcloudSSO"; public static final int CHOOSE_ACCOUNT_SSO = 4242; public static boolean AccountsToImportAvailable(Context context) { return FindAccounts(context).size() > 0; } //TODO add multi account support public static Account GetCurrentAccount(Context context) { SharedPreferences preferences = context.getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); String accountName = preferences.getString(PREF_ACCOUNT_STRING, ""); return GetAccountForName(context, accountName); } //TODO add multi account support public static SingleSignOnAccount GetCurrentSingleAccount(Context context) throws AuthenticatorException, OperationCanceledException, IOException { return GetAuthToken(context, GetCurrentAccount(context)); public static void PickNewAccount(android.support.v4.app.Fragment fragment) throws NextcloudFilesAppNotInstalledException { if(AppInstalledOrNot(fragment.getContext(), "com.nextcloud.client")) { Intent intent = AccountManager.newChooseAccountIntent(null, null, new String[]{"nextcloud"}, true, null, null, null, null); fragment.startActivityForResult(intent, CHOOSE_ACCOUNT_SSO); } else { throw new NextcloudFilesAppNotInstalledException(); } //TODO add multi account support public static void SetCurrentAccount(Context context, Account account) { SharedPreferences preferences = context.getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); preferences.edit().putString(PREF_ACCOUNT_STRING, account.name).commit(); } private static boolean AppInstalledOrNot(Context context, String uri) { PackageManager pm = context.getPackageManager(); try { pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); return true; } catch (PackageManager.NameNotFoundException e) { } return false; } // Find all currently installed nextcloud accounts on the phone private static List<Account> FindAccounts(Context context) { Loading @@ -84,7 +94,7 @@ public class AccountImporter { return accountsAvailable; } private static final String AUTH_TOKEN = "NextcloudSSO"; public static Account GetAccountForName(Context context, String name) { Loading src/main/java/de/luhmer/owncloud/accountimporter/helper/IThreadListener.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/IThreadListener.java +1 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; /** * Nextcloud SingleSignOn Loading src/main/java/de/luhmer/owncloud/accountimporter/helper/NextcloudRequest.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/NextcloudRequest.java +1 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; import java.io.Serializable; import java.util.HashMap; Loading src/main/java/de/luhmer/owncloud/accountimporter/helper/ParcelFileDescriptorUtil.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/ParcelFileDescriptorUtil.java +3 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; import android.os.ParcelFileDescriptor; import android.util.Log; Loading @@ -7,6 +7,8 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import de.luhmer.owncloud.accountimporter.aidl.IThreadListener; /** * Nextcloud SingleSignOn * Loading Loading
src/main/aidl/de/luhmer/owncloud/accountimporter/helper/IInputStreamService.aidl→src/main/aidl/de/luhmer/owncloud/accountimporter/aidl/IInputStreamService.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ More information here: https://github.com/abeluck/android-streams-ipc */ package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; interface IInputStreamService { ParcelFileDescriptor performNextcloudRequest(in ParcelFileDescriptor input); Loading
src/main/java/de/luhmer/owncloud/accountimporter/helper/AccountImporter.java→src/main/java/de/luhmer/owncloud/accountimporter/AccountImporter.java +28 −18 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter; import android.accounts.Account; import android.accounts.AccountManager; Loading @@ -6,10 +6,12 @@ import android.accounts.AuthenticatorException; import android.accounts.OperationCanceledException; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; import android.support.annotation.RequiresApi; import android.widget.Toast; import java.io.IOException; import java.util.ArrayList; Loading @@ -20,7 +22,9 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import static android.content.Context.MODE_PRIVATE; import de.luhmer.owncloud.accountimporter.exceptions.NextcloudFilesAppNotInstalledException; import de.luhmer.owncloud.accountimporter.helper.AsyncTaskHelper; import de.luhmer.owncloud.accountimporter.model.SingleSignOnAccount; /** * Nextcloud SingleSignOn Loading @@ -47,28 +51,34 @@ public class AccountImporter { private static final String PREF_FILE_NAME = "PrefNextcloudAccount"; private static final String PREF_ACCOUNT_STRING = "PREF_ACCOUNT_STRING"; private static final String AUTH_TOKEN = "NextcloudSSO"; public static final int CHOOSE_ACCOUNT_SSO = 4242; public static boolean AccountsToImportAvailable(Context context) { return FindAccounts(context).size() > 0; } //TODO add multi account support public static Account GetCurrentAccount(Context context) { SharedPreferences preferences = context.getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); String accountName = preferences.getString(PREF_ACCOUNT_STRING, ""); return GetAccountForName(context, accountName); } //TODO add multi account support public static SingleSignOnAccount GetCurrentSingleAccount(Context context) throws AuthenticatorException, OperationCanceledException, IOException { return GetAuthToken(context, GetCurrentAccount(context)); public static void PickNewAccount(android.support.v4.app.Fragment fragment) throws NextcloudFilesAppNotInstalledException { if(AppInstalledOrNot(fragment.getContext(), "com.nextcloud.client")) { Intent intent = AccountManager.newChooseAccountIntent(null, null, new String[]{"nextcloud"}, true, null, null, null, null); fragment.startActivityForResult(intent, CHOOSE_ACCOUNT_SSO); } else { throw new NextcloudFilesAppNotInstalledException(); } //TODO add multi account support public static void SetCurrentAccount(Context context, Account account) { SharedPreferences preferences = context.getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE); preferences.edit().putString(PREF_ACCOUNT_STRING, account.name).commit(); } private static boolean AppInstalledOrNot(Context context, String uri) { PackageManager pm = context.getPackageManager(); try { pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); return true; } catch (PackageManager.NameNotFoundException e) { } return false; } // Find all currently installed nextcloud accounts on the phone private static List<Account> FindAccounts(Context context) { Loading @@ -84,7 +94,7 @@ public class AccountImporter { return accountsAvailable; } private static final String AUTH_TOKEN = "NextcloudSSO"; public static Account GetAccountForName(Context context, String name) { Loading
src/main/java/de/luhmer/owncloud/accountimporter/helper/IThreadListener.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/IThreadListener.java +1 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; /** * Nextcloud SingleSignOn Loading
src/main/java/de/luhmer/owncloud/accountimporter/helper/NextcloudRequest.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/NextcloudRequest.java +1 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; import java.io.Serializable; import java.util.HashMap; Loading
src/main/java/de/luhmer/owncloud/accountimporter/helper/ParcelFileDescriptorUtil.java→src/main/java/de/luhmer/owncloud/accountimporter/aidl/ParcelFileDescriptorUtil.java +3 −1 Original line number Diff line number Diff line package de.luhmer.owncloud.accountimporter.helper; package de.luhmer.owncloud.accountimporter.aidl; import android.os.ParcelFileDescriptor; import android.util.Log; Loading @@ -7,6 +7,8 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import de.luhmer.owncloud.accountimporter.aidl.IThreadListener; /** * Nextcloud SingleSignOn * Loading