add get custom covers
[fanfix.git] / src / be / nikiroo / fanfix / library / WebLibraryUrls.java
1 package be.nikiroo.fanfix.library;
2
3 class WebLibraryUrls {
4 static public final String INDEX_URL = "/";
5
6 static public final String VERSION_URL = "/version";
7
8 static public final String LOGOUT_URL = "/logout";
9
10 static private final String VIEWER_URL_BASE = "/view/story/";
11 static private final String VIEWER_URL = VIEWER_URL_BASE
12 + "{luid}/{chap}/{para}";
13
14 static private final String STORY_URL_BASE = "/story/";
15 static private final String STORY_URL = STORY_URL_BASE
16 + "{luid}/{chap}/{para}";
17 static private final String STORY_URL_COVER = STORY_URL_BASE
18 + "{luid}/cover";
19 static private final String STORY_URL_JSON = STORY_URL_BASE + "{luid}/json";
20
21 static private final String LIST_URL_BASE = "/list/";
22
23 static public final String LIST_URL_METADATA = LIST_URL_BASE + "metadata";
24
25 // GET/POST
26 static private final String COVER_URL_BASE = "/cover/";
27 static private final String COVER_URL_STORY = COVER_URL_BASE
28 + "story/{luid}";
29 static private final String COVER_URL_AUTHOR = COVER_URL_BASE
30 + "author/{author}";
31 static private final String COVER_URL_SOURCE = COVER_URL_BASE
32 + "source/{source}";
33
34 static public String getViewUrl(String luid, Integer chap, Integer para) {
35 return VIEWER_URL //
36 .replace("{luid}", luid) //
37 .replace("/{chap}", chap == null ? "" : "/" + chap) //
38 .replace("/{para}",
39 (chap == null || para == null) ? "" : "/" + para);
40 }
41
42 static public String getStoryUrl(String luid, int chap, Integer para) {
43 return STORY_URL //
44 .replace("{luid}", luid) //
45 .replace("{chap}", Integer.toString(chap)) //
46 .replace("{para}", para == null ? "" : Integer.toString(para));
47 }
48
49 static public String getStoryUrlCover(String luid) {
50 return STORY_URL_COVER //
51 .replace("{luid}", luid);
52 }
53
54 static public String getStoryUrlJson(String luid) {
55 return STORY_URL_JSON //
56 .replace("{luid}", luid);
57 }
58
59 static public boolean isSupportedUrl(String url) {
60 return INDEX_URL.equals(url) || VERSION_URL.equals(url)
61 || LOGOUT_URL.equals(url) || isViewUrl(url) || isStoryUrl(url)
62 || isListUrl(url) || isCoverUrl(url);
63 }
64
65 static public String getCoverUrlStory(String luid) {
66 return COVER_URL_STORY //
67 .replace("{luid}", luid);
68 }
69
70 static public String getCoverUrlSource(String source) {
71 return COVER_URL_SOURCE //
72 .replace("{source}", source);
73 }
74
75 static public String getCoverUrlAuthor(String author) {
76 return COVER_URL_AUTHOR //
77 .replace("{author}", author);
78 }
79
80 static public boolean isViewUrl(String url) {
81 return url != null && url.startsWith(VIEWER_URL_BASE);
82 }
83
84 static public boolean isStoryUrl(String url) {
85 return url != null && url.startsWith(STORY_URL_BASE);
86 }
87
88 static public boolean isListUrl(String url) {
89 return url != null && url.startsWith(LIST_URL_BASE);
90 }
91
92 static public boolean isCoverUrl(String url) {
93 return url != null && url.startsWith(COVER_URL_BASE);
94 }
95 }