X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Flibrary%2FWebLibraryUrls.java;fp=src%2Fbe%2Fnikiroo%2Ffanfix%2Flibrary%2FWebLibraryUrls.java;h=6a3b1534a469a4ea9b37105e6b82ab7cd4a03c59;hb=5ee0fc14dbffa8d11b914537d957ef892ba20ef9;hp=0000000000000000000000000000000000000000;hpb=b6aad7afb573f35c2ca2c0157e39838db87ad698;p=fanfix.git diff --git a/src/be/nikiroo/fanfix/library/WebLibraryUrls.java b/src/be/nikiroo/fanfix/library/WebLibraryUrls.java new file mode 100644 index 0000000..6a3b153 --- /dev/null +++ b/src/be/nikiroo/fanfix/library/WebLibraryUrls.java @@ -0,0 +1,67 @@ +package be.nikiroo.fanfix.library; + +public class WebLibraryUrls { + static public final String INDEX_URL = "/"; + + static public final String VERSION_URL = "/version"; + + static public final String LOGOUT_URL = "/logout"; + + static private final String VIEWER_URL_BASE = "/view/story/"; + static private final String VIEWER_URL = VIEWER_URL_BASE + + "{luid}/{chap}/{para}"; + + static private final String STORY_URL_BASE = "/story/"; + static private final String STORY_URL = STORY_URL_BASE + + "{luid}/{chap}/{para}"; + static private final String STORY_URL_COVER = STORY_URL_BASE + + "{luid}/cover"; + static private final String STORY_URL_JSON = STORY_URL_BASE + "{luid}/json"; + + static private final String LIST_URL_BASE = "/list/"; + + static public final String LIST_URL_METADATA = LIST_URL_BASE + "luids"; + + static public String getViewUrl(String luid, Integer chap, Integer para) { + return VIEWER_URL // + .replace("{luid}", luid) // + .replace("/{chap}", chap == null ? "" : "/" + chap) // + .replace("/{para}", + (chap == null || para == null) ? "" : "/" + para); + } + + static public String getStoryUrl(String luid, int chap, Integer para) { + return STORY_URL // + .replace("{luid}", luid) // + .replace("{chap}", Integer.toString(chap)) // + .replace("{para}", para == null ? "" : Integer.toString(para)); + } + + static public String getStoryUrlCover(String luid) { + return STORY_URL_COVER // + .replace("{luid}", luid); + } + + static public String getStoryUrlJson(String luid) { + return STORY_URL_JSON // + .replace("{luid}", luid); + } + + static public boolean isSupportedUrl(String url) { + return INDEX_URL.equals(url) || VERSION_URL.equals(url) + || LOGOUT_URL.equals(url) || isViewUrl(url) || isStoryUrl(url) + || isListUrl(url); + } + + static public boolean isViewUrl(String url) { + return url != null && url.startsWith(VIEWER_URL_BASE); + } + + static public boolean isStoryUrl(String url) { + return url != null && url.startsWith(STORY_URL_BASE); + } + + static public boolean isListUrl(String url) { + return url != null && url.startsWith(LIST_URL_BASE); + } +}