lib/rubyfox/server/data/config/admin/descriptors/config_server.txt in rubyfox-server-2.13.7.3 vs lib/rubyfox/server/data/config/admin/descriptors/config_server.txt in rubyfox-server-2.16.0.0

- old
+ new

@@ -5,11 +5,10 @@ //------------------------------------------- // GENERAL SETTINGS //------------------------------------------- - // SERVER NAME { "name":"serverName", "label":"Server name", "tooltip":"Custom name assigned to the server, for easier identification in case of environments running multiple SmartFoxServer instances. The name is displayed in the title bar of all modules, together with the server's address and port", @@ -29,37 +28,44 @@ "name":"address", "label":"IP address", "tooltip":"IP address used by SmartFoxServer", "type":"ComboBox", "value":"127.0.0.1", - "componentParams": + "componentParams": // DEPRECATED { "dataProvider":"{$BasicValue=adminHelper.availableSocketAddresses}" - } + }, + "dataProvider":"{$BasicValue=adminHelper.availableSocketAddresses}" }, { "name":"port", "label":"Port", "tooltip":"Port used by SmartFoxServer", "type":"NumericStepper", "value":9933, - "componentParams": + "componentParams": // DEPRECATED { "minimum":0, "maximum":65535 + }, + "attributes": + { + "min":0, + "max":65535 } }, { "name":"type", "label":"Type", "tooltip":"Communication protocol", "type":"ComboBox", "value":"TCP", - "componentParams": + "componentParams": // DEPRECATED { "dataProvider":"TCP,UDP" - } + }, + "dataProvider":"TCP,UDP" } ], "listValues":{$List=socketAddresses, instance=serverSettings, fields=address;port;type}, "clazz":"ServerSettings$SocketAddress" }, @@ -69,42 +75,57 @@ "name":"sessionMaxIdleTime", "label":"Session maximum idle time", "tooltip":"Maximum idle time for a session (in seconds), after which the client is disconnected; setting a value between 10 and 30 seconds is recommended", "type":"NumericStepper", "value":{$BasicValue=serverSettings.sessionMaxIdleTime}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":5, "maximum":2147483647 + }, + "attributes": + { + "min":5, + "max":2147483647 } }, // USER MAX IDLE TIME { "name":"userMaxIdleTime", "label":"User maximum idle time", "tooltip":"Maximum idle time for a logged user (in seconds), after which the user is disconnected; this value must be greater than the session maximum idle time", "type":"NumericStepper", "value":{$BasicValue=serverSettings.userMaxIdleTime}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":5, "maximum":2147483647 + }, + "attributes": + { + "min":5, + "max":2147483647 } }, // PROTOCOL COMPRESSION THRESHOLD { "name":"protocolCompressionThreshold", "label":"Protocol compression threshold", "tooltip":"Specifies the minimum message size (in bytes) that triggers the protocol compression; recommended values are those equal to or greater than 1024 bytes", "type":"NumericStepper", "value":{$BasicValue=serverSettings.protocolCompressionThreshold}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":256, "maximum":2147483647 + }, + "attributes": + { + "min":256, + "max":2147483647 } }, // USE FRIENDLY EXCEPTIONS { @@ -138,14 +159,19 @@ "name":"schedulerThreadPoolSize", "label":"Server task scheduler thread pool size", "tooltip":"[ADVANCED] Adjust the thread pool size for the System Scheduler", "type":"NumericStepper", "value":{$BasicValue=serverSettings.schedulerThreadPoolSize}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // START EXTENSION FILE MONITOR { @@ -181,37 +207,42 @@ // MAX CONNECTIONS PER IP ADDRESS { "name":"ipFilter.maxConnectionsPerAddress", "label":"Maximum connections per IP address", "tooltip":"Maximum number of connections coming from the same client IP address", - "category":"IP filter", + "category":"IP Filter", "type":"NumericStepper", "value":{$BasicValue=ipFilter.maxConnectionsPerAddress}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":2147483647 + }, + "attributes": + { + "min":1, + "max":2147483647 } }, // IP ADDRESS BLACK LIST { "name":"ipFilter.addressBlackList", "label":"IP addresses black-list", "tooltip":"The black-list prevents the connection attempts coming from the listed client IP addresses", - "category":"IP filter", + "category":"IP Filter", "type":"DataGrid", "defaultListItem": [ { "name":"ipAddress", "label":"IP address", "tooltip":"Client IP address", "type":"TextInput", "value":"", "validator":"ip", - "componentParams": + "componentParams": // DEPRECATED (implicit in validator) { "restrict":"0-9./" } } ], @@ -221,22 +252,22 @@ // IP ADDRESS WHITE LIST { "name":"ipFilter.addressWhiteList", "label":"IP addresses white-list", "tooltip":"The white-list overrides the maximum connections per IP address limit, allowing any number of connections coming from the listed client IP addresses", - "category":"IP filter", + "category":"IP Filter", "type":"DataGrid", "defaultListItem": [ { "name":"ipAddress", "label":"IP address", "tooltip":"Client IP address", "type":"TextInput", "value":"", "validator":"ip", - "componentParams": + "componentParams": // DEPRECATED (implicit in validator) { "restrict":"0-9./" } } ], @@ -250,36 +281,40 @@ // AUTO-REMOVE { "name":"bannedUserManager.isAutoRemove", "label":"Auto-remove", "tooltip":"Automatically remove banned users from the ban list when their ban-timeframe expires", - "category":"Ban manager", + "category":"Ban Manager", "type":"CheckBox", "value":{$BasicValue=bannedUserManager.isAutoRemove} }, // PERSISTENT { "name":"bannedUserManager.isPersistent", "label":"Persistent", "tooltip":"Persistently store the banned user list so that it's not lost across SmartFoxServer restarts (recommended)", - "category":"Ban manager", + "category":"Ban Manager", "type":"CheckBox", "value":{$BasicValue=bannedUserManager.isPersistent} }, // CUSTOM PERSISTENCE CLASS NAME { "name":"bannedUserManager.customPersistenceClass", "label":"Custom persistence class name", "tooltip":"Allows to provide a custom class to implement banned user list persistence", - "category":"Ban manager", + "category":"Ban Manager", "type":"TextInput", "value":"{$BasicValue=bannedUserManager.customPersistenceClass}", - "componentParams": + "componentParams": // DEPRECATED { "restrict":"a-zA-Z0-9._" + }, + "attributes": + { + "pattern":"[a-zA-Z0-9._]+" } }, //------------------------------------------- // WEB SERVER @@ -288,90 +323,100 @@ // ACTIVE { "name":"webServer.isActive", "label":"Activate", "tooltip":"Enable/disable the embedded web server", - "category":"Web server", + "category":"Web Server", "type":"CheckBox", "value":{$BasicValue=webServer.isActive} }, // ENABLE HTTP MODULE { "name":"webServer.enableHttp", "label":"Enable HTTP", "tooltip":"Enable/disable the HTTP module in the embedded web server", - "category":"Web server", + "category":"Web Server", "type":"CheckBox", "value":{$BasicValue=webServer.enableHttp} }, // HTTP/WS PORT { "name":"webServer.httpPort", "label":"HTTP/WS port", - "tooltip":"TCP port used by the embedded web server for HTTP and WS communication", - "category":"Web server", + "tooltip":"TCP port used by the embedded web server for HTTP and WS communication\n\n<b>NOTE</b>\nThe entered value is ignored if HTTP module is disabled", + "category":"Web Server", "type":"NumericStepper", "value":{$BasicValue=webServer.httpPort}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":0, "maximum":65535 + }, + "attributes": + { + "min":0, + "max":65535 } }, // ENABLE HTTPS MODULE { "name":"webServer.enableHttps", "label":"Enable HTTPS", "tooltip":"Enable/disable the HTTPS module in the embedded web server", - "category":"Web server", + "category":"Web Server", "type":"CheckBox", "value":{$BasicValue=webServer.enableHttps} }, // HTTPS/WSS PORT { "name":"webServer.httpsPort", "label":"HTTPS/WSS port", - "tooltip":"TCP port used by the embedded web server for HTTPS and WSS communication", - "category":"Web server", + "tooltip":"TCP port used by the embedded web server for HTTPS and WSS communication\n\n<b>NOTE</b>\nThe entered value is ignored if HTTPS module is disabled", + "category":"Web Server", "type":"NumericStepper", "value":{$BasicValue=webServer.httpsPort}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":0, "maximum":65535 + }, + "attributes": + { + "min":0, + "max":65535 } }, // ENABLE WS/WSS COMMUNICATION { "name":"webServer.isWSActive", "label":"Enable WS/WSS", "tooltip":"Enable/disable the WebSocket communication (both WS and WSS) through the HTTP/S modules; requires one of the two modules (or both) to be active", - "category":"Web server", + "category":"Web Server", "type":"CheckBox", "value":{$BasicValue=webServer.isWSActive} }, -// USE WS BINARY PROTOCOL +// ENABLE X-FORWARDED-FOR DIRECTIVE { - "name":"webServer.useWSBinaryProtocol", - "label":"Use WS binary protocol", - "tooltip":"Use binary protocol for WebSocket communication; this must match the specs of the client API", - "category":"Web server", + "name":"webServer.isXForwardedForActive", + "label":"Enable X-Forwarded-For", + "tooltip":"Enable this feature only if your server is behind a proxy/firewall supporting the X-Forwarded-For directive. It allows to detect the original IP address of the remote client", + "category":"Web Server", "type":"CheckBox", - "value":{$BasicValue=webServer.useWSBinaryProtocol} + "value":{$BasicValue=webServer.isXForwardedForActive} }, // ALLOWED WEBSOCKET ORIGINS { "name":"webServer.allowedWebsocketOrigins", "label":"Allowed client origins", - "tooltip":"List of origins from which the client should be allowed to connect. It should represent only the URL(s) where the client can be downloaded from", + "tooltip":"List of origins from which the client should be allowed to connect; it should represent only the URL(s) where the client can be downloaded from", "category":"Web server", "type":"DataGrid", "defaultListItem": [ { @@ -384,42 +429,90 @@ } ], "listValues":{$List=allowedWebsocketOrigins, instance=webServer, createField=origin} }, +// TOMCAT STATUS ACCESS +{ + "name":"webServer.tomcatUsers", + "label":"Tomcat users", + "tooltip":"The credentials to enter the advanced web server status console, accessible from the AdminTool's Dashboard module", + "category":"Web server", + "type":"DataGrid", + "defaultListItem": + [ + { + "name":"username", + "label":"Username", + "tooltip":"Tomcat's username", + "type":"TextInput", + "value":"", + "validator":"notNull" + }, + { + "name":"password", + "label":"Password", + "tooltip":"Tomcat's password", + "type":"TextInput", + "value":"", + "validator":"pwd", + "componentParams": // DEPRECATED + { + "displayAsPassword":true + }, + "attributes": + { + "type":"password" + } + } + ], + "listValues":{$List=tomcatUsers, instance=webServer, fields=username;password}, + "clazz":"TomcatUser" +}, + // BLUEBOX POLLING TIMEOUT { "name":"webServer.blueBoxPollingTimeout", "label":"BlueBox polling timeout", "tooltip":"The amount of seconds after which a client connected through the BlueBox is considered disconnected if he doesn't send a polling request", - "category":"Web server", + "category":"Web Server", "type":"NumericStepper", "value":{$BasicValue=webServer.blueBoxPollingTimeout}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":25, "maximum":40 }, + "attributes": + { + "min":25, + "max":40 + }, "separator": { "pos":"before", - "text":"\n<b>BlueBox settings</b>" + "text":"\n<b>BlueBox Settings</b>" } }, // BLUEBOX MESSAGES QUEUE SIZE { "name":"webServer.blueBoxMsgQueueSize", "label":"BlueBox messages queue size", "tooltip":"The maximum amount of messages that can be queued for each client connected through the BlueBox", - "category":"Web server", + "category":"Web Server", "type":"NumericStepper", "value":{$BasicValue=webServer.blueBoxMsgQueueSize}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":20, "maximum":100 + }, + "attributes": + { + "min":20, + "max":100 } }, //------------------------------------------- // FLASH CROSSDOMAIN POLICY SETTINGS @@ -476,14 +569,19 @@ "label":"SMTP port", "tooltip":"The SMTP server port", "category":"Mailer", "type":"NumericStepper", "value":{$BasicValue=mailer.smtpPort}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":0, "maximum":65535 + }, + "attributes": + { + "min":0, + "max":65535 } }, // MAIL USER { @@ -502,13 +600,17 @@ "label":"Mail password", "tooltip":"The SMTP server account password", "category":"Mailer", "type":"TextInput", "value":"{$BasicValue=mailer.mailPass}", - "componentParams": + "componentParams": // DEPRECATED { "displayAsPassword":true + }, + "attributes": + { + "type":"password" } }, //------------------------------------------- // REMOTE ADMIN @@ -517,11 +619,11 @@ // ADMINISTRATORS { "name":"remoteAdmin.administrators", "label":"Administrators", "tooltip":"The access credentials and permissions of SmartFoxServer administrators; removing all the administrators will prevent the AdminTool to reconnect to the server instance after a disconnection", - "category":"Remote admin", + "category":"Remote Admin", "type":"DataGrid", "defaultListItem": [ { "name":"login", @@ -536,13 +638,17 @@ "label":"Password", "tooltip":"Administrator's password", "type":"TextInput", "value":"", "validator":"pwd", - "componentParams": + "componentParams": // DEPRECATED { "displayAsPassword":true + }, + "attributes": + { + "type":"password" } }, { "name":"allowHalt", "label":"Allow halt/restart", @@ -554,42 +660,43 @@ "name":"disabledModulesString", "label":"Disabled modules", "tooltip":"The list of AdminTool's modules that the administrator is NOT allowed to access", "type":"DualList", "value":"", - "componentParams": + "componentParams": // DEPRECATED { "selectableValues":"{$BasicValue=adminHelper.allModules}" - } + }, + "dataProvider":"{$BasicValue=adminHelper.allModules}" } ], "listValues":{$List=administrators, instance=remoteAdmin, fields=login;password;allowHalt;disabledModulesString}, "clazz":"AdminUser", "separator": { "pos":"before", - "text":"<b>IMPORTANT</b>: al the settings below, except 'Use encryption', are <b>applied immediately</b> on submission, without a server restart being required" + "text":"<b>IMPORTANT</b>: all settings below, except 'Use encryption', are <b>applied immediately</b> on submission, without a server restart being required" } }, // ALLOWED REMOTE ADDRESSES { "name":"remoteAdmin.allowedRemoteAddresses", "label":"Allowed client IP addresses", "tooltip":"List of client IP address which are allowed to access the SmartFoxServer's administration; leave the list empty to skip this check on administrator login", - "category":"Remote admin", + "category":"Remote Admin", "type":"DataGrid", "defaultListItem": [ { "name":"ipAddress", "label":"IP address", "tooltip":"Client IP address", "type":"TextInput", "value":"", "validator":"ip", - "componentParams": + "componentParams": // DEPRECATED (implicit in validator) { "restrict":"0-9." } } ], @@ -599,26 +706,31 @@ // ADMIN TCP PORT { "name":"remoteAdmin.adminTcpPort", "label":"Administration TCP port", "tooltip":"TCP port number used for administration; set it to -1 to skip this check on administrator login", - "category":"Remote admin", + "category":"Remote Admin", "type":"NumericStepper", "value":{$BasicValue=remoteAdmin.adminTcpPort}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":-1, "maximum":65535 + }, + "attributes": + { + "min":-1, + "max":65535 } }, // USE ENCRYPTION { "name":"remoteAdmin.useEncryption", "label":"Use encryption", "tooltip":"Enable connection encryption for the Admin Tool; after the restart, the 'Use encryption' checkbox on the login screen must be flagged in order to be able to establish a connection with the server", - "category":"Remote admin", + "category":"Remote Admin", "type":"CheckBox", "value":{$BasicValue=remoteAdmin.useEncryption} }, //------------------------------------------- @@ -641,28 +753,34 @@ "label":"Run on day of week", "tooltip":"Schedule the log analysis to run everyday or on a specific day of the week", "category":"Analytics", "type":"ComboBox", "value":"{$BasicValue=analytics.runOnDay}", - "componentParams": + "componentParams": // DEPRECATED { "dataProvider":"[everyday],Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday" - } + }, + "dataProvider":"[everyday],Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday" }, // RUN AT HOUR OF DAY { "name":"analytics.runAtHour", "label":"Run at hour of day", "tooltip":"Schedule the log analysis to run at the selected hour of the scheduled day", "category":"Analytics", "type":"NumericStepper", "value":{$BasicValue=analytics.runAtHour}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":0, "maximum":23 + }, + "attributes": + { + "min":0, + "max":23 } }, // RUN ON STARTUP { @@ -710,14 +828,20 @@ "label":"Logs locale", "tooltip":"The two letters ISO 3166 country code indicating the locale of the server which generated the log files; leave empty if logs are generated by the SmartFoxServer instance you are now connected to\n\n<b>NOTE</b>\nUse this parameter if you need to analyze logs generated by another SmartFoxServer instance hosted on a server with a different locale setting", "category":"Analytics", "type":"TextInput", "value":"{$BasicValue=analytics.locale}", - "componentParams": + "componentParams": // DEPRECATED { "restrict":"a-zA-Z", "maxChars":2 + }, + "attributes": + { + "pattern":"[a-zA-Z]{2}", + "size":2, + "maxlength":2 } }, //------------------------------------------- // THREAD POOLS SETTINGS @@ -726,121 +850,156 @@ // SYSTEM CORE THREADS { "name":"systemThreadPoolSettings.coreThreads", "label":"Core threads", "tooltip":"Number of core threads in the pool; these will be always available", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.coreThreads}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 }, + "attributes": + { + "min":1, + "max":10000 + }, "separator": { "pos":"before", - "text":"<b>IMPORTANT</b>: these settings can affect performance dramatically; change them only if you really know what you are doing\n\n<b>System thread pool</b>" + "text":"<b>IMPORTANT</b>: these settings can affect performance dramatically; change them only if you really know what you are doing\n\n<b>System Thread Pool.</b>" } }, // SYSTEM BACKUP THREADS { "name":"systemThreadPoolSettings.backupThreads", "label":"Backup threads", "tooltip":"Number of new threads to be added when a backups is called", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.backupThreads}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // SYSTEM MAX BACKUPS { "name":"systemThreadPoolSettings.maxBackups", "label":"Maximum backups", "tooltip":"Number of times backup threads can be called", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.maxBackups}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // SYSTEM QUEUE SIZE TRIGGERING BACKUP { "name":"systemThreadPoolSettings.queueSizeTriggeringBackup", "label":"Queue size triggering a backup", "tooltip":"Minimum size of the queue that will trigger a backup, unless the size goes down below this value within the backup triggering time", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.queueSizeTriggeringBackup}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // SYSTEM BACKUP TRIGGERING TIME { "name":"systemThreadPoolSettings.secondsTriggeringBackup", "label":"Backup triggering time", "tooltip":"The number of seconds after which the backup is called if the queue size keeps being greater than the minimum queue size", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.secondsTriggeringBackup}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // SYSTEM BACKUP THREAD EXPIRATION TIME { "name":"systemThreadPoolSettings.backupThreadsExpiry", "label":"Backup threads expiration", "tooltip":"The number of seconds after which the backup threads are removed, provided they are not needed anymore", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.backupThreadsExpiry}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // SYSTEM QUEUE SIZE TRIGGERING BACKUP EXPIRATION { "name":"systemThreadPoolSettings.queueSizeTriggeringBackupExpiry", "label":"Queue size preventing backup expiration", "tooltip":"The minimum amount of messages in the queue that WILL NOT allow the backup threads to be removed (backup won't expire if the queue size is greater than this value)", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=systemThreadPoolSettings.queueSizeTriggeringBackupExpiry}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // LOG ACTIVITY { "name":"systemThreadPoolSettings.logActivity", "label":"Log activity", "tooltip":"Write basic informations about new threads being added or removed in the log", - "category":"Thread pools", + "category":"Thread Pools", "type":"CheckBox", "value":{$BasicValue=systemThreadPoolSettings.logActivity} }, // PRE START CORE THREADS @@ -858,121 +1017,156 @@ // EXTENSION CORE THREADS { "name":"extensionThreadPoolSettings.coreThreads", "label":"Core threads", "tooltip":"Number of core threads in the pool; these will be always available", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.coreThreads}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 }, + "attributes": + { + "min":1, + "max":10000 + }, "separator": { "pos":"before", - "text":"\n<b>Extension thread pool</b>" + "text":"\n<b>Extension Thread Pool</b>" } }, // EXTENSION BACKUP THREADS { "name":"extensionThreadPoolSettings.backupThreads", "label":"Backup threads", "tooltip":"Number of new threads to be added when a backup is called", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.backupThreads}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // EXTENSION MAX BACKUPS { "name":"extensionThreadPoolSettings.maxBackups", "label":"Maximum backups", "tooltip":"Number of times backup threads can be called", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.maxBackups}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // EXTENSION QUEUE SIZE TRIGGERING BACKUP { "name":"extensionThreadPoolSettings.queueSizeTriggeringBackup", "label":"Queue size triggering a backup", "tooltip":"Minimum size of the queue that will trigger a backup, unless the size goes down below this value within the backup triggering time", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.queueSizeTriggeringBackup}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // EXTENSION BACKUP TRIGGERING TIME { "name":"extensionThreadPoolSettings.secondsTriggeringBackup", "label":"Backup triggering time", "tooltip":"The number of seconds after which the backup is called if the queue size keeps being greater than the minimum queue size", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.secondsTriggeringBackup}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // EXTENSION BACKUP THREAD EXPIRATION TIME { "name":"extensionThreadPoolSettings.backupThreadsExpiry", "label":"Backup threads expiration", "tooltip":"The number of seconds after which the backup threads are removed, provided they are not needed anymore", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.backupThreadsExpiry}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // EXTENSION QUEUE SIZE TRIGGERING BACKUP EXPIRATION { "name":"extensionThreadPoolSettings.queueSizeTriggeringBackupExpiry", "label":"Queue size preventing backup expiration", "tooltip":"The minimum amount of messages in the queue that WILL NOT allow the backup threads to be removed (backup won't expire if the queue size is greater than this value)", - "category":"Thread pools", + "category":"Thread Pools", "type":"NumericStepper", "value":{$BasicValue=extensionThreadPoolSettings.queueSizeTriggeringBackupExpiry}, - "componentParams": + "componentParams": // DEPRECATED { "minimum":1, "maximum":10000 + }, + "attributes": + { + "min":1, + "max":10000 } }, // LOG ACTIVITY { "name":"extensionThreadPoolSettings.logActivity", "label":"Log activity", "tooltip":"Write basic informations about new threads being added or removed in the log", - "category":"Thread pools", + "category":"Thread Pools", "type":"CheckBox", "value":{$BasicValue=extensionThreadPoolSettings.logActivity} }, // PRE START CORE THREADS @@ -984,19 +1178,39 @@ "type":"CheckBox", "value":{$BasicValue=extensionThreadPoolSettings.prestartAllCoreThreads} }, //------------------------------------------- +// GEOLOCATION DB +//------------------------------------------- + +// UPDATE DATE +{ + "name":"adminHelper.geoDbReleaseDate", + "label":"Installed database release date", + "tooltip":"Release date of the currently installed version of MaxMind's GeoLite2 Country database", + "category":"Geolocation DB", + "type":"TextInput", + "value":"{$BasicValue=adminHelper.geoDbReleaseDate}", + "edit":false, + "separator": + { + "pos":"before", + "text":"In SmartFoxServer, the <strong>automatic geolocation</strong> of every client and the <strong>demographic view</strong> in the AdminTool's Analytics module are based on <a href=\"http://dev.maxmind.com/geoip/geoip2/geolite2/\" target=\"_blank\">MaxMind's GeoLite2 Country database</a>. An updated version of the database is made available by MaxMind weekly, every Tuesday." + } +}, + +//------------------------------------------- // JVM SETTINGS //------------------------------------------- // JVM OPTIONS { "name":"adminHelper.vmOptions", "label":"JVM options", "tooltip":"A list of additional settings to fine tune the Java Virtual Machine when running the SmartFoxServer process \n\n<b>IMPORTANT</b>\nThe following options are mandatory; if missing, SmartFoxServer execution could be negatively affected:\n<i>-Dfile.encoding=UTF-8</i>", - "category":"JVM settings", + "category":"JVM Settings", "type":"DataGrid", "defaultListItem": [ { "name":"option", @@ -1012,11 +1226,11 @@ // JVM CLASSPATH { "name":"adminHelper.vmClasspath", "label":"JVM classpath", - "tooltip":"A list of search paths for classes and resources used by SmartFoxServer and its custom Extensions \n\n<b>IMPORTANT</b>\nThe following paths are mandatory; if missing, you won't be able to run SmartFoxServer:\n<i>./\nlib/*\nlib/jetty/lib/*\nextensions/__lib__/*</i>", - "category":"JVM settings", + "tooltip":"A list of search paths for classes and resources used by SmartFoxServer and its custom Extensions \n\n<b>IMPORTANT</b>\nThe following paths are mandatory; if missing, you won't be able to run SmartFoxServer:\n<i>./\nlib/*\nlib/apache-tomcat/bin/*\nextensions/__lib__/*</i>", + "category":"JVM Settings", "type":"DataGrid", "defaultListItem": [ { "name":"path", \ No newline at end of file