Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java57
1 files changed, 25 insertions, 32 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java
index 4f41173e9..bff8ddfdb 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/ServerAdapter.java
@@ -13,18 +13,14 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.preference.PreferenceManager;
+import com.nextcloud.android.sso.api.ParsedResponse;
+
import java.io.File;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
import java.util.List;
-import java.util.Locale;
-import java.util.TimeZone;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.api.ApiProvider;
import it.niedermann.nextcloud.deck.api.IResponseCallback;
-import it.niedermann.nextcloud.deck.api.LastSyncUtil;
import it.niedermann.nextcloud.deck.api.RequestHelper;
import it.niedermann.nextcloud.deck.exceptions.OfflineException;
import it.niedermann.nextcloud.deck.model.AccessControl;
@@ -39,11 +35,12 @@ import it.niedermann.nextcloud.deck.model.full.FullStack;
import it.niedermann.nextcloud.deck.model.ocs.Capabilities;
import it.niedermann.nextcloud.deck.model.ocs.comment.DeckComment;
import it.niedermann.nextcloud.deck.model.ocs.comment.OcsComment;
+import it.niedermann.nextcloud.deck.model.ocs.projects.OcsProjectList;
+import it.niedermann.nextcloud.deck.model.ocs.user.GroupMemberUIDs;
import it.niedermann.nextcloud.deck.model.ocs.user.OcsUser;
import it.niedermann.nextcloud.deck.model.ocs.user.OcsUserList;
import it.niedermann.nextcloud.deck.model.propagation.CardUpdate;
import it.niedermann.nextcloud.deck.model.propagation.Reorder;
-import it.niedermann.nextcloud.deck.util.DateUtil;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
@@ -53,18 +50,11 @@ import static it.niedermann.nextcloud.deck.util.MimeTypeUtil.TEXT_PLAIN;
public class ServerAdapter {
- private String prefKeyWifiOnly;
-
- private static final DateFormat API_FORMAT =
- new SimpleDateFormat("E, dd MMM yyyy hh:mm:ss z", Locale.US);
-
- static {
- API_FORMAT.setTimeZone(TimeZone.getTimeZone("GMT"));
- }
+ private final String prefKeyWifiOnly;
@NonNull
- private Context applicationContext;
- private ApiProvider provider;
+ private final Context applicationContext;
+ private final ApiProvider provider;
public ServerAdapter(@NonNull Context applicationContext) {
this(applicationContext, null);
@@ -135,32 +125,35 @@ public class ServerAdapter {
// return lastSyncHeader;
}
- // TODO not used
- private Date getLastSync(long accountId) {
- Date lastSync = DateUtil.nowInGMT();
- lastSync.setTime(LastSyncUtil.getLastSync(accountId));
+ public void getBoards(IResponseCallback<ParsedResponse<List<FullBoard>>> responseCallback) {
+ RequestHelper.request(provider, () ->
+ provider.getDeckAPI().getBoards(true, getLastSyncDateFormatted(responseCallback.getAccount().getId()), responseCallback.getAccount().getBoardsEtag()),
+ responseCallback);
+ }
- return lastSync;
+ public void getCapabilities(String eTag, IResponseCallback<ParsedResponse<Capabilities>> responseCallback) {
+ ensureInternetConnection();
+ RequestHelper.request(provider, () -> provider.getNextcloudAPI().getCapabilities(eTag), responseCallback);
}
- public void getBoards(IResponseCallback<List<FullBoard>> responseCallback) {
- RequestHelper.request(provider, () ->
- provider.getDeckAPI().getBoards(true, getLastSyncDateFormatted(responseCallback.getAccount().getId())),
- responseCallback);
+ public void getProjectsForCard(long remoteCardId, IResponseCallback<OcsProjectList> responseCallback) {
+ ensureInternetConnection();
+ RequestHelper.request(provider, () -> provider.getNextcloudAPI().getProjectsForCard(remoteCardId), responseCallback);
}
- public void getCapabilities(IResponseCallback<Capabilities> responseCallback) {
+ public void searchUser(String searchTerm, IResponseCallback<OcsUserList> responseCallback) {
ensureInternetConnection();
- RequestHelper.request(provider, () -> provider.getNextcloudAPI().getCapabilities(), responseCallback);
+ RequestHelper.request(provider, () -> provider.getNextcloudAPI().searchUser(searchTerm), responseCallback);
}
- public void getAllOcsUsers(IResponseCallback<OcsUserList> responseCallback) {
+
+ public void getSingleUserData(String userUid, IResponseCallback<OcsUser> responseCallback) {
ensureInternetConnection();
- RequestHelper.request(provider, () -> provider.getNextcloudAPI().getAllUsers(), responseCallback);
+ RequestHelper.request(provider, () -> provider.getNextcloudAPI().getSingleUserData(userUid), responseCallback);
}
- public void getOcsUserDetails(String ocsUserName, IResponseCallback<OcsUser> responseCallback) {
+ public void searchGroupMembers(String groupUID, IResponseCallback<GroupMemberUIDs> responseCallback) {
ensureInternetConnection();
- RequestHelper.request(provider, () -> provider.getNextcloudAPI().getUserDetails(ocsUserName), responseCallback);
+ RequestHelper.request(provider, () -> provider.getNextcloudAPI().searchGroupMembers(groupUID), responseCallback);
}
public void getActivitiesForCard(long cardId, IResponseCallback<List<it.niedermann.nextcloud.deck.model.ocs.Activity>> responseCallback) {