rubyfox-server 2.12.5.1 → 2.13.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rubyfox/server/data/config/admin/descriptors/config_room.txt +4 -4
  3. data/lib/rubyfox/server/data/config/admin/descriptors/config_server.txt +46 -98
  4. data/lib/rubyfox/server/data/config/admin/descriptors/config_zone.txt +3 -3
  5. data/lib/rubyfox/server/data/config/admin/descriptors/runtime_user.txt +8 -1
  6. data/lib/rubyfox/server/data/config/core.xml +2 -2
  7. data/lib/rubyfox/server/data/config/server.xml +5 -12
  8. data/lib/rubyfox/server/data/data/bannedusers/users.bin +0 -0
  9. data/lib/rubyfox/server/data/extensions/pyTest/Simple.py +1 -1
  10. data/lib/rubyfox/server/data/lib/cachedir/packages/charsets.pkc +0 -0
  11. data/lib/rubyfox/server/data/lib/cachedir/packages/cldrdata.pkc +0 -0
  12. data/lib/rubyfox/server/data/lib/cachedir/packages/dnsns.pkc +0 -0
  13. data/lib/rubyfox/server/data/lib/cachedir/packages/jaccess.pkc +0 -0
  14. data/lib/rubyfox/server/data/lib/cachedir/packages/javax.mail.glassfish-1.4.1.v201005082020.pkc +0 -0
  15. data/lib/rubyfox/server/data/lib/cachedir/packages/javax.transaction-api-1.2.pkc +0 -0
  16. data/lib/rubyfox/server/data/lib/cachedir/packages/jce.pkc +0 -0
  17. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-annotations-9.3.11.v20160721.pkc +0 -0
  18. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-deploy-9.3.11.v20160721.pkc +0 -0
  19. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-http-9.3.11.v20160721.pkc +0 -0
  20. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-io-9.3.11.v20160721.pkc +0 -0
  21. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-jndi-9.3.11.v20160721.pkc +0 -0
  22. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-plus-9.3.11.v20160721.pkc +0 -0
  23. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-schemas-3.1.pkc +0 -0
  24. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-security-9.3.11.v20160721.pkc +0 -0
  25. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-server-9.3.11.v20160721.pkc +0 -0
  26. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-servlet-9.3.11.v20160721.pkc +0 -0
  27. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-util-9.3.11.v20160721.pkc +0 -0
  28. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-webapp-9.3.11.v20160721.pkc +0 -0
  29. data/lib/rubyfox/server/data/lib/cachedir/packages/jetty-xml-9.3.11.v20160721.pkc +0 -0
  30. data/lib/rubyfox/server/data/lib/cachedir/packages/jfr.pkc +0 -0
  31. data/lib/rubyfox/server/data/lib/cachedir/packages/jfxrt.pkc +0 -0
  32. data/lib/rubyfox/server/data/lib/cachedir/packages/jsse.pkc +0 -0
  33. data/lib/rubyfox/server/data/lib/cachedir/packages/localedata.pkc +0 -0
  34. data/lib/rubyfox/server/data/lib/cachedir/packages/nashorn.pkc +0 -0
  35. data/lib/rubyfox/server/data/lib/cachedir/packages/packages.idx +0 -0
  36. data/lib/rubyfox/server/data/lib/cachedir/packages/resources.pkc +0 -0
  37. data/lib/rubyfox/server/data/lib/cachedir/packages/rt.pkc +0 -0
  38. data/lib/rubyfox/server/data/lib/cachedir/packages/servlet-api-3.1.pkc +0 -0
  39. data/lib/rubyfox/server/data/lib/cachedir/packages/sunec.pkc +0 -0
  40. data/lib/rubyfox/server/data/lib/cachedir/packages/sunjce_provider.pkc +0 -0
  41. data/lib/rubyfox/server/data/lib/cachedir/packages/sunpkcs11.pkc +0 -0
  42. data/lib/rubyfox/server/data/lib/cachedir/packages/zipfs.pkc +0 -0
  43. data/lib/rubyfox/server/data/lib/commons-collections-3.2.2.jar +0 -0
  44. data/lib/rubyfox/server/data/lib/jetty/etc/jetty.xml +37 -0
  45. data/lib/rubyfox/server/data/lib/js/JSApi.js +1298 -0
  46. data/lib/rubyfox/server/data/lib/js/LibApi.js +2046 -0
  47. data/lib/rubyfox/server/data/lib/js/LibUtil.js +22 -0
  48. data/lib/rubyfox/server/data/lib/logs-analysis-app.jar +0 -0
  49. data/lib/rubyfox/server/data/lib/sfs2x-admin.jar +0 -0
  50. data/lib/rubyfox/server/data/lib/sfs2x-core.jar +0 -0
  51. data/lib/rubyfox/server/data/lib/sfs2x.jar +0 -0
  52. data/lib/rubyfox/server/data/sfs2x-service +3 -3
  53. data/lib/rubyfox/server/data/sfs2x.sh +1 -1
  54. data/lib/rubyfox/server/data/www/root/admin/AdminTool.swf +0 -0
  55. data/lib/rubyfox/server/data/www/root/admin/ReleaseNotes.txt +8 -0
  56. data/lib/rubyfox/server/data/www/root/admin/index.html +6 -6
  57. data/lib/rubyfox/server/data/www/root/admin/modules/Analytics.swf +0 -0
  58. data/lib/rubyfox/server/data/www/root/admin/modules/BanManager.swf +0 -0
  59. data/lib/rubyfox/server/data/www/root/admin/modules/BlueBoxMonitor.swf +0 -0
  60. data/lib/rubyfox/server/data/www/root/admin/modules/Console.swf +0 -0
  61. data/lib/rubyfox/server/data/www/root/admin/modules/Dashboard.swf +0 -0
  62. data/lib/rubyfox/server/data/www/root/admin/modules/ExtensionManager.swf +0 -0
  63. data/lib/rubyfox/server/data/www/root/admin/modules/LicenseManager.swf +0 -0
  64. data/lib/rubyfox/server/data/www/root/admin/modules/LogViewer.swf +0 -0
  65. data/lib/rubyfox/server/data/www/root/admin/modules/ServerConfigurator.swf +0 -0
  66. data/lib/rubyfox/server/data/www/root/admin/modules/ZoneConfigurator.swf +0 -0
  67. data/lib/rubyfox/server/data/www/root/admin/modules/ZoneMonitor.swf +0 -0
  68. data/lib/rubyfox/server/data/www/sfs2x-ws.war +0 -0
  69. data/lib/rubyfox/server/data/zones/BasicExamples.zone.xml +147 -0
  70. data/lib/rubyfox/server/version.rb +1 -1
  71. metadata +42 -7
  72. data/lib/rubyfox/server/data/lib/commons-collections-3.2.1.jar +0 -0
  73. data/lib/rubyfox/server/data/lib/js.jar +0 -0
  74. data/lib/rubyfox/server/data/lib/netty-3.9.0.Final.jar +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9da6b1476517c9814bda131e3aaf18875baba7e4
4
- data.tar.gz: 550d639832f38e5ff0e683576eae9696b89990f1
3
+ metadata.gz: '0802a76d4ecd0d4c60e5f27f41fe0e258837a032'
4
+ data.tar.gz: bbad872e5dec906868072213bb80d4df5173a4ef
5
5
  SHA512:
6
- metadata.gz: 1a157bc52205ac0cee7767202a138bb14619446bdda72fd1be4f68e7b5de3b60dd43c2091a29aaf677d788ae932d54707345e5699dae18413b91a95c7b1f6124
7
- data.tar.gz: 3b9a1404d55aaa0557dc4b958bbfd024f6c21c527013d586845e6f36c7945482dd1991db19ff1c8f2b770033b291c4e6cff10c7e84039edf86a559cf66fccbad
6
+ metadata.gz: ee74e8b5372128029ddcd24ccc5132a096e4c43564d8b527d5a0fc9e08d4edf00c1a41a4db0813b0d027087df5e10fbdebe9a3d9529da472b9a8ab3ae42dd90e
7
+ data.tar.gz: fc4666030a72b2e79923da5a6508693f3ed69f0fe5aad0b3d1b4bba736faf0ab7cd7c360936eea864ad6f69427f5627fecf165387da9d942e007489e1f188290
@@ -258,7 +258,7 @@
258
258
  {
259
259
  "name":"extension.name",
260
260
  "label":"Name",
261
- "tooltip":"The name of the Extension to be plugged at Room level; the '__lib__' folder is also listed, in case one or more Extension jar files are deployed there for specific class-loading purposes\n\nIf a new Extension is deployed on the server while editing the Zone settings, cancel and re-edit the zone to update this list",
261
+ "tooltip":"The name of the Extension to be plugged at Room level; the '__lib__' folder is also listed, in case one or more Java Extensions are deployed there for specific class-loading purposes\n\nIf a new Extension is deployed on the server while editing the Zone settings, cancel and re-edit the zone to update this list",
262
262
  "category":"Room Extension",
263
263
  "type":"ComboBox",
264
264
  "value":"{$BasicValue=extension.name}",
@@ -281,7 +281,7 @@
281
281
  "trigger":true,
282
282
  "componentParams":
283
283
  {
284
- "dataProvider":"JAVA,PYTHON"
284
+ "dataProvider":"JAVA,JAVASCRIPT,PYTHON"
285
285
  }
286
286
  },
287
287
 
@@ -289,7 +289,7 @@
289
289
  {
290
290
  "name":"extension.file",
291
291
  "label":"Main class",
292
- "tooltip":"The fully qualified name of the main Extension class; this class must extend either SFSExtension or BaseSFSExtension classes",
292
+ "tooltip":"The fully qualified name of the main Extension class; Java Extensions must extend either SFSExtension or BaseSFSExtension classes",
293
293
  "category":"Room Extension",
294
294
  "type":"ComboBox",
295
295
  "value":"{$BasicValue=extension.file}",
@@ -303,7 +303,7 @@
303
303
  {
304
304
  "name":"extension.filterClass",
305
305
  "label":"Use naming convention",
306
- "tooltip":"Filter the 'Main class' box showing the classes with names ending with the word 'Extension' only (for example 'com.example.MyJavaExtension' or 'MyPythonExtension.py')\n\n<b>NOTE</b>: this setting is used to improve the Admin Tool usage only, so it doesn't affect the server configuration in any way",
306
+ "tooltip":"Filter the 'Main class' box showing the classes with names ending with the word 'Extension' only (for example 'com.example.MyJavaExtension' or 'MyJavaScriptExtension.js')\n\n<b>NOTE</b>: this setting is used to improve the Admin Tool usage only, so it doesn't affect the server configuration in any way",
307
307
  "category":"Room Extension",
308
308
  "type":"CheckBox",
309
309
  "value":false,
@@ -281,98 +281,6 @@
281
281
  }
282
282
  },
283
283
 
284
- //-------------------------------------------
285
- // HTML WEBSOCKETS
286
- //-------------------------------------------
287
-
288
- // ACTIVE
289
- {
290
- "name":"webSocket.isActive",
291
- "label":"Activate WebSocket protocol",
292
- "tooltip":"Enable/disable the HTML5 WebSockets protocol support",
293
- "category":"HTML5 WebSockets",
294
- "type":"CheckBox",
295
- "value":{$BasicValue=webSocket.isActive}
296
- },
297
-
298
- // LISTENER ADDRESS
299
- {
300
- "name":"webSocket.bindAddress",
301
- "label":"WebSocket listener address",
302
- "tooltip":"IP address used for WebSocket communication",
303
- "category":"HTML5 WebSockets",
304
- "type":"ComboBox",
305
- "value":"{$BasicValue=webSocket.bindAddress}",
306
- "componentParams":
307
- {
308
- "dataProvider":"{$BasicValue=adminHelper.availableSocketAddresses}"
309
- }
310
- },
311
-
312
- // LISTENER TCP PORT
313
- {
314
- "name":"webSocket.tcpPort",
315
- "label":"WebSocket listener port",
316
- "tooltip":"TCP port used for WebSocket communication",
317
- "category":"HTML5 WebSockets",
318
- "type":"NumericStepper",
319
- "value":{$BasicValue=webSocket.tcpPort},
320
- "componentParams":
321
- {
322
- "minimum":0,
323
- "maximum":65535
324
- }
325
- },
326
-
327
- // LISTENER SSL PORT
328
- {
329
- "name":"webSocket.sslPort",
330
- "label":"WebSocket Secure listener port",
331
- "tooltip":"SSL port used for encrypted WebSocket communication",
332
- "category":"HTML5 WebSockets",
333
- "type":"NumericStepper",
334
- "value":{$BasicValue=webSocket.sslPort},
335
- "componentParams":
336
- {
337
- "minimum":0,
338
- "maximum":65535
339
- }
340
- },
341
-
342
- // USE SSL
343
- {
344
- "name":"webSocket.isSSL",
345
- "label":"Use WSS protocol",
346
- "tooltip":"Enable/disable the SSL encryption of WebSockets protocol",
347
- "category":"HTML5 WebSockets",
348
- "type":"CheckBox",
349
- "value":{$BasicValue=webSocket.isSSL}
350
- },
351
-
352
- // KEYSTORE FILE
353
- {
354
- "name":"webSocket.keyStoreFile",
355
- "label":"KeyStore file",
356
- "tooltip":"Location of the repository of security certificates to be used when WSS is enabled",
357
- "category":"HTML5 WebSockets",
358
- "type":"TextInput",
359
- "value":"{$BasicValue=webSocket.keyStoreFile}"
360
- },
361
-
362
- // KEYSTORE PASSWORD
363
- {
364
- "name":"webSocket.keyStorePassword",
365
- "label":"KeyStore password",
366
- "tooltip":"Password of the KeyStore repository",
367
- "category":"HTML5 WebSockets",
368
- "type":"TextInput",
369
- "value":"{$BasicValue=webSocket.keyStorePassword}",
370
- "componentParams":
371
- {
372
- "displayAsPassword":true
373
- }
374
- },
375
-
376
284
  //-------------------------------------------
377
285
  // WEB SERVER
378
286
  //-------------------------------------------
@@ -397,11 +305,11 @@
397
305
  "value":{$BasicValue=webServer.enableHttp}
398
306
  },
399
307
 
400
- // HTTP PORT
308
+ // HTTP/WS PORT
401
309
  {
402
310
  "name":"webServer.httpPort",
403
- "label":"HTTP port",
404
- "tooltip":"TCP port used by the embedded web server for HTTP communication",
311
+ "label":"HTTP/WS port",
312
+ "tooltip":"TCP port used by the embedded web server for HTTP and WS communication",
405
313
  "category":"Web server",
406
314
  "type":"NumericStepper",
407
315
  "value":{$BasicValue=webServer.httpPort},
@@ -422,11 +330,11 @@
422
330
  "value":{$BasicValue=webServer.enableHttps}
423
331
  },
424
332
 
425
- // HTTPS PORT
333
+ // HTTPS/WSS PORT
426
334
  {
427
335
  "name":"webServer.httpsPort",
428
- "label":"HTTPS port",
429
- "tooltip":"TCP port used by the embedded web server for HTTPS communication",
336
+ "label":"HTTPS/WSS port",
337
+ "tooltip":"TCP port used by the embedded web server for HTTPS and WSS communication",
430
338
  "category":"Web server",
431
339
  "type":"NumericStepper",
432
340
  "value":{$BasicValue=webServer.httpsPort},
@@ -437,6 +345,26 @@
437
345
  }
438
346
  },
439
347
 
348
+ // ENABLE WS/WSS COMMUNICATION
349
+ {
350
+ "name":"webServer.isWSActive",
351
+ "label":"Enable WS/WSS",
352
+ "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",
353
+ "category":"Web server",
354
+ "type":"CheckBox",
355
+ "value":{$BasicValue=webServer.isWSActive}
356
+ },
357
+
358
+ // USE WS BINARY PROTOCOL
359
+ {
360
+ "name":"webServer.useWSBinaryProtocol",
361
+ "label":"Use WS binary protocol",
362
+ "tooltip":"Use binary protocol for WebSocket communication; this must match the specs of the client API",
363
+ "category":"Web server",
364
+ "type":"CheckBox",
365
+ "value":{$BasicValue=webServer.useWSBinaryProtocol}
366
+ },
367
+
440
368
  // BLUEBOX POLLING TIMEOUT
441
369
  {
442
370
  "name":"webServer.blueBoxPollingTimeout",
@@ -894,6 +822,16 @@
894
822
  "value":{$BasicValue=systemThreadPoolSettings.logActivity}
895
823
  },
896
824
 
825
+ // PRE START CORE THREADS
826
+ {
827
+ "name":"systemThreadPoolSettings.prestartAllCoreThreads",
828
+ "label":"Prestart all core threads",
829
+ "tooltip":"Immediately instantiate all core threads. When turned off threads will be created lazily, when actual work is submitted",
830
+ "category":"Thread pools",
831
+ "type":"CheckBox",
832
+ "value":{$BasicValue=systemThreadPoolSettings.prestartAllCoreThreads}
833
+ },
834
+
897
835
  //-------------------------------------------
898
836
 
899
837
  // EXTENSION CORE THREADS
@@ -1016,6 +954,16 @@
1016
954
  "value":{$BasicValue=extensionThreadPoolSettings.logActivity}
1017
955
  },
1018
956
 
957
+ // PRE START CORE THREADS
958
+ {
959
+ "name":"extensionThreadPoolSettings.prestartAllCoreThreads",
960
+ "label":"Prestart all core threads",
961
+ "tooltip":"Immediately instantiate all core threads. When turned off threads will be created lazily, when actual work is submitted",
962
+ "category":"Thread pools",
963
+ "type":"CheckBox",
964
+ "value":{$BasicValue=extensionThreadPoolSettings.prestartAllCoreThreads}
965
+ },
966
+
1019
967
  //-------------------------------------------
1020
968
  // JVM SETTINGS
1021
969
  //-------------------------------------------
@@ -689,7 +689,7 @@
689
689
  {
690
690
  "name":"extension.name",
691
691
  "label":"Name",
692
- "tooltip":"The name of the Extension to be plugged at Zone level; the '__lib__' folder is also listed, in case one or more Extension jar files are deployed there for specific class-loading purposes\n\nIf a new Extension is deployed on the server while editing the Zone settings, cancel and re-edit the Zone to update this list",
692
+ "tooltip":"The name of the Extension to be plugged at Zone level; the '__lib__' folder is also listed, in case one or more Java Extensions are deployed there for specific class-loading purposes\n\nIf a new Extension is deployed on the server while editing the Zone settings, cancel and re-edit the Zone to update this list",
693
693
  "category":"Zone Extension",
694
694
  "type":"ComboBox",
695
695
  "value":"{$BasicValue=extension.name}",
@@ -712,7 +712,7 @@
712
712
  "trigger":true,
713
713
  "componentParams":
714
714
  {
715
- "dataProvider":"JAVA,PYTHON"
715
+ "dataProvider":"JAVA,JAVASCRIPT,PYTHON"
716
716
  }
717
717
  },
718
718
 
@@ -720,7 +720,7 @@
720
720
  {
721
721
  "name":"extension.file",
722
722
  "label":"Main class",
723
- "tooltip":"The fully qualified name of main Extension class; this class must extend either SFSExtension or BaseSFSExtension classes",
723
+ "tooltip":"The fully qualified name of main Extension class; Java Extensions must extend either SFSExtension or BaseSFSExtension classes",
724
724
  "category":"Zone Extension",
725
725
  "type":"ComboBox",
726
726
  "value":"{$BasicValue=extension.file}",
@@ -428,6 +428,13 @@
428
428
  "dataProvider":"BOOLEAN,INT,DOUBLE,STRING,OBJECT,ARRAY"
429
429
  }
430
430
  },
431
+ {
432
+ "name":"private",
433
+ "label":"Private",
434
+ "tooltip":"Private variable updates are sent to the owner's client only",
435
+ "type":"CheckBox",
436
+ "value":false
437
+ },
431
438
  {
432
439
  "name":"hidden",
433
440
  "label":"Hidden",
@@ -444,7 +451,7 @@
444
451
  "validator":"notNull"
445
452
  }
446
453
  ],
447
- "listValues":{$List=variables, instance=user, fields=name;type;hidden;value},
454
+ "listValues":{$List=variables, instance=user, fields=name;type;private;hidden;value},
448
455
  "edit":false
449
456
  },
450
457
 
@@ -1,8 +1,8 @@
1
1
  <!--
2
- SmartFoxServer 2X v 2.12.x
2
+ SmartFoxServer 2X v 2.13.x
3
3
  <<< Core Configuration >>>
4
4
 
5
- (c) gotoAndPlay 2009-2016
5
+ (c) gotoAndPlay 2009-2017
6
6
  - www.smartfoxserver.com -
7
7
  -->
8
8
 
@@ -53,16 +53,9 @@
53
53
  <isActive>true</isActive>
54
54
  <blueBoxPollingTimeout>26</blueBoxPollingTimeout>
55
55
  <blueBoxMsgQueueSize>40</blueBoxMsgQueueSize>
56
+ <isWSActive>true</isWSActive>
57
+ <useWSBinaryProtocol>true</useWSBinaryProtocol>
56
58
  </webServer>
57
- <webSocket>
58
- <isActive>false</isActive>
59
- <bindAddress>0.0.0.0</bindAddress>
60
- <tcpPort>8888</tcpPort>
61
- <sslPort>8843</sslPort>
62
- <isSSL>false</isSSL>
63
- <keyStoreFile>config/keystore.jks</keyStoreFile>
64
- <keyStorePassword>password</keyStorePassword>
65
- </webSocket>
66
59
    <analytics>
67
60
     <isActive>false</isActive>
68
61
     <runOnDay>[everyday]</runOnDay>
@@ -77,7 +70,7 @@
77
70
  <name>Sys</name>
78
71
  <coreThreads>4</coreThreads>
79
72
  <backupThreads>16</backupThreads>
80
- <maxBackups>16</maxBackups>
73
+ <maxBackups>64</maxBackups>
81
74
  <queueSizeTriggeringBackup>100</queueSizeTriggeringBackup>
82
75
  <secondsTriggeringBackup>50</secondsTriggeringBackup>
83
76
  <backupThreadsExpiry>3600</backupThreadsExpiry>
@@ -89,7 +82,7 @@
89
82
  <name>Ext</name>
90
83
  <coreThreads>4</coreThreads>
91
84
  <backupThreads>16</backupThreads>
92
- <maxBackups>16</maxBackups>
85
+ <maxBackups>64</maxBackups>
93
86
  <queueSizeTriggeringBackup>100</queueSizeTriggeringBackup>
94
87
  <secondsTriggeringBackup>50</secondsTriggeringBackup>
95
88
  <backupThreadsExpiry>3600</backupThreadsExpiry>
@@ -105,4 +98,4 @@
105
98
  <licenseEmails></licenseEmails>
106
99
  <ghostHunterEnabled>true</ghostHunterEnabled>
107
100
  <statsExtraLoggingEnabled>true</statsExtraLoggingEnabled>
108
- </serverSettings>
101
+ </serverSettings>
@@ -13,7 +13,7 @@ class ServerEventListener(ISFSEventListener):
13
13
  trace("Event: " + event.toString())
14
14
 
15
15
  sfsEventListener = None
16
- VERSION = "1.0.1"
16
+ VERSION = "1.0.0"
17
17
 
18
18
  def init():
19
19
  global sfsEventListener
@@ -135,6 +135,43 @@
135
135
  </Set>
136
136
  </New>
137
137
  </Set>
138
+
139
+
140
+ <!-- =========================================================== -->
141
+ <!-- configure rewrite handler -->
142
+ <!-- =========================================================== -->
143
+ <Call name="insertHandler">
144
+ <Arg>
145
+ <New class="org.eclipse.jetty.rewrite.handler.RewriteHandler">
146
+ <Set name="rewriteRequestURI"><Property name="jetty.rewrite.rewriteRequestURI" deprecated="rewrite.rewriteRequestURI" default="true"/></Set>
147
+ <Set name="rewritePathInfo"><Property name="jetty.rewrite.rewritePathInfo" deprecated="rewrite.rewritePathInfo" default="false"/></Set>
148
+ <Set name="originalPathAttribute"><Property name="jetty.rewrite.originalPathAttribute" deprecated="rewrite.originalPathAttribute" default="requestedPath"/></Set>
149
+
150
+ <!-- Set DispatcherTypes -->
151
+ <Set name="dispatcherTypes">
152
+ <Array type="javax.servlet.DispatcherType">
153
+ <Item><Call class="javax.servlet.DispatcherType" name="valueOf"><Arg>REQUEST</Arg></Call></Item>
154
+ <Item><Call class="javax.servlet.DispatcherType" name="valueOf"><Arg>ASYNC</Arg></Call></Item>
155
+ </Array>
156
+ </Set>
157
+
158
+ <Get id="Rewrite" name="ruleContainer"/>
159
+
160
+ <!-- see rewrite-compactpath.xml for example how to add a rule -->
161
+ <Call name="addRule">
162
+ <Arg>
163
+ <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule">
164
+ <Set name="pattern">/websocket/*</Set>
165
+ <Set name="replacement">/BlueBox/websocket/</Set>
166
+ </New>
167
+ </Arg>
168
+ </Call>
169
+
170
+ </New>
171
+ </Arg>
172
+ </Call>
173
+
174
+
138
175
  <Ref refid="RequestLog">
139
176
  <Set name="requestLog">
140
177
  <New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog">