Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public class ActivitiesActivity extends DrawerActivity implements ActivityListIn

ActivityListLayoutBinding binding;
private ActivityListAdapter adapter;
private int lastGiven;
private long lastGiven;
private boolean isLoadingActivities;
private ActivitiesContract.ActionListener actionListener;
private Snackbar snackbar;
Expand Down Expand Up @@ -162,7 +162,7 @@ public void onActivityClicked(RichObject richObject) {
}

@Override
public void showActivities(List<Object> activities, NextcloudClient client, int lastGiven) {
public void showActivities(List<Object> activities, NextcloudClient client, long lastGiven) {
boolean clear = false;
if (this.lastGiven == ActivitiesContract.ActionListener.UNDEFINED) {
clear = true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
public interface ActivitiesContract {

interface View {
void showActivities(List<Object> activities, NextcloudClient client, int lastGiven);
void showActivities(List<Object> activities, NextcloudClient client, long lastGiven);
void showActivitiesLoadError(String error);
void showActivityDetailUI(OCFile ocFile);
void showActivityDetailUIIsNull();
Expand All @@ -28,7 +28,7 @@ interface View {
interface ActionListener {
int UNDEFINED = -1;

void loadActivities(int lastGiven);
void loadActivities(long lastGiven);

void openActivity(String fileUrl, BaseActivity baseActivity);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,15 @@ public class ActivitiesPresenter implements ActivitiesContract.ActionListener {
}

@Override
public void loadActivities(int lastGiven) {
public void loadActivities(long lastGiven) {
if (UNDEFINED == lastGiven) {
activitiesView.showLoadingMessage();
} else {
activitiesView.setProgressIndicatorState(true);
}
activitiesRepository.getActivities(lastGiven, new ActivitiesRepository.LoadActivitiesCallback() {
@Override
public void onActivitiesLoaded(List<Object> activities, NextcloudClient client, int lastGiven) {
public void onActivitiesLoaded(List<Object> activities, NextcloudClient client, long lastGiven) {

if (!activityStopped) {
activitiesView.setProgressIndicatorState(false);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
*/
public interface ActivitiesRepository {
interface LoadActivitiesCallback {
void onActivitiesLoaded(List<Object> activities, NextcloudClient client, int lastGiven);
void onActivitiesLoaded(List<Object> activities, NextcloudClient client, long lastGiven);
void onActivitiesLoadedError(String error);
}

void getActivities(int lastGiven, @NonNull LoadActivitiesCallback callback);
void getActivities(long lastGiven, @NonNull LoadActivitiesCallback callback);
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@
public interface ActivitiesServiceApi {

interface ActivitiesServiceCallback<T> {
void onLoaded(T activities, NextcloudClient client, int lastGiven);
void onLoaded(T activities, NextcloudClient client, long lastGiven);
void onError (String error);
}

void getAllActivities(int lastGiven, ActivitiesServiceApi.ActivitiesServiceCallback<List<Object>> callback);
void getAllActivities(long lastGiven, ActivitiesServiceApi.ActivitiesServiceCallback<List<Object>> callback);

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/*
* Nextcloud - Android Client
*
* SPDX-FileCopyrightText: 2025 Alper Ozturk <alper.ozturk@nextcloud.com>
* SPDX-FileCopyrightText: 2019 Chris Narkiewicz <hello@ezaquarii.com>
* SPDX-FileCopyrightText: 2018 Edvard Holst <edvard.holst@gmail.com>
* SPDX-FileCopyrightText: 2025 TSI-mc <surinder.kumar@t-systems.com>
Expand Down Expand Up @@ -43,7 +44,7 @@ public ActivitiesServiceApiImpl(UserAccountManager accountManager) {
}

@Override
public void getAllActivities(int lastGiven, ActivitiesServiceCallback<List<Object>> callback) {
public void getAllActivities(long lastGiven, ActivitiesServiceCallback<List<Object>> callback) {
GetActivityListTask getActivityListTask = new GetActivityListTask(accountManager.getUser(),
lastGiven,
callback);
Expand All @@ -55,12 +56,12 @@ private static class GetActivityListTask extends AsyncTask<Void, Void, Boolean>
private final ActivitiesServiceCallback<List<Object>> callback;
private List<Object> activities;
private final User user;
private int lastGiven;
private long lastGiven;
private String errorMessage;
private NextcloudClient client;

private GetActivityListTask(User user,
int lastGiven,
long lastGiven,
ActivitiesServiceCallback<List<Object>> callback) {
this.user = user;
this.lastGiven = lastGiven;
Expand Down Expand Up @@ -90,7 +91,7 @@ protected Boolean doInBackground(Void... voids) {
final ArrayList<Object> data = result.getData();
activities = (ArrayList) data.get(0);

lastGiven = (int) data.get(1);
lastGiven = (long) data.get(1);
return Boolean.TRUE;
} else {
Log_OC.d(TAG, result.getLogMessage());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ public RemoteActivitiesRepository(@NonNull ActivitiesServiceApi activitiesServic


@Override
public void getActivities(int lastGiven, @NonNull LoadActivitiesCallback callback) {
public void getActivities(long lastGiven, @NonNull LoadActivitiesCallback callback) {
activitiesServiceApi.getAllActivities(lastGiven,
new ActivitiesServiceApi.ActivitiesServiceCallback<List<Object>>() {
@Override
public void onLoaded(List<Object> activities, NextcloudClient client, int lastGiven) {
public void onLoaded(List<Object> activities, NextcloudClient client, long lastGiven) {
callback.onActivitiesLoaded(activities, client, lastGiven);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ public class FileDetailActivitiesFragment extends Fragment implements
private OCFile file;
private User user;

private int lastGiven;
private long lastGiven;
private boolean isLoadingActivities;
private boolean isDataFetched = false;

Expand Down Expand Up @@ -255,9 +255,9 @@ public void reload() {
}

/**
* @param lastGiven int; -1 to disable
* @param lastGiven long; -1 to disable
*/
private void fetchAndSetData(int lastGiven) {
private void fetchAndSetData(long lastGiven) {
final FragmentActivity activity = getActivity();

if (activity == null) {
Expand Down Expand Up @@ -312,7 +312,7 @@ private void fetchAndSetData(int lastGiven) {
final List<Object> data = result.getData();
final List<Object> activitiesAndVersions = (ArrayList) data.get(0);

this.lastGiven = (int) data.get(1);
this.lastGiven = (long) data.get(1);

if (activitiesAndVersions.isEmpty()) {
this.lastGiven = END_REACHED;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,42 +87,48 @@ public void setupActivitiesPresenter() {

@Test
public void loadInitialActivitiesFromRepositoryIntoView() {
long lastGiven = -1L;

// When loading activities from repository is requested from presenter...
activitiesPresenter.loadActivities(-1);
activitiesPresenter.loadActivities(lastGiven);
// empty list view is hidden in view
verify(view).showLoadingMessage();
// Repository starts retrieving activities from server
verify(activitiesRepository).getActivities(eq(-1), loadActivitiesCallbackArgumentCaptor.capture());
verify(activitiesRepository).getActivities(eq(lastGiven), loadActivitiesCallbackArgumentCaptor.capture());
// Repository returns data
loadActivitiesCallbackArgumentCaptor.getValue().onActivitiesLoaded(activitiesList, nextcloudClient, -1);
loadActivitiesCallbackArgumentCaptor.getValue().onActivitiesLoaded(activitiesList, nextcloudClient, lastGiven);
// Progress indicator is hidden
verify(view).setProgressIndicatorState(eq(false));
// List of activities is shown in view.
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(-1));
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(lastGiven));
}

@Test
public void loadFollowUpActivitiesFromRepositoryIntoView() {
long lastGiven = 1L;

// When loading activities from repository is requested from presenter...
activitiesPresenter.loadActivities(1);
activitiesPresenter.loadActivities(lastGiven);
// Progress indicator is shown in view
verify(view).setProgressIndicatorState(eq(true));
// Repository starts retrieving activities from server
verify(activitiesRepository).getActivities(eq(1), loadActivitiesCallbackArgumentCaptor.capture());
verify(activitiesRepository).getActivities(eq(lastGiven), loadActivitiesCallbackArgumentCaptor.capture());
// Repository returns data
loadActivitiesCallbackArgumentCaptor.getValue().onActivitiesLoaded(activitiesList, nextcloudClient, 1);
loadActivitiesCallbackArgumentCaptor.getValue().onActivitiesLoaded(activitiesList, nextcloudClient, lastGiven);
// Progress indicator is hidden
verify(view).setProgressIndicatorState(eq(false));
// List of activities is shown in view.
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(1));
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(lastGiven));
}

@Test
public void loadActivitiesFromRepositoryShowError() {
long lastGiven = -1L;

// When loading activities from repository is requested from presenter...
activitiesPresenter.loadActivities(-1);
activitiesPresenter.loadActivities(lastGiven);
// Repository starts retrieving activities from server
verify(activitiesRepository).getActivities(eq(-1), loadActivitiesCallbackArgumentCaptor.capture());
verify(activitiesRepository).getActivities(eq(lastGiven), loadActivitiesCallbackArgumentCaptor.capture());
// Repository returns data
loadActivitiesCallbackArgumentCaptor.getValue().onActivitiesLoadedError("error");
// Correct error is shown in view
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,20 @@ public void setUpActivitiesRepository() {

@Test
public void loadActivitiesReturnSuccess() {
mActivitiesRepository.getActivities(-1, mockedLoadActivitiesCallback);
verify(serviceApi).getAllActivities(eq(-1), activitiesServiceCallbackCaptor.capture());
activitiesServiceCallbackCaptor.getValue().onLoaded(activitiesList, nextcloudClient, -1);
verify(mockedLoadActivitiesCallback).onActivitiesLoaded(eq(activitiesList), eq(nextcloudClient), eq(-1));
long lastGiven = -1L;

mActivitiesRepository.getActivities(lastGiven, mockedLoadActivitiesCallback);
verify(serviceApi).getAllActivities(eq(lastGiven), activitiesServiceCallbackCaptor.capture());
activitiesServiceCallbackCaptor.getValue().onLoaded(activitiesList, nextcloudClient, lastGiven);
verify(mockedLoadActivitiesCallback).onActivitiesLoaded(eq(activitiesList), eq(nextcloudClient), eq(lastGiven));
}

@Test
public void loadActivitiesReturnError() {
mActivitiesRepository.getActivities(-1, mockedLoadActivitiesCallback);
verify(serviceApi).getAllActivities(eq(-1), activitiesServiceCallbackCaptor.capture());
long lastGiven = -1L;

mActivitiesRepository.getActivities(lastGiven, mockedLoadActivitiesCallback);
verify(serviceApi).getAllActivities(eq(lastGiven), activitiesServiceCallbackCaptor.capture());
activitiesServiceCallbackCaptor.getValue().onError("error");
verify(mockedLoadActivitiesCallback).onActivitiesLoadedError(eq("error"));
}
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
*/
buildscript {
ext {
androidLibraryVersion ="4e47b7649d224217830101779e37add5344a3805"
androidLibraryVersion ="e7b8c6f87fe82bc6029808702d561a4dd01aa854"
androidCommonLibraryVersion = "0.25.0"
androidPluginVersion = "8.9.1"
androidxMediaVersion = "1.5.1"
Expand Down
26 changes: 26 additions & 0 deletions gradle/verification-metadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11007,6 +11007,14 @@
<sha256 value="486009759cf8c51c48fa7869d61a129240172e94edfea721cab5c11154c3b9de" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
</component>
<component group="com.github.nextcloud" name="android-library" version="e7b8c6f87fe82bc6029808702d561a4dd01aa854">
<artifact name="android-library-e7b8c6f87fe82bc6029808702d561a4dd01aa854.aar">
<sha256 value="98b666c08cf5638dbafcf17c14e076831259c6423fc5a93e9879935cf903f311" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
<artifact name="android-library-e7b8c6f87fe82bc6029808702d561a4dd01aa854.module">
<sha256 value="d3e8ceaf80806f27eaaab354ccee5eccacd40b7507c22055290e56d59e53bd86" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
</component>
<component group="com.github.nextcloud" name="android-library" version="ee61d15077aab61cf3bc996f14c871c4ff8ea674">
<artifact name="android-library-ee61d15077aab61cf3bc996f14c871c4ff8ea674.aar">
<sha256 value="dc7c01113fc8333aa61ead05bc5058f65857f9d57448b7328f26db24922b6662" origin="Generated by Gradle" reason="Artifact is not signed"/>
Expand All @@ -11023,6 +11031,14 @@
<sha256 value="7a2189a2b81f8210d6431a7cfc2911be36a9cf42d030101106d5577a099c28d9" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
</component>
<component group="com.github.nextcloud" name="android-library" version="f5b31bddd9">
<artifact name="android-library-f5b31bddd9.aar">
<sha256 value="22671ff27454feb4dbff6114fbbd5f0396d0f21d5e545b66ff6258900c2e135c" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
<artifact name="android-library-f5b31bddd9.module">
<sha256 value="57decec48613574f04b371689cd7f1573f98157712439dfcf1e736274871611b" origin="Generated by Gradle" reason="Artifact is not signed"/>
</artifact>
</component>
<component group="com.github.nextcloud" name="android-library" version="f6420365513febcb22f143dcaeed07a9d9d550d5">
<artifact name="android-library-f6420365513febcb22f143dcaeed07a9d9d550d5.aar">
<sha256 value="57ab4fd7c922875a7e0b5feac20aa27ab5df0fd3b4e042f92ed727c0b6316e81" origin="Generated by Gradle" reason="Artifact is not signed"/>
Expand Down Expand Up @@ -17494,6 +17510,11 @@
<sha256 value="250dcc9a1003e82095933f64869237752f36e70cb8a63f2cdf99b0c9613c09b9" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jacoco" name="org.jacoco.build" version="0.8.13">
<artifact name="org.jacoco.build-0.8.13.pom">
<sha256 value="994c3ae1cfca6765968fe3ede4f379986aeb2e7eb51a2014caa4a09d71a8f4a3" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.jacoco" name="org.jacoco.core" version="0.8.11">
<artifact name="org.jacoco.core-0.8.11.jar">
<sha256 value="fcd188c688473fc8dcc0c6caaf355e7b389502243527c33b9597a3ec28791f47" origin="Generated by Gradle"/>
Expand Down Expand Up @@ -20596,6 +20617,11 @@
<sha256 value="8c8651f3be043b3578dd28a15c0161861b15eb039b7f5247679c0cc0dbf07787" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.ow2.asm" name="asm-bom" version="9.8">
<artifact name="asm-bom-9.8.pom">
<sha256 value="0da1dcb226e6cdfdadb4dac591916bb917b57374674d91bd2f13003137b41520" origin="Generated by Gradle"/>
</artifact>
</component>
<component group="org.ow2.asm" name="asm-commons" version="9.2">
<artifact name="asm-commons-9.2.jar">
<sha256 value="be4ce53138a238bb522cd781cf91f3ba5ce2f6ca93ec62d46a162a127225e0a6" origin="Generated by Gradle"/>
Expand Down
Loading