aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/entities/Transferable.java
blob: 859cda6583f564ac9f0f2c74b5d96b3c3dc3727e (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
package eu.siacs.conversations.entities;

public interface Transferable {

	String[] VALID_IMAGE_EXTENSIONS = {
			"webp",
			"jpeg",
			"jpg",
			"png",
			"jpe",
			"gif",
			"tif"
	};
	String[] VALID_CRYPTO_EXTENSIONS = {
			"pgp",
			"gpg",
			"otr"
	};
	String[] WELL_KNOWN_EXTENSIONS = {
			//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();
}