X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Fbundles%2FConfig.java;h=c96ed22a93e47cf91374e525f38011866f6413fe;hb=f433d15308b70e23280a65cef8c54002a7a971ce;hp=7360f3933a8a5c9e886c0194d04b3f1dcc26fdd9;hpb=c4cefaa04ec122fc02efb6542451a31fdf722c32;p=nikiroo-utils.git diff --git a/src/be/nikiroo/fanfix/bundles/Config.java b/src/be/nikiroo/fanfix/bundles/Config.java index 7360f39..c96ed22 100644 --- a/src/be/nikiroo/fanfix/bundles/Config.java +++ b/src/be/nikiroo/fanfix/bundles/Config.java @@ -10,13 +10,12 @@ import be.nikiroo.utils.resources.Meta.Format; */ @SuppressWarnings("javadoc") public enum Config { + + // Note: all hidden values are subject to be removed in a later version + @Meta(description = "The language to use for in the program (example: en-GB, fr-BE...) or nothing for default system language (can be overwritten with the variable $LANG)",// format = Format.LOCALE, list = { "en-GB", "fr-BE" }) LANG, // - @Meta(description = "The default reader type to use to read stories:\nCLI = simple output to console\nTUI = a Text User Interface with menus and windows, based upon Jexer\nGUI = a GUI with locally stored files, based upon Swing", // - format = Format.FIXED_LIST, list = { "CLI", "GUI", "TUI" }, def = "GUI") - READER_TYPE, // - @Meta(description = "File format options",// group = true) FILE_FORMAT, // @@ -49,7 +48,7 @@ public enum Config { @Meta(description = "The directory where to get the default story covers; any relative path uses the applciation config directory as base, $HOME notation is supported, / is always accepted as directory separator",// format = Format.DIRECTORY, def = "covers/") DEFAULT_COVERS_DIR, // - @Meta(description = "The directory where to store the library (can be overriden by the envvironment variable \"BOOKS_DIR\"; any relative path uses the applciation config directory as base, $HOME notation is supported, / is always accepted as directory separator",// + @Meta(description = "The directory where to store the library (can be overriden by the environment variable \"BOOKS_DIR\"; any relative path uses the applciation config directory as base, $HOME notation is supported, / is always accepted as directory separator",// format = Format.DIRECTORY, def = "$HOME/Books/") LIBRARY_DIR, // @@ -59,7 +58,7 @@ public enum Config { @Meta(description = "Use the remote Fanfix server configured here instead of the local library (if FALSE, the local library will be used instead)",// format = Format.BOOLEAN, def = "false") REMOTE_LIBRARY_ENABLED, // - @Meta(description = "The remote Fanfix server to connect to",// + @Meta(description = "The remote Fanfix server to connect to (fanfix://, http://, https:// -- if not specified, fanfix:// is assumed)",// format = Format.STRING) REMOTE_LIBRARY_HOST, // @Meta(description = "The port to use for the remote Fanfix server",// @@ -85,10 +84,19 @@ public enum Config { @Meta(description = "Remote Server configuration\nNote that the key is structured: \"KEY|SUBKEY|wl|rw\"\n- \"KEY\" is the actual encryption key (it can actually be empty, which will still encrypt the messages but of course it will be easier to guess the key)\n- \"SUBKEY\" is the (optional) subkey to use to get additional privileges\n- \"wl\" is a special privilege that allows that subkey to ignore white lists\n- \"rw\" is a special privilege that allows that subkey to modify the library, even if it is not in RW (by default) mode\n\nSome examples:\n- \"super-secret\": a normal key, no special privileges\n- \"you-will-not-guess|azOpd8|wl\": a white-list ignoring key\n- \"new-password|subpass|rw\": a key that allows modifications on the library",// group = true) SERVER, // + @Meta(description = "Remote Server mode: you can use the fanfix protocol (which is encrypted), http (which is not) or https (which requires a keystore.jks file)",// + format = Format.FIXED_LIST, list = { "fanfix", "http", "https" }, def = "fanfix") + SERVER_MODE, @Meta(description = "The port on which we can start the server (must be a valid port, from 1 to 65535)", // format = Format.INT, def = "58365") SERVER_PORT, // - @Meta(description = "The encryption key for the server (NOT including a subkey), it cannot contain the pipe character \"|\" but can be empty (it is *still* encrypted, but with an empty, easy to guess key)",// + @Meta(description = "A keystore.jks file, required to use HTTPS (the server will refuse to start in HTTPS mode without this file)", // + format = Format.STRING, def = "") + SERVER_SSL_KEYSTORE, + @Meta(description = "The pass phrase required to open the keystore.jks file (required for HTTPS mode)", // + format = Format.PASSWORD, def = "") + SERVER_SSL_KEYSTORE_PASS, + @Meta(description = "The encryption key for the server (NOT including a subkey), it cannot contain the pipe character \"|\" but can be empty -- is used to encrypt the traffic in fanfix mode (even if empty, traffic will be encrypted in fanfix mode), and used as a password for HTTP (clear text protocol) and HTTPS modes",// format = Format.PASSWORD, def = "") SERVER_KEY, // @Meta(description = "Allow write access to the clients (download story, move story...) without RW subkeys", // @@ -97,9 +105,12 @@ public enum Config { @Meta(description = "If not empty, only the EXACT listed sources will be available for clients without BL subkeys",// array = true, format = Format.STRING, def = "") SERVER_WHITELIST, // - @Meta(description = "The subkeys that the server will allow, including the modes\nA subkey ", // + @Meta(description = "The subkeys that the server will allow, including the modes\nA subkey is used as a login for HTTP (clear text protocol) and HTTPS modes", // array = true, format = Format.STRING, def = "") SERVER_ALLOWED_SUBKEYS, // + @Meta(description = "The maximum size of the cache, in MegaBytes, for HTTP and HTTPS servers", // + format = Format.INT, def = "100") + SERVER_MAX_CACHE_MB, @Meta(description = "DEBUG options",// group = true) @@ -112,28 +123,28 @@ public enum Config { DEBUG_TRACE, // @Meta(description = "Internal configuration\nThose options are internal to the program and should probably not be changed",// - group = true) + hidden = true, group = true) CONF, // @Meta(description = "LaTeX configuration",// - group = true) + hidden = true, group = true) CONF_LATEX_LANG, // @Meta(description = "LaTeX output language (full name) for \"English\"",// - format = Format.STRING, def = "english") + hidden = true, format = Format.STRING, def = "english") CONF_LATEX_LANG_EN, // @Meta(description = "LaTeX output language (full name) for \"French\"",// - format = Format.STRING, def = "french") + hidden = true, format = Format.STRING, def = "french") CONF_LATEX_LANG_FR, // @Meta(description = "other 'by' prefixes before author name, used to identify the author",// - array = true, format = Format.STRING, def = "\"by\",\"par\",\"de\",\"©\",\"(c)\"") + hidden = true, array = true, format = Format.STRING, def = "\"by\",\"par\",\"de\",\"©\",\"(c)\"") CONF_BYS, // @Meta(description = "List of languages codes used for chapter identification (should not be changed)", // - array = true, format = Format.STRING, def = "\"EN\",\"FR\"") + hidden = true, array = true, format = Format.STRING, def = "\"EN\",\"FR\"") CONF_CHAPTER, // @Meta(description = "Chapter identification string in English, used to identify a starting chapter in text mode",// - format = Format.STRING, def = "Chapter") + hidden = true, format = Format.STRING, def = "Chapter") CONF_CHAPTER_EN, // @Meta(description = "Chapter identification string in French, used to identify a starting chapter in text mode",// - format = Format.STRING, def = "Chapitre") + hidden = true, format = Format.STRING, def = "Chapitre") CONF_CHAPTER_FR, // @Meta(description = "YiffStar/SoFurry credentials\nYou can give your YiffStar credentials here to have access to all the stories, though it should not be necessary anymore (some stories used to beblocked for anonymous viewers)",// @@ -161,4 +172,14 @@ public enum Config { @Meta(description = "The token required to use the beta APIv2 from FimFiction (see APIKEY_CLIENT_* if you want to generate a new one from your own API key)", // format = Format.PASSWORD, def = "Bearer WnZ5oHlzQoDocv1GcgHfcoqctHkSwL-D") LOGIN_FIMFICTION_APIKEY_TOKEN, // + + @Meta(description = "e621.net credentials\nYou can give your e621.net credentials here to have access to all the comics and ignore the default blacklist",// + group = true) + LOGIN_E621, // + @Meta(description = "Your e621.net login",// + format = Format.STRING) + LOGIN_E621_LOGIN, // + @Meta(description = "Your e621.net API KEY",// + format = Format.PASSWORD) + LOGIN_E621_APIKEY, // }