wirispluginengine 3.62.0.1322 → 7.14.0.1422

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 (149) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +34 -34
  3. data/app/assets/javascripts/wirispluginengine/WIRISplugins.js +1040 -64
  4. data/app/controllers/wirispluginengine/application_controller.rb +84 -75
  5. data/app/helpers/wirispluginengine/application_helper.rb +4 -4
  6. data/config/routes.rb +4 -4
  7. data/lib/com/wiris/common/WInteger.rb +52 -51
  8. data/lib/com/wiris/plugin/api/Cas.rb +5 -5
  9. data/lib/com/wiris/plugin/api/CleanCache.rb +5 -5
  10. data/lib/com/wiris/plugin/api/Configuration.rb +5 -5
  11. data/lib/com/wiris/plugin/api/ConfigurationKeys.rb +94 -91
  12. data/lib/com/wiris/plugin/api/Editor.rb +5 -5
  13. data/lib/com/wiris/plugin/api/Filter.rb +5 -5
  14. data/lib/com/wiris/plugin/api/ImageFormatController.rb +5 -5
  15. data/lib/com/wiris/plugin/api/ParamsProvider.rb +5 -5
  16. data/lib/com/wiris/plugin/api/PluginBuilder.rb +88 -74
  17. data/lib/com/wiris/plugin/api/Render.rb +5 -5
  18. data/lib/com/wiris/plugin/api/ServiceResourceLoader.rb +5 -5
  19. data/lib/com/wiris/plugin/api/Test.rb +5 -5
  20. data/lib/com/wiris/plugin/api/TextService.rb +5 -5
  21. data/lib/com/wiris/plugin/configuration/ConfigurationUpdater.rb +5 -5
  22. data/lib/com/wiris/plugin/impl/CacheFormulaImpl.rb +15 -0
  23. data/lib/com/wiris/plugin/impl/CacheImpl.rb +124 -0
  24. data/lib/com/wiris/plugin/impl/CasImpl.rb +140 -138
  25. data/lib/com/wiris/plugin/impl/CleanCacheImpl.rb +103 -101
  26. data/lib/com/wiris/plugin/impl/ConfigurationImpl.rb +165 -166
  27. data/lib/com/wiris/plugin/impl/CustomConfigurationUpdater.rb +32 -30
  28. data/lib/com/wiris/plugin/impl/DefaultConfigurationUpdater.rb +24 -22
  29. data/lib/com/wiris/plugin/impl/EditorImpl.rb +80 -78
  30. data/lib/com/wiris/plugin/impl/FileConfigurationUpdater.rb +29 -27
  31. data/lib/com/wiris/plugin/impl/FileStorageAndCache.rb +55 -53
  32. data/lib/com/wiris/plugin/impl/FolderTreeStorageAndCache.rb +65 -134
  33. data/lib/com/wiris/plugin/impl/GenericParamsProviderImpl.rb +50 -48
  34. data/lib/com/wiris/plugin/impl/HttpImpl.rb +49 -48
  35. data/lib/com/wiris/plugin/impl/HttpListener.rb +5 -5
  36. data/lib/com/wiris/plugin/impl/ImageFormatControllerPng.rb +71 -63
  37. data/lib/com/wiris/plugin/impl/ImageFormatControllerSvg.rb +37 -28
  38. data/lib/com/wiris/plugin/impl/PluginBuilderImpl.rb +280 -248
  39. data/lib/com/wiris/plugin/impl/RenderImpl.rb +303 -257
  40. data/lib/com/wiris/plugin/impl/ServiceResourceLoaderImpl.rb +41 -39
  41. data/lib/com/wiris/plugin/impl/TestImpl.rb +177 -157
  42. data/lib/com/wiris/plugin/impl/TextFilter.rb +210 -194
  43. data/lib/com/wiris/plugin/impl/TextFilterTags.rb +57 -50
  44. data/lib/com/wiris/plugin/impl/TextServiceImpl.rb +158 -107
  45. data/lib/com/wiris/plugin/storage/StorageAndCache.rb +5 -5
  46. data/lib/com/wiris/util/json/JSon.rb +505 -493
  47. data/lib/com/wiris/util/json/JSonIntegerFormat.rb +17 -16
  48. data/lib/com/wiris/util/json/JsonAPIResponse.rb +70 -0
  49. data/lib/com/wiris/util/json/StringParser.rb +57 -56
  50. data/lib/com/wiris/util/sys/AccessProvider.rb +8 -0
  51. data/lib/com/wiris/util/sys/Cache.rb +8 -0
  52. data/lib/com/wiris/util/sys/HttpConnection.rb +14 -13
  53. data/lib/com/wiris/util/sys/HttpConnectionListener.rb +5 -5
  54. data/lib/com/wiris/util/sys/HttpSync.rb +28 -0
  55. data/lib/com/wiris/util/sys/IniFile.rb +132 -131
  56. data/lib/com/wiris/util/sys/Lock.rb +8 -0
  57. data/lib/com/wiris/util/sys/LockProvider.rb +8 -0
  58. data/lib/com/wiris/util/sys/Store.rb +126 -101
  59. data/lib/com/wiris/util/sys/StoreCache.rb +63 -0
  60. data/lib/com/wiris/util/sys/TimerProxy.rb +21 -0
  61. data/lib/com/wiris/util/sys/TimerTask.rb +8 -0
  62. data/lib/com/wiris/util/type/Arrays.rb +275 -0
  63. data/lib/com/wiris/util/type/ByteBuffer.rb +69 -0
  64. data/lib/com/wiris/util/type/Comparator.rb +8 -0
  65. data/lib/com/wiris/util/type/DataUtils.rb +24 -0
  66. data/lib/com/wiris/util/type/DoubleTools.rb +14 -0
  67. data/lib/com/wiris/util/type/HashCache.rb +43 -0
  68. data/lib/com/wiris/util/type/IntegerTools.rb +32 -0
  69. data/lib/com/wiris/util/type/Queue.rb +31 -0
  70. data/lib/com/wiris/util/type/SortArrayByStringLength.rb +26 -0
  71. data/lib/com/wiris/util/type/SortStringByLength.rb +26 -0
  72. data/lib/com/wiris/util/type/SortedHash.rb +45 -0
  73. data/lib/com/wiris/util/type/Stack.rb +31 -0
  74. data/lib/com/wiris/util/type/StringUtils.rb +56 -0
  75. data/lib/com/wiris/util/type/Tokenizer.rb +40 -0
  76. data/lib/com/wiris/util/type/UrlUtils.rb +78 -0
  77. data/lib/com/wiris/util/xml/ContentHandler.rb +8 -0
  78. data/lib/com/wiris/util/xml/DefaultHandler.rb +25 -0
  79. data/lib/com/wiris/util/xml/EntityResolver.rb +8 -0
  80. data/lib/com/wiris/util/xml/MathMLEntityResolver.rb +19 -0
  81. data/lib/com/wiris/util/xml/SAXParser.rb +470 -0
  82. data/lib/com/wiris/util/xml/SerializableImpl.rb +16 -15
  83. data/lib/com/wiris/util/xml/WCharacterBase.rb +968 -627
  84. data/lib/com/wiris/util/xml/WEntities.rb +11 -9
  85. data/lib/com/wiris/util/xml/WXmlUtils.rb +660 -490
  86. data/lib/com/wiris/util/xml/XmlSerializer.rb +517 -471
  87. data/lib/com/wiris/util/xml/XmlWriter.rb +260 -262
  88. data/lib/loader.rb +15 -12
  89. data/lib/src-generic/Array.rb +22 -22
  90. data/lib/src-generic/ArrayInt.rb +31 -31
  91. data/lib/src-generic/Base64.rb +14 -14
  92. data/lib/src-generic/BaseCode.rb +93 -93
  93. data/lib/src-generic/Boolean.rb +27 -0
  94. data/lib/src-generic/Bytes.rb +50 -50
  95. data/lib/src-generic/BytesInput.rb +37 -37
  96. data/lib/src-generic/EReg.rb +55 -55
  97. data/lib/src-generic/File.rb +35 -35
  98. data/lib/src-generic/FileLock.rb +26 -26
  99. data/lib/src-generic/FileSystem.rb +37 -37
  100. data/lib/src-generic/Hash.rb +42 -42
  101. data/lib/src-generic/Http.rb +111 -107
  102. data/lib/src-generic/HttpRequest.rb +25 -25
  103. data/lib/src-generic/HttpResponse.rb +70 -70
  104. data/lib/src-generic/Iterator.rb +20 -19
  105. data/lib/src-generic/Math.rb +14 -14
  106. data/lib/src-generic/Md5.rb +8 -8
  107. data/lib/src-generic/Md5Tools.rb +11 -11
  108. data/lib/src-generic/PropertiesTools.rb +32 -32
  109. data/lib/src-generic/Reflect.rb +16 -16
  110. data/lib/src-generic/RubyConfigurationUpdater.rb +49 -45
  111. data/lib/src-generic/Serializer.rb +84 -84
  112. data/lib/src-generic/Std.rb +74 -74
  113. data/lib/src-generic/Storage.rb +152 -152
  114. data/lib/src-generic/StringBuf.rb +40 -40
  115. data/lib/src-generic/StringTools.rb +44 -46
  116. data/lib/src-generic/Timer.rb +6 -6
  117. data/lib/src-generic/Type.rb +18 -18
  118. data/lib/src-generic/TypeTools.rb +31 -31
  119. data/lib/src-generic/Unserializer.rb +72 -72
  120. data/lib/src-generic/Utf8.rb +26 -26
  121. data/lib/src-generic/Xml.rb +199 -198
  122. data/lib/src-generic/extended/Integer.rb +5 -5
  123. data/lib/src-generic/extended/Math.rb +6 -6
  124. data/lib/src-generic/extended/Properties.rb +11 -11
  125. data/lib/src-generic/extended/String.rb +38 -38
  126. data/lib/src-generic/settings/PlatformSettings.rb +18 -18
  127. data/lib/src-generic/system/HttpProxy.rb +23 -0
  128. data/lib/src-generic/system/HttpProxyAuth.rb +10 -0
  129. data/lib/wirispluginengine.rb +5 -5
  130. data/lib/wirispluginengine/engine.rb +5 -5
  131. data/lib/wirispluginengine/integration/cleancache.rb +8 -8
  132. data/lib/wirispluginengine/integration/configurationjs.rb +8 -15
  133. data/lib/wirispluginengine/integration/configurationjson.rb +6 -6
  134. data/lib/wirispluginengine/integration/createimage.rb +7 -7
  135. data/lib/wirispluginengine/integration/getmathml.rb +18 -18
  136. data/lib/wirispluginengine/integration/resource.rb +8 -8
  137. data/lib/wirispluginengine/integration/service.rb +5 -5
  138. data/lib/wirispluginengine/integration/showimage.rb +28 -21
  139. data/lib/wirispluginengine/integration/test.rb +5 -5
  140. data/lib/wirispluginengine/integration/testfilter.rb +10 -0
  141. data/lib/wirispluginengine/version.rb +2 -2
  142. data/resources/VERSION +1 -1
  143. data/resources/WEB-INF/web.xml +25 -0
  144. data/resources/WIRISplugins.js +3809 -0
  145. data/resources/default-configuration.ini +47 -45
  146. data/resources/tech.txt +1 -1
  147. data/resources/wirisplugin.css +43 -42
  148. metadata +40 -4
  149. data/configuration.ini.dist +0 -104
@@ -1,153 +1,153 @@
1
- module Wiris
2
- class Storage
3
- TYPE_FILE = 0;
4
- TYPE_RESOURCE = 1;
5
- TYPE_URL =2;
6
- @cls = nil
7
- @@resourcesDir = nil
8
-
9
- def type=(type)
10
- @type = type
11
- end
12
- def type
13
- @type
14
- end
15
- def file=(file)
16
- @file = file
17
- end
18
- def file
19
- @file
20
- end
21
- def resourceName
22
- @resourceName
23
- end
24
- def resourceName=(resourceName)
25
- @resourceName = resourceName
26
- end
27
-
28
- def location
29
- @location
30
- end
31
-
32
- def location=(location)
33
- @location = location
34
- end
35
-
36
- def self.resourcesDir=(resourcesDir)
37
- @@resourcesDir = resourcesDir
38
- end
39
- def self.resourcesDir
40
- @@resourcesDir
41
- end
42
-
43
- def initialize(location=nil)
44
- if location != nil
45
- @location = location
46
- end
47
- end
48
-
49
- def self.newStorage(name)
50
- s = Storage.new(name)
51
- s.type = TYPE_FILE
52
- return s
53
- end
54
-
55
- def self.newStorageWithParent(parent, name)
56
- s = Storage.new(parent.location)
57
- s.type = parent.type;
58
- if (parent.type == TYPE_FILE)
59
- # @file = File.new(File.join(parent.location, name), "w+")
60
- # @file.close
61
- s.location = File.join(parent.location, name)
62
- elsif (parent.type == TYPE_RESOURCE)
63
- s.resourceName = parent.resourceName;
64
- if (s.resourceName.length() > 0 && !s.resourceName.endsWith("/"))
65
- s.resourceName += "/"
66
- end
67
- s.resourceName += name
68
- elsif (parent.type == TYPE_URL)
69
- url = Url.new(Url.new(parent.url),name).toExternalForm()
70
- end
71
- return s
72
- end
73
-
74
- def self.newResourceStorage(name)
75
- s = Storage.new(File.join(getResourcesDir,name))
76
- s.type = TYPE_RESOURCE
77
- return s;
78
- end
79
-
80
- def read()
81
- return File.read(location)
82
- end
83
-
84
- def readBinary()
85
- s = File.binread(location)
86
- return s.bytes.to_a
87
- end
88
-
89
- def write(str)
90
- writeOrAppend(str, false)
91
- end
92
-
93
- def writeBinary(bs)
94
- File.open(location, 'wb' ) do |output|
95
- output.write bs.pack("C*")
96
- end
97
- end
98
-
99
- def writeOrAppend(str, append)
100
- if (@type == TYPE_RESOURCE)
101
- notImplemented()
102
- end
103
- if (@type == TYPE_URL)
104
- notImplemented()
105
- end
106
- @file = File.new(@location, "w")
107
- @file.write(str)
108
- @file.close
109
- end
110
-
111
- def exists()
112
- return File.exists?(location)
113
- end
114
-
115
- def mkdirs()
116
- if (@type == TYPE_RESOURCE)
117
- notImplemented()
118
- end
119
- if (@type == TYPE_URL)
120
- notImplemented()
121
- end
122
- Dir.mkdir(@location)
123
-
124
- end
125
-
126
- def self.getResourcesDir()
127
- if @@resourcesDir.nil?
128
- setResourcesDir()
129
- end
130
- return @@resourcesDir
131
- end
132
-
133
- def self.setResourcesDir()
134
- @@resourcesDir = File.dirname(__FILE__)
135
- end
136
-
137
- def notImplemented()
138
- raise Exception,'Error: Operation not available on this Storage'
139
- end
140
-
141
- def toString()
142
- if type == TYPE_FILE
143
- return location.to_s
144
- elsif type == TYPE_RESOURCE
145
- return resourceName
146
- elsif type == TYPE_URL
147
- return url
148
- else
149
- return nil
150
- end
151
- end
152
- end
1
+ module Wiris
2
+ class Storage
3
+ TYPE_FILE = 0;
4
+ TYPE_RESOURCE = 1;
5
+ TYPE_URL =2;
6
+ @cls = nil
7
+ @@resourcesDir = nil
8
+
9
+ def type=(type)
10
+ @type = type
11
+ end
12
+ def type
13
+ @type
14
+ end
15
+ def file=(file)
16
+ @file = file
17
+ end
18
+ def file
19
+ @file
20
+ end
21
+ def resourceName
22
+ @resourceName
23
+ end
24
+ def resourceName=(resourceName)
25
+ @resourceName = resourceName
26
+ end
27
+
28
+ def location
29
+ @location
30
+ end
31
+
32
+ def location=(location)
33
+ @location = location
34
+ end
35
+
36
+ def self.resourcesDir=(resourcesDir)
37
+ @@resourcesDir = resourcesDir
38
+ end
39
+ def self.resourcesDir
40
+ @@resourcesDir
41
+ end
42
+
43
+ def initialize(location=nil)
44
+ if location != nil
45
+ @location = location
46
+ end
47
+ end
48
+
49
+ def self.newStorage(name)
50
+ s = Storage.new(name)
51
+ s.type = TYPE_FILE
52
+ return s
53
+ end
54
+
55
+ def self.newStorageWithParent(parent, name)
56
+ s = Storage.new(parent.location)
57
+ s.type = parent.type;
58
+ if (parent.type == TYPE_FILE)
59
+ # @file = File.new(File.join(parent.location, name), "w+")
60
+ # @file.close
61
+ s.location = File.join(parent.location, name)
62
+ elsif (parent.type == TYPE_RESOURCE)
63
+ s.resourceName = parent.resourceName;
64
+ if (s.resourceName.length() > 0 && !s.resourceName.endsWith("/"))
65
+ s.resourceName += "/"
66
+ end
67
+ s.resourceName += name
68
+ elsif (parent.type == TYPE_URL)
69
+ url = Url.new(Url.new(parent.url),name).toExternalForm()
70
+ end
71
+ return s
72
+ end
73
+
74
+ def self.newResourceStorage(name)
75
+ s = Storage.new(File.join(getResourcesDir,name))
76
+ s.type = TYPE_RESOURCE
77
+ return s;
78
+ end
79
+
80
+ def read()
81
+ return File.read(location)
82
+ end
83
+
84
+ def readBinary()
85
+ s = File.binread(location)
86
+ return s.bytes.to_a
87
+ end
88
+
89
+ def write(str)
90
+ writeOrAppend(str, false)
91
+ end
92
+
93
+ def writeBinary(bs)
94
+ File.open(location, 'wb' ) do |output|
95
+ output.write bs.pack("C*")
96
+ end
97
+ end
98
+
99
+ def writeOrAppend(str, append)
100
+ if (@type == TYPE_RESOURCE)
101
+ notImplemented()
102
+ end
103
+ if (@type == TYPE_URL)
104
+ notImplemented()
105
+ end
106
+ @file = File.new(@location, "w")
107
+ @file.write(str)
108
+ @file.close
109
+ end
110
+
111
+ def exists()
112
+ return File.exists?(location)
113
+ end
114
+
115
+ def mkdirs()
116
+ if (@type == TYPE_RESOURCE)
117
+ notImplemented()
118
+ end
119
+ if (@type == TYPE_URL)
120
+ notImplemented()
121
+ end
122
+ Dir.mkdir(@location)
123
+
124
+ end
125
+
126
+ def self.getResourcesDir()
127
+ if @@resourcesDir.nil?
128
+ setResourcesDir()
129
+ end
130
+ return @@resourcesDir
131
+ end
132
+
133
+ def self.setResourcesDir()
134
+ @@resourcesDir = File.dirname(__FILE__)
135
+ end
136
+
137
+ def notImplemented()
138
+ raise Exception,'Error: Operation not available on this Storage'
139
+ end
140
+
141
+ def toString()
142
+ if type == TYPE_FILE
143
+ return location.to_s
144
+ elsif type == TYPE_RESOURCE
145
+ return resourceName
146
+ elsif type == TYPE_URL
147
+ return url
148
+ else
149
+ return nil
150
+ end
151
+ end
152
+ end
153
153
  end
@@ -1,41 +1,41 @@
1
- require 'stringio'
2
-
3
- module Wiris
4
- class StringBuf
5
- @sb
6
-
7
- def sb
8
- @sb
9
- end
10
-
11
- def initialize()
12
- @sb = StringIO.new('',"a+") # Append mode
13
- end
14
-
15
- def add(o)
16
- @sb << o
17
- end
18
-
19
- def addChar(c)
20
- @sb << c.chr
21
- end
22
-
23
- # public void addSub(String s, int pos, int len){
24
- # sb.append(s, pos, len+pos);
25
- # }
26
-
27
- def toString()
28
- return @sb.string
29
- end
30
-
31
- def to_s()
32
- return @sb.string
33
- end
34
- # /**
35
- # * Not for haxe! Only for C#
36
- # * **/
37
- # public int length(){
38
- # return sb.length();
39
- # }
40
- end
1
+ require 'stringio'
2
+
3
+ module Wiris
4
+ class StringBuf
5
+ @sb
6
+
7
+ def sb
8
+ @sb
9
+ end
10
+
11
+ def initialize()
12
+ @sb = StringIO.new('',"a+") # Append mode
13
+ end
14
+
15
+ def add(o)
16
+ @sb << o
17
+ end
18
+
19
+ def addChar(c)
20
+ @sb << c.chr
21
+ end
22
+
23
+ # public void addSub(String s, int pos, int len){
24
+ # sb.append(s, pos, len+pos);
25
+ # }
26
+
27
+ def toString()
28
+ return @sb.string
29
+ end
30
+
31
+ def to_s()
32
+ return @sb.string
33
+ end
34
+ # /**
35
+ # * Not for haxe! Only for C#
36
+ # * **/
37
+ # public int length(){
38
+ # return sb.length();
39
+ # }
40
+ end
41
41
  end
@@ -1,46 +1,44 @@
1
- require 'cgi'
2
- module Wiris
3
- class StringTools
4
- def self.replace(text, target, replacement)
5
- text = text.gsub(target, replacement)
6
- return text
7
- end
8
-
9
- def self.startsWith(s, start)
10
- return s.start_with?(start)
11
- end
12
-
13
- def self.endsWith(s, ends)
14
- return s.end_with?(ends)
15
- end
16
-
17
- def self.urlEncode(s) #TODO Implement unsupoortedEncodingException?
18
- return CGI::escape(s)
19
- end
20
-
21
- def self.trim(s)
22
- return s.strip
23
- end
24
-
25
- def self.hex(n, digits)
26
- hex = n.to_s(16)
27
- while hex.length() < digits
28
- hex = "0" + hex
29
- end
30
- return hex
31
- end
32
-
33
- #
34
- # public static byte[] string2Bytes(String str) {
35
- # try {
36
- # return str.getBytes("iso-8859-1");
37
- # } catch (UnsupportedEncodingException ex) {
38
- # throw new Error(ex);
39
- # }
40
- # }
41
-
42
- def self.compare(s1,s2)
43
- return s1<=>s2
44
- end
45
- end
46
- end
1
+ require 'erb'
2
+ require 'uri'
3
+ module Wiris
4
+ class StringTools
5
+ def self.replace(text, target, replacement)
6
+ # Block syntax is used due to if we put 'replacement' as a
7
+ # normal parameter, Ruby interpretes escape characters.
8
+ text = text.gsub(target) { replacement }
9
+ return text
10
+ end
11
+
12
+ def self.startsWith(s, start)
13
+ return s.start_with?(start)
14
+ end
15
+
16
+ def self.endsWith(s, ends)
17
+ return s.end_with?(ends)
18
+ end
19
+
20
+ def self.urlEncode(s)
21
+ return ERB::Util::url_encode(s);
22
+ end
23
+
24
+ def self.urlDecode(s)
25
+ return URI.unescape(s)
26
+ end
27
+
28
+ def self.trim(s)
29
+ return s.strip
30
+ end
31
+
32
+ def self.hex(n, digits)
33
+ hex = n.to_s(16).upcase
34
+ while hex.length() < digits
35
+ hex = "0" + hex
36
+ end
37
+ return hex.upcase
38
+ end
39
+
40
+ def self.compare(s1,s2)
41
+ return s1<=>s2
42
+ end
43
+ end
44
+ end