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 @@ -8,12 +8,24 @@
public class BatchDeleteReactionsRequest {

private final List<String> ids;
private final Boolean SoftDelete;


public BatchDeleteReactionsRequest(@JsonProperty("ids") List<String> ids) {
this.ids = ids;
SoftDelete = null;
}
public BatchDeleteReactionsRequest(@JsonProperty("ids") List<String> ids, @JsonProperty("soft_delete") Boolean softDelete) {
this.ids = ids;
SoftDelete = softDelete;
}

public List<String> getIds() {
return ids;
}

@JsonProperty("soft_delete")
public Boolean getSoftDelete() {
return SoftDelete;
}
}
45 changes: 41 additions & 4 deletions src/test/java/io/getstream/client/BatchDeleteActivitiesTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,8 @@

import com.google.common.collect.Lists;
import io.getstream.core.http.Response;
import io.getstream.core.models.BatchDeleteActivitiesRequest;
import io.getstream.core.models.*;
import io.getstream.core.models.BatchDeleteActivitiesRequest.ActivityToDelete;
import io.getstream.core.models.Activity;
import io.getstream.core.models.BatchDeleteReactionsRequest;
import io.getstream.core.models.Reaction;
import io.getstream.core.options.Filter;
import io.getstream.core.options.Limit;
import java8.util.concurrent.CompletableFuture;
Expand Down Expand Up @@ -150,6 +147,46 @@ public void testDeleteReactions() throws Exception {


}
@Test
public void testSoftDeleteReactions() throws Exception {
String uuid1 = UUID.randomUUID().toString().replace("-", "");
FlatFeed feed = client.flatFeed("user", uuid1);

// Insert two activities
Activity activity1Res = feed.addActivity(Activity.builder()
.actor("user1")
.verb("post")
.object("object1")
.build()).join();

Activity activity2Res = feed.addActivity(Activity.builder()
.actor("user1")
.verb("like")
.object("object2")
.build()).join();

// Add reactions to both activities
Reaction u1 = client.reactions().add("user1", "like", activity1Res.getID()).join();
Reaction u2 = client.reactions().add("user2", "like", activity1Res.getID()).join();
Reaction u3 = client.reactions().add("user1", "like", activity2Res.getID()).join();
Reaction u4 = client.reactions().add("user2", "like", activity2Res.getID()).join();

// Verify reactions were created
assertNotNull(client.reactions().get(u1.getId()).join());
assertNotNull(client.reactions().get(u2.getId()).join());
assertNotNull(client.reactions().get(u3.getId()).join());
assertNotNull(client.reactions().get(u4.getId()).join());

// Soft delete reactions
BatchDeleteReactionsRequest deleteReactionsRequest =
new BatchDeleteReactionsRequest(Arrays.asList(u1.getId(), u2.getId(), u3.getId()), true);
client.deleteReactions(deleteReactionsRequest).join();

// Verify reactions can still be fetched
assertNotNull(client.reactions().get(u1.getId()).join());
assertNotNull(client.reactions().get(u2.getId()).join());
assertNotNull(client.reactions().get(u3.getId()).join());
}

@Test
public void testDeleteActivitiesMultipleFeeds() throws Exception {
Expand Down
Loading