-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathurl.proto
65 lines (54 loc) · 1.35 KB
/
url.proto
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
syntax = "proto3";
package rv.data;
message URL {
enum Platform {
PLATFORM_UNKNOWN = 0;
PLATFORM_MACOS = 1;
PLATFORM_WIN32 = 2;
PLATFORM_WEB = 3;
}
Platform platform = 3;
oneof Storage {
string absolute_string = 1;
string relative_path = 2;
}
oneof RelativeFilePath {
rv.data.URL.LocalRelativePath local = 4;
rv.data.URL.ExternalRelativePath external = 5;
}
message LocalRelativePath {
enum Root {
ROOT_UNKNOWN = 0;
ROOT_BOOT_VOLUME = 1;
ROOT_USER_HOME = 2;
ROOT_USER_DOCUMENTS = 3;
ROOT_USER_DOWNLOADS = 4;
ROOT_USER_MUSIC = 5;
ROOT_USER_PICTURES = 6;
ROOT_USER_VIDEOS = 7;
ROOT_USER_DESKTOP = 11;
ROOT_USER_APP_SUPPORT = 8;
ROOT_SHARED = 9;
ROOT_SHOW = 10;
ROOT_CURRENT_RESOURCE = 12;
}
Root root = 1;
string path = 2;
}
message ExternalRelativePath {
rv.data.URL.ExternalRelativePath.MacOSExternalVolume macos = 1;
rv.data.URL.ExternalRelativePath.Win32ExternalVolume win32 = 2;
string path = 3;
message MacOSExternalVolume {
string volume_name = 1;
}
message Win32ExternalVolume {
string drive_letter = 1;
string volume_name = 2;
bool network_share = 3;
}
}
}
message URLs {
repeated rv.data.URL urls = 1;
}