aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/entities/Transferable.java
blob: 1ce4d8ccfb58596933e87ebc8d9c803040f3ed15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package eu.siacs.conversations.entities;

import java.util.Arrays;
import java.util.List;

public interface Transferable {
    List<String> VALID_IMAGE_EXTENSIONS = Arrays.asList(
            "webp",
            "jpeg",
            "jpg",
            "png",
            "jpe",
            "gif",
            "tif"
    );
    List<String> VALID_CRYPTO_EXTENSIONS = Arrays.asList(
            "pgp",
            "gpg",
            "otr"
    );
    List<String> WELL_KNOWN_EXTENSIONS = Arrays.asList(
            //documents
            "pdf",
            "doc",
            "docx",
            "txt",
            //audio
            "m4a",
            "m4b",
            "mp3",
            "mp2",
            "wav",
            "aac",
            "aif",
            "aiff",
            "aifc",
            "mid",
            "midi",
            "3gpp",
            //video
            "avi",
            "mp4",
            "mpeg",
            "mpg",
            "mpe",
            "mov",
            "3gp",
            //applications
            "apk",
            //contact
            "vcf",
            //calendar
            "ics",
            //compressed
            "zip",
            "rar"
            );

    int STATUS_UNKNOWN = 0x200;
    int STATUS_CHECKING = 0x201;
    int STATUS_FAILED = 0x202;
    int STATUS_OFFER = 0x203;
    int STATUS_DOWNLOADING = 0x204;
    int STATUS_DELETED = 0x205;
    int STATUS_OFFER_CHECK_FILESIZE = 0x206;
    int STATUS_UPLOADING = 0x207;


    boolean start();

    int getStatus();

    long getFileSize();

    int getProgress();

    void cancel();
}