aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java')
-rw-r--r--src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java22
1 files changed, 7 insertions, 15 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java b/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java
index 02bd04b9..c24603b7 100644
--- a/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java
+++ b/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/AbstractFileTransferService.java
@@ -1,31 +1,23 @@
package de.thedevstack.conversationsplus.services.filetransfer;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
-import de.thedevstack.conversationsplus.entities.Message;
import de.thedevstack.conversationsplus.services.FileTransferService;
/**
*
*/
-public abstract class AbstractFileTransferService implements FileTransferService, FileTransferStatusListener {
- protected List<Message> failedMessages = new ArrayList<>();
+public abstract class AbstractFileTransferService implements FileTransferService {
+ private List<FileTransferStatusListener> statusListeners = new ArrayList<>();
@Override
- public void onFailure(Message message, boolean delay) {
- this.failedMessages.add(message);
+ public void addFileTransferStatusListener(FileTransferStatusListener... listeners) {
+ this.statusListeners.addAll(Arrays.asList(listeners));
}
- @Override
- public void onSuccess(Message message, boolean delay) {
- if (this.failedMessages.contains(message)) {
- this.failedMessages.remove(message);
- }
- }
-
- @Override
- public boolean accept(Message message) {
- return !this.failedMessages.contains(message);
+ protected void addStatusListenerToEntity(FileTransferEntity entity) {
+ entity.addFileTransferStatusListener(this.statusListeners.toArray(new FileTransferStatusListener[0]));
}
}