rhodes 2.0.3 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1413) hide show
  1. data/CHANGELOG +17 -0
  2. data/Rakefile +189 -110
  3. data/bin/rhodes +4 -0
  4. data/bin/rhodes.bat +1 -0
  5. data/lib/build/compileERB/default.rb +1 -1
  6. data/lib/build/jake.rb +54 -2
  7. data/lib/extensions/barcode/ext/barcode/platform/android/Rakefile +84 -0
  8. data/lib/extensions/barcode/ext/barcode/platform/android/jni/src/imageprovider.cpp +164 -0
  9. data/lib/extensions/barcode/ext/barcode/platform/bb/Barcode.files +146 -0
  10. data/lib/extensions/barcode/ext/barcode/platform/bb/Rakefile +93 -0
  11. data/lib/extensions/barcode/ext/barcode/platform/bb/Rhode/com/rho/rubyext/BarcodeRecognizer.java +177 -0
  12. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/AUTHORS +35 -0
  13. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/COPYING +201 -0
  14. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/README +11 -0
  15. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/BarcodeFormat.java +88 -0
  16. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/Binarizer.java +80 -0
  17. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/BinaryBitmap.java +128 -0
  18. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/ChecksumException.java +37 -0
  19. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/DecodeHintType.java +79 -0
  20. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/EncodeHintType.java +39 -0
  21. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/FormatException.java +38 -0
  22. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/LuminanceSource.java +113 -0
  23. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/MultiFormatReader.java +164 -0
  24. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/MultiFormatWriter.java +55 -0
  25. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/NotFoundException.java +37 -0
  26. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/Reader.java +64 -0
  27. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/ReaderException.java +98 -0
  28. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/Result.java +102 -0
  29. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/ResultMetadataType.java +63 -0
  30. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/ResultPoint.java +127 -0
  31. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/ResultPointCallback.java +29 -0
  32. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/Writer.java +54 -0
  33. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/WriterException.java +35 -0
  34. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/AbstractDoCoMoResultParser.java +39 -0
  35. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/AddressBookAUResultParser.java +73 -0
  36. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/AddressBookDoCoMoResultParser.java +85 -0
  37. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/AddressBookParsedResult.java +122 -0
  38. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/BizcardResultParser.java +94 -0
  39. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/BookmarkDoCoMoResultParser.java +46 -0
  40. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/CalendarParsedResult.java +130 -0
  41. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/EmailAddressParsedResult.java +61 -0
  42. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/EmailAddressResultParser.java +64 -0
  43. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/EmailDoCoMoResultParser.java +87 -0
  44. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/GeoParsedResult.java +107 -0
  45. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/GeoResultParser.java +64 -0
  46. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ISBNParsedResult.java +39 -0
  47. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ISBNResultParser.java +54 -0
  48. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ParsedResult.java +73 -0
  49. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ParsedResultType.java +52 -0
  50. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ProductParsedResult.java +49 -0
  51. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ProductResultParser.java +66 -0
  52. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/ResultParser.java +313 -0
  53. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/SMSMMSResultParser.java +103 -0
  54. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/SMSParsedResult.java +75 -0
  55. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/TelParsedResult.java +54 -0
  56. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/TelResultParser.java +44 -0
  57. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/TextParsedResult.java +48 -0
  58. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/URIParsedResult.java +113 -0
  59. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/URIResultParser.java +87 -0
  60. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/URLTOResultParser.java +47 -0
  61. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/VCardResultParser.java +195 -0
  62. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/VEventResultParser.java +56 -0
  63. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/AbstractNDEFResultParser.java +45 -0
  64. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/NDEFRecord.java +87 -0
  65. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/NDEFSmartPosterParsedResult.java +63 -0
  66. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/NDEFSmartPosterResultParser.java +81 -0
  67. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/NDEFTextResultParser.java +57 -0
  68. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/client/result/optional/NDEFURIResultParser.java +95 -0
  69. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/BitArray.java +174 -0
  70. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/BitMatrix.java +190 -0
  71. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/BitSource.java +97 -0
  72. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/ByteArray.java +95 -0
  73. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/ByteMatrix.java +93 -0
  74. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/CharacterSetECI.java +110 -0
  75. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/Collections.java +53 -0
  76. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/Comparator.java +27 -0
  77. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/DecoderResult.java +63 -0
  78. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/DefaultGridSampler.java +81 -0
  79. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/DetectorResult.java +46 -0
  80. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/ECI.java +52 -0
  81. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/GlobalHistogramBinarizer.java +196 -0
  82. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/GridSampler.java +171 -0
  83. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/HybridBinarizer.java +158 -0
  84. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/PerspectiveTransform.java +148 -0
  85. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/detector/MonochromeRectangleDetector.java +209 -0
  86. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/reedsolomon/GF256.java +142 -0
  87. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/reedsolomon/GF256Poly.java +263 -0
  88. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/reedsolomon/ReedSolomonDecoder.java +189 -0
  89. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/reedsolomon/ReedSolomonEncoder.java +75 -0
  90. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/common/reedsolomon/ReedSolomonException.java +31 -0
  91. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/DataMatrixReader.java +159 -0
  92. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/decoder/BitMatrixParser.java +446 -0
  93. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/decoder/DataBlock.java +118 -0
  94. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/decoder/DecodedBitStreamParser.java +456 -0
  95. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/decoder/Decoder.java +134 -0
  96. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/decoder/Version.java +242 -0
  97. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/datamatrix/detector/Detector.java +283 -0
  98. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/ByQuadrantReader.java +96 -0
  99. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/GenericMultipleBarcodeReader.java +156 -0
  100. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/MultipleBarcodeReader.java +37 -0
  101. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/qrcode/QRCodeMultiReader.java +80 -0
  102. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/qrcode/detector/MultiDetector.java +72 -0
  103. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/multi/qrcode/detector/MultiFinderPatternFinder.java +324 -0
  104. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/Code128Reader.java +473 -0
  105. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/Code39Reader.java +330 -0
  106. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/EAN13Reader.java +135 -0
  107. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/EAN13Writer.java +82 -0
  108. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/EAN8Reader.java +72 -0
  109. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/EAN8Writer.java +77 -0
  110. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/ITFReader.java +348 -0
  111. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/MultiFormatOneDReader.java +96 -0
  112. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/MultiFormatUPCEANReader.java +107 -0
  113. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/OneDReader.java +297 -0
  114. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/UPCAReader.java +75 -0
  115. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/UPCEANReader.java +332 -0
  116. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/UPCEANWriter.java +129 -0
  117. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/UPCEReader.java +153 -0
  118. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/rss/DataCharacter.java +37 -0
  119. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/rss/FinderPattern.java +48 -0
  120. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/rss/Pair.java +32 -0
  121. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/rss/RSS14Reader.java +557 -0
  122. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/oned/rss/RSSUtils.java +155 -0
  123. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/pdf417/PDF417Reader.java +149 -0
  124. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/pdf417/decoder/BitMatrixParser.java +1157 -0
  125. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/pdf417/decoder/DecodedBitStreamParser.java +627 -0
  126. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/pdf417/decoder/Decoder.java +149 -0
  127. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/pdf417/detector/Detector.java +501 -0
  128. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/QRCodeReader.java +164 -0
  129. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/QRCodeWriter.java +151 -0
  130. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/BitMatrixParser.java +203 -0
  131. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/DataBlock.java +123 -0
  132. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/DataMask.java +155 -0
  133. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/DecodedBitStreamParser.java +361 -0
  134. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/Decoder.java +150 -0
  135. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/ErrorCorrectionLevel.java +86 -0
  136. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/FormatInformation.java +171 -0
  137. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/Mode.java +112 -0
  138. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/decoder/Version.java +586 -0
  139. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/AlignmentPattern.java +48 -0
  140. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/AlignmentPatternFinder.java +279 -0
  141. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/Detector.java +396 -0
  142. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/FinderPattern.java +63 -0
  143. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/FinderPatternFinder.java +540 -0
  144. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/detector/FinderPatternInfo.java +49 -0
  145. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/BitVector.java +155 -0
  146. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/BlockPair.java +39 -0
  147. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/Encoder.java +568 -0
  148. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/MaskUtil.java +219 -0
  149. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/MatrixUtil.java +524 -0
  150. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/core/src/com/google/zxing/qrcode/encoder/QRCode.java +240 -0
  151. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/AdvancedMultimediaManager.java +153 -0
  152. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/DefaultMultimediaManager.java +40 -0
  153. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/LCDUIImageLuminanceSource.java +95 -0
  154. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/MANIFEST.MF.template +11 -0
  155. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/Menu.java +96 -0
  156. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/MultimediaManager.java +39 -0
  157. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/SnapshotThread.java +143 -0
  158. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/SplashThread.java +127 -0
  159. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/VideoCanvas.java +71 -0
  160. data/lib/extensions/barcode/ext/barcode/platform/bb/ZXing/javame/src/com/google/zxing/client/j2me/ZXingMIDlet.java +292 -0
  161. data/lib/extensions/barcode/ext/barcode/platform/bb/barcode.jdp +193 -0
  162. data/lib/extensions/barcode/ext/barcode/platform/bb/run.bat +3 -0
  163. data/lib/extensions/barcode/ext/barcode/platform/iphone/Barcode.xcodeproj/project.pbxproj +596 -0
  164. data/lib/extensions/barcode/ext/barcode/platform/iphone/Barcode_Prefix.pch +7 -0
  165. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.cpp +25 -0
  166. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.h +15 -0
  167. data/lib/extensions/barcode/ext/barcode/platform/iphone/Classes/ImageProvider.mm +159 -0
  168. data/lib/extensions/barcode/ext/barcode/platform/iphone/Rakefile +61 -0
  169. data/lib/extensions/barcode/ext/barcode/platform/wm/Barcode.vcproj +271 -0
  170. data/lib/extensions/barcode/ext/barcode/platform/wm/Rakefile +46 -0
  171. data/lib/extensions/barcode/ext/barcode/platform/wm/src/wm_imageprovider.cpp +159 -0
  172. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode.i +8 -0
  173. data/lib/extensions/barcode/ext/barcode/shared/ruby/barcode_wrap.c +2200 -0
  174. data/lib/extensions/barcode/ext/barcode/shared/src/rho_imageprovider.h +16 -0
  175. data/lib/extensions/barcode/ext/barcode/shared/src/zbar.c +69 -0
  176. data/lib/extensions/barcode/ext/barcode/shared/zbar/config.h +264 -0
  177. data/lib/extensions/barcode/ext/barcode/shared/zbar/inttypes.h +259 -0
  178. data/lib/extensions/barcode/ext/barcode/shared/zbar/rho_bridge.c +29 -0
  179. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/COPYING +27 -0
  180. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/README +95 -0
  181. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Decoder.h +201 -0
  182. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Exception.h +187 -0
  183. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Image.h +321 -0
  184. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ImageScanner.h +130 -0
  185. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Processor.h +223 -0
  186. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/QZBar.h +169 -0
  187. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/QZBarImage.h +72 -0
  188. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Scanner.h +162 -0
  189. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Symbol.h +529 -0
  190. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Video.h +170 -0
  191. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/Window.h +136 -0
  192. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarCaptureReader.h +99 -0
  193. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarImage.h +69 -0
  194. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarImageScanner.h +50 -0
  195. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarReaderController.h +142 -0
  196. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarReaderView.h +119 -0
  197. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarReaderViewController.h +99 -0
  198. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/ZBarSymbol.h +67 -0
  199. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar/zbargtk.h +205 -0
  200. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/include/zbar.h +1415 -0
  201. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/config.c +157 -0
  202. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/convert.c +1172 -0
  203. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/debug.h +87 -0
  204. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/code128.c +528 -0
  205. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/code128.h +49 -0
  206. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/code39.c +335 -0
  207. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/code39.h +50 -0
  208. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/ean.c +660 -0
  209. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/ean.h +86 -0
  210. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/i25.c +243 -0
  211. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/i25.h +50 -0
  212. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/pdf417.c +223 -0
  213. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/pdf417.h +49 -0
  214. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/pdf417_hash.h +545 -0
  215. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/qr_finder.c +102 -0
  216. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder/qr_finder.h +23 -0
  217. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder.c +409 -0
  218. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/decoder.h +219 -0
  219. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/error.c +183 -0
  220. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/error.h +226 -0
  221. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/event.h +62 -0
  222. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/image.c +358 -0
  223. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/image.h +142 -0
  224. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/img_scanner.c +819 -0
  225. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/img_scanner.h +38 -0
  226. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/jpeg.c +241 -0
  227. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/mutex.h +160 -0
  228. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/lock.c +227 -0
  229. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/null.c +62 -0
  230. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/posix.c +337 -0
  231. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/posix.h +138 -0
  232. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/win.c +335 -0
  233. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor/x.c +269 -0
  234. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor.c +700 -0
  235. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/processor.h +126 -0
  236. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/bch15_5.c +184 -0
  237. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/bch15_5.h +20 -0
  238. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/binarize.c +639 -0
  239. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/binarize.h +17 -0
  240. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/isaac.c +139 -0
  241. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/isaac.h +41 -0
  242. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/qrdec.c +3957 -0
  243. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/qrdec.h +168 -0
  244. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/qrdectxt.c +405 -0
  245. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/rs.c +799 -0
  246. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/rs.h +66 -0
  247. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/util.c +140 -0
  248. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode/util.h +48 -0
  249. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/qrcode.h +66 -0
  250. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/refcnt.c +48 -0
  251. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/refcnt.h +96 -0
  252. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/scanner.c +317 -0
  253. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/svg.c +184 -0
  254. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/svg.h +65 -0
  255. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/symbol.c +325 -0
  256. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/symbol.h +93 -0
  257. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/thread.h +127 -0
  258. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/timer.h +151 -0
  259. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/unistd.h +1 -0
  260. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video/null.c +37 -0
  261. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video/v4l1.c +435 -0
  262. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video/v4l2.c +509 -0
  263. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video/vfw.c +494 -0
  264. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video.c +384 -0
  265. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/video.h +160 -0
  266. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/dib.c +75 -0
  267. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/null.c +103 -0
  268. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/vfw.c +104 -0
  269. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/win.c +334 -0
  270. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/win.h +46 -0
  271. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/x.c +356 -0
  272. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/x.h +74 -0
  273. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/ximage.c +219 -0
  274. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window/xv.c +273 -0
  275. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window.c +318 -0
  276. data/lib/extensions/barcode/ext/barcode/shared/zbar/zbar/zbar/window.h +144 -0
  277. data/lib/extensions/barcode/ext/build +17 -0
  278. data/lib/extensions/barcode/ext/build.bat +29 -0
  279. data/lib/extensions/barcode/ext.yml +3 -0
  280. data/lib/extensions/crypt/crypt/rijndael.rb +4 -0
  281. data/lib/extensions/digest/ext/Rakefile +18 -0
  282. data/lib/extensions/digest/ext/digest.vcproj +134 -0
  283. data/lib/extensions/digest-md5/ext/Rakefile +18 -0
  284. data/lib/extensions/digest-md5/ext/digest-md5.vcproj +132 -0
  285. data/lib/extensions/digest-md5/ext/md5init.c +2 -2
  286. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/expectations/expectations.rb +0 -0
  287. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/expectations/should.rb +0 -0
  288. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/expectations.rb +0 -0
  289. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/fileutils.rb +0 -0
  290. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/background.rb +0 -0
  291. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/bug.rb +0 -0
  292. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/compliance.rb +0 -0
  293. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/conflict.rb +0 -0
  294. data/{spec/framework_spec/app → lib/extensions/mspec}/mspec/guards/endian.rb +0 -0
  295. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/extensions.rb +0 -0
  296. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/guard.rb +0 -0
  297. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/noncompliance.rb +0 -0
  298. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/platform.rb +0 -0
  299. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/quarantine.rb +0 -0
  300. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/runner.rb +0 -0
  301. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/superuser.rb +0 -0
  302. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/support.rb +0 -0
  303. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/tty.rb +0 -0
  304. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards/version.rb +0 -0
  305. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/guards.rb +0 -0
  306. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/argv.rb +0 -0
  307. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/bignum.rb +0 -0
  308. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/const_lookup.rb +0 -0
  309. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/ducktype.rb +0 -0
  310. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/enumerator_class.rb +0 -0
  311. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/environment.rb +0 -0
  312. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/fixture.rb +0 -0
  313. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/flunk.rb +0 -0
  314. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/fs.rb +0 -0
  315. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/hash.rb +0 -0
  316. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/infinity.rb +0 -0
  317. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/io.rb +0 -0
  318. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/language_version.rb +0 -0
  319. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/metaclass.rb +0 -0
  320. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/mock_to_path.rb +0 -0
  321. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/nan.rb +0 -0
  322. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/ruby_exe.rb +0 -0
  323. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/scratch.rb +0 -0
  324. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers/tmp.rb +0 -0
  325. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/helpers.rb +0 -0
  326. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/base.rb +0 -0
  327. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_an_instance_of.rb +0 -0
  328. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_ancestor_of.rb +0 -0
  329. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_close.rb +0 -0
  330. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_empty.rb +0 -0
  331. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_false.rb +0 -0
  332. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_kind_of.rb +0 -0
  333. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_nil.rb +0 -0
  334. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/be_true.rb +0 -0
  335. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/complain.rb +0 -0
  336. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/eql.rb +0 -0
  337. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/equal.rb +0 -0
  338. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/equal_element.rb +0 -0
  339. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/equal_utf16.rb +0 -0
  340. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/have_constant.rb +0 -0
  341. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/have_instance_method.rb +0 -0
  342. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/have_method.rb +0 -0
  343. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/have_private_instance_method.rb +0 -0
  344. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/have_public_instance_method.rb +0 -0
  345. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/include.rb +0 -0
  346. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/match_yaml.rb +0 -0
  347. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/method.rb +0 -0
  348. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/output.rb +0 -0
  349. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/output_to_fd.rb +0 -0
  350. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/raise_error.rb +0 -0
  351. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/respond_to.rb +0 -0
  352. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers/stringsymboladapter.rb +0 -0
  353. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/matchers.rb +0 -0
  354. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/mocks/mock.rb +0 -0
  355. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/mocks/object.rb +0 -0
  356. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/mocks/proxy.rb +0 -0
  357. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/mocks.rb +0 -0
  358. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/pp.rb +0 -0
  359. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/debug.rb +0 -0
  360. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/filter.rb +0 -0
  361. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/gdb.rb +0 -0
  362. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/tag.rb +0 -0
  363. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/taglist.rb +0 -0
  364. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/tagpurge.rb +0 -0
  365. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/tally.rb +0 -0
  366. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions/timer.rb +0 -0
  367. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/actions.rb +0 -0
  368. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/context.rb +0 -0
  369. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/example.rb +0 -0
  370. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/exception.rb +0 -0
  371. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/filters/match.rb +0 -0
  372. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/filters/profile.rb +0 -0
  373. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/filters/regexp.rb +0 -0
  374. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/filters/tag.rb +0 -0
  375. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/filters.rb +0 -0
  376. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/describe.rb +0 -0
  377. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/dotted.rb +0 -0
  378. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/file.rb +0 -0
  379. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/html.rb +0 -0
  380. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/method.rb +0 -0
  381. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/specdoc.rb +0 -0
  382. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/spinner.rb +0 -0
  383. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/summary.rb +0 -0
  384. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/unit.rb +0 -0
  385. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters/yaml.rb +0 -0
  386. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/formatters.rb +0 -0
  387. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/mspec.rb +0 -0
  388. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/object.rb +0 -0
  389. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/shared.rb +0 -0
  390. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner/tag.rb +0 -0
  391. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/runner.rb +0 -0
  392. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/utils/name_map.rb +0 -0
  393. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/utils/options.rb +0 -0
  394. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/utils/ruby_name.rb +0 -0
  395. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/utils/script.rb +0 -0
  396. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/utils/version.rb +0 -0
  397. data/{res/generators/templates/spec/app → lib/extensions/mspec}/mspec/version.rb +0 -0
  398. data/lib/extensions/rexml/rexml/parsers/xpathparser.rb +2 -1
  399. data/lib/extensions/rexml/rexml/xpath_parser.rb +10 -5
  400. data/lib/extensions/rhospec/rhospec.rb +348 -0
  401. data/lib/extensions/rhoxml/rexml/attribute.rb +188 -0
  402. data/lib/extensions/rhoxml/rexml/element.rb +57 -1
  403. data/lib/extensions/rhoxml/rexml/parsers/streamparser.rb +2 -2
  404. data/lib/extensions/rhoxml/rexml/xpath_parser.rb +10 -5
  405. data/lib/framework/builtinME.rb +40 -2
  406. data/lib/framework/rho/render.rb +19 -15
  407. data/lib/framework/rho/rho.rb +88 -50
  408. data/lib/framework/rho/rhoapplication.rb +11 -3
  409. data/lib/framework/rho/rhocontact.rb +5 -2
  410. data/lib/framework/rho/rhosupport.rb +2 -2
  411. data/lib/framework/rho/rhoutils.rb +6 -4
  412. data/lib/framework/rhodes.rb +2 -2
  413. data/lib/framework/rhoframework.rb +2 -1
  414. data/lib/framework/rholang/lang_es.rb +120 -0
  415. data/lib/framework/rholang/localization_simplified.rb +7 -10
  416. data/lib/framework/rholang/rhoerror_es.rb +36 -0
  417. data/lib/framework/rholang/rhomsg_es.rb +28 -0
  418. data/lib/framework/rhom/rhom_db_adapter.rb +113 -33
  419. data/lib/framework/rhom/rhom_object_factory.rb +347 -134
  420. data/lib/framework/version.rb +2 -2
  421. data/lib/rhodes.rb +2 -2
  422. data/platform/android/Rhodes/AndroidManifest.xml +3 -2
  423. data/platform/android/Rhodes/gen/com/rhomobile/rhodes/R.java +40 -28
  424. data/platform/android/Rhodes/jni/include/rhodes/JNIRhodes.h +2 -0
  425. data/platform/android/Rhodes/jni/include/rhodes/RhoClassFactory.h +0 -2
  426. data/platform/android/Rhodes/jni/include/rhodes/details/rhojava.inc +6 -1
  427. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_RhodesService.h +155 -0
  428. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_file_RhoFileApi.h +55 -0
  429. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_geolocation_GeoLocationImpl.h +8 -0
  430. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_signature_Signature.h +21 -0
  431. data/platform/android/Rhodes/jni/include/rhodes.h +3 -0
  432. data/platform/android/Rhodes/jni/src/RhoClassFactory.cpp +0 -6
  433. data/platform/android/Rhodes/jni/src/callbacks.cpp +5 -5
  434. data/platform/android/Rhodes/jni/src/fileapi.cpp +987 -0
  435. data/platform/android/Rhodes/jni/src/geolocation.cpp +13 -0
  436. data/platform/android/Rhodes/jni/src/logconf.cpp +1 -1
  437. data/platform/android/Rhodes/jni/src/nativeview.cpp +35 -0
  438. data/platform/android/Rhodes/jni/src/phonebook.cpp +2 -0
  439. data/platform/android/Rhodes/jni/src/rhodes.cpp +111 -29
  440. data/platform/android/Rhodes/jni/src/signature.cpp +33 -0
  441. data/platform/android/Rhodes/jni/src/webview.cpp +6 -0
  442. data/platform/android/Rhodes/res/drawable/signature_cancel.png +0 -0
  443. data/platform/android/Rhodes/res/drawable/signature_clear.png +0 -0
  444. data/platform/android/Rhodes/res/drawable/signature_ok.png +0 -0
  445. data/platform/android/Rhodes/res/layout/signature.xml +54 -0
  446. data/platform/android/Rhodes/res/values/strings.xml +22 -20
  447. data/platform/android/Rhodes/src/com/rhomobile/rhodes/AndroidR.java +8 -0
  448. data/platform/android/Rhodes/src/com/rhomobile/rhodes/NativeBar.java +6 -5
  449. data/platform/android/Rhodes/src/com/rhomobile/rhodes/NavBar.java +6 -4
  450. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoActivity.java +18 -0
  451. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoMenu.java +4 -4
  452. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Rhodes.java +26 -689
  453. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +599 -0
  454. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RingtoneManager.java +1 -1
  455. data/platform/android/Rhodes/src/com/rhomobile/rhodes/SplashScreen.java +7 -16
  456. data/platform/android/Rhodes/src/com/rhomobile/rhodes/Utils.java +30 -14
  457. data/platform/android/Rhodes/src/com/rhomobile/rhodes/WebView.java +11 -27
  458. data/platform/android/Rhodes/src/com/rhomobile/rhodes/alert/Alert.java +24 -21
  459. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/Camera.java +8 -8
  460. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/FileList.java +5 -5
  461. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCapture.java +27 -5
  462. data/platform/android/Rhodes/src/com/rhomobile/rhodes/camera/ImageCaptureCallback.java +4 -1
  463. data/platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePicker.java +4 -5
  464. data/platform/android/Rhodes/src/com/rhomobile/rhodes/datetime/DateTimePickerScreen.java +4 -4
  465. data/platform/android/Rhodes/src/com/rhomobile/rhodes/file/RhoFileApi.java +192 -0
  466. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocation.java +18 -1
  467. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +48 -6
  468. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/MainView.java +2 -0
  469. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/SimpleMainView.java +39 -40
  470. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mainview/TabbedMainView.java +47 -17
  471. data/platform/android/Rhodes/src/com/rhomobile/rhodes/mapview/MapView.java +23 -11
  472. data/platform/android/Rhodes/src/com/rhomobile/rhodes/nativeview/RhoNativeViewManager.java +14 -0
  473. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorNew.java +5 -5
  474. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/ContactAccessorOld.java +4 -7
  475. data/platform/android/Rhodes/src/com/rhomobile/rhodes/phonebook/Phonebook.java +2 -1
  476. data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/ImageCapture.java +182 -0
  477. data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/Signature.java +89 -0
  478. data/platform/android/Rhodes/src/com/rhomobile/rhodes/signature/SignatureView.java +286 -0
  479. data/platform/android/Rhodes/src/com/rhomobile/rhodes/ui/LogOptionsDialog.java +12 -8
  480. data/platform/android/Rhodes/src/com/rhomobile/rhodes/ui/LogViewDialog.java +5 -5
  481. data/platform/android/Rhodes/src/com/rhomobile/rhodes/util/PerformOnUiThread.java +55 -0
  482. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientNew.java +14 -0
  483. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/ChromeClientOld.java +37 -0
  484. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettings.java +10 -0
  485. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsNew.java +17 -0
  486. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebSettingsOld.java +29 -0
  487. data/platform/android/build/RhodesSRC_build.files +13 -1
  488. data/platform/android/build/android.rake +136 -69
  489. data/platform/android/build/androidcommon.rb +1 -1
  490. data/platform/android/build/librhocommon_build.files +2 -3
  491. data/platform/android/build/librhodes_build.files +3 -1
  492. data/platform/android/build/librhomain_build.files +1 -0
  493. data/platform/android/build/libruby_build.files +1 -0
  494. data/platform/bb/Hsqldb/src/com/rho/db/HsqlDBResult.java +1 -1
  495. data/platform/bb/RubyVM/RubyVM.jdp +415 -416
  496. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/Capabilities.java +0 -0
  497. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/DateTimeTokenizer.java +0 -0
  498. data/platform/bb/RubyVM/src/com/rho/Extensions.java +11 -0
  499. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/FilePath.java +0 -0
  500. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/IRhoLogSink.java +0 -0
  501. data/platform/bb/RubyVM/src/com/rho/IRhoRubyHelper.java +35 -0
  502. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/Mutex.java +0 -0
  503. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/Properties.java +0 -0
  504. data/platform/bb/RubyVM/src/com/rho/RhoAppAdapter.java +96 -0
  505. data/platform/bb/RubyVM/src/com/rho/RhoClassFactory.java +125 -0
  506. data/platform/bb/RubyVM/src/com/rho/RhoConf.java +403 -0
  507. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoEmptyLogger.java +0 -0
  508. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoEmptyProfiler.java +0 -0
  509. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoLogConf.java +0 -0
  510. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoLogFileSink.java +0 -0
  511. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoLogOutputSink.java +0 -0
  512. data/platform/bb/RubyVM/src/com/rho/RhoLogger.java +278 -0
  513. data/platform/bb/RubyVM/src/com/rho/RhoParamArray.java +33 -0
  514. data/platform/bb/RubyVM/src/com/rho/RhoParams.java +62 -0
  515. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoProfiler.java +0 -0
  516. data/platform/bb/RubyVM/src/com/rho/RhoRuby.java +257 -0
  517. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/RhoThread.java +0 -0
  518. data/platform/bb/RubyVM/src/com/rho/RhodesApp.java +307 -0
  519. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/SplashScreen.java +0 -0
  520. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/Sprintf.java +0 -0
  521. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/StringScanner.java +0 -0
  522. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/TestProfiler.java +0 -0
  523. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/TestRhoLog.java +0 -0
  524. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/ThreadQueue.java +0 -0
  525. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/TimeInterval.java +0 -0
  526. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/Tokenizer.java +0 -0
  527. data/platform/bb/RubyVM/src/com/rho/db/DBAdapter.java +1198 -0
  528. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/db/DBAttrManager.java +0 -0
  529. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/db/DBException.java +0 -0
  530. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/db/IDBCallback.java +0 -0
  531. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/db/IDBResult.java +0 -0
  532. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/db/IDBStorage.java +0 -0
  533. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/file/IFile.java +0 -0
  534. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/file/IFileAccess.java +0 -0
  535. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/file/IRAFile.java +0 -0
  536. data/platform/bb/RubyVM/src/com/rho/file/RandomAccessFile.java +240 -0
  537. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/file/SimpleFile.java +0 -0
  538. data/platform/bb/RubyVM/src/com/rho/net/AsyncHttp.java +386 -0
  539. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/net/IHttpConnection.java +0 -0
  540. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/net/INetworkAccess.java +0 -0
  541. data/platform/bb/RubyVM/src/com/rho/net/NetRequest.java +706 -0
  542. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/net/NetResponse.java +0 -0
  543. data/platform/bb/RubyVM/src/com/rho/net/RhoConnection.java +847 -0
  544. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/net/URI.java +0 -0
  545. data/platform/bb/RubyVM/src/com/rho/rjson/RJSONTokener.java +247 -0
  546. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/sync/ClientRegister.java +0 -0
  547. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/sync/ISyncProtocol.java +0 -0
  548. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/sync/ISyncStatusListener.java +0 -0
  549. data/platform/bb/RubyVM/src/com/rho/sync/JSONArrayIterator.java +62 -0
  550. data/platform/bb/RubyVM/src/com/rho/sync/JSONEntry.java +75 -0
  551. data/platform/bb/RubyVM/src/com/rho/sync/JSONStructIterator.java +74 -0
  552. data/platform/bb/RubyVM/src/com/rho/sync/SyncEngine.java +918 -0
  553. data/platform/bb/RubyVM/src/com/rho/sync/SyncNotify.java +596 -0
  554. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/rho/sync/SyncProtocol_3.java +0 -0
  555. data/platform/bb/RubyVM/src/com/rho/sync/SyncSource.java +960 -0
  556. data/platform/bb/RubyVM/src/com/rho/sync/SyncThread.java +825 -0
  557. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/ObjectSpace_Methods.java +0 -0
  558. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyArray_Methods.java +0 -0
  559. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyBignum_Methods.java +0 -0
  560. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyDir_Methods.java +0 -0
  561. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyENV_Methods.java +0 -0
  562. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyExceptionValue_Methods.java +0 -0
  563. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyFileTestModule_Methods.java +0 -0
  564. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyFile_Methods.java +0 -0
  565. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyFixnum_Methods.java +0 -0
  566. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyFloat_Methods.java +0 -0
  567. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyGC_Methods.java +0 -0
  568. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyHash_Methods.java +0 -0
  569. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyIO_Methods.java +0 -0
  570. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyInteger_Methods.java +0 -0
  571. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyMatchData_Methods.java +0 -0
  572. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyMethodValue_Methods.java +0 -0
  573. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyNumeric_Methods.java +0 -0
  574. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyObject_Methods.java +0 -0
  575. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyProc_Methods.java +0 -0
  576. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyRandom_Methods.java +0 -0
  577. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyRange_Methods.java +0 -0
  578. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyRegexp_Methods.java +0 -0
  579. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyStringIO_Methods.java +0 -0
  580. data/platform/bb/RubyVM/src/com/xruby/GeneratedMethods/RubyString_Methods.java +275 -0
  581. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyStruct_Methods.java +0 -0
  582. data/platform/bb/RubyVM/src/com/xruby/GeneratedMethods/RubySymbol_Methods.java +44 -0
  583. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyThreadGroup_Methods.java +0 -0
  584. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyThread_Methods.java +0 -0
  585. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyTime_Methods.java +0 -0
  586. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/GeneratedMethods/RubyTopSelf_Methods.java +0 -0
  587. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/ArrayPacker.java +0 -0
  588. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/AttrReader.java +0 -0
  589. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/AttrWriter.java +0 -0
  590. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/ErrnoModuleBuilder.java +0 -0
  591. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/IErrno.java +0 -0
  592. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/InputStreamExecutor.java +0 -0
  593. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/ObjectFactory.java +0 -0
  594. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/OutputStreamExecutor.java +0 -0
  595. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyArray.java +0 -0
  596. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyBignum.java +0 -0
  597. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyData.java +0 -0
  598. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyDir.java +310 -0
  599. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyENV.java +0 -0
  600. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyFile.java +318 -0
  601. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyFileTestModule.java +0 -0
  602. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyFixnum.java +0 -0
  603. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyFloat.java +0 -0
  604. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyGC.java +0 -0
  605. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyHash.java +0 -0
  606. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyIO.java +398 -0
  607. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyIOExecutor.java +0 -0
  608. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyIOFileExecutor.java +218 -0
  609. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyIOPipeSinkExecutor.java +0 -0
  610. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyIOPipeSourceExecutor.java +0 -0
  611. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyInteger.java +0 -0
  612. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyMatchData.java +0 -0
  613. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyMethodValue.java +0 -0
  614. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyMutex.java +0 -0
  615. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyNumeric.java +0 -0
  616. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyProc.java +0 -0
  617. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyRandom.java +0 -0
  618. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyRange.java +0 -0
  619. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyRegexp.java +0 -0
  620. data/platform/bb/RubyVM/src/com/xruby/runtime/builtin/RubyString.java +1521 -0
  621. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyStruct.java +0 -0
  622. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyThread.java +0 -0
  623. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyThreadGroup.java +0 -0
  624. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyTime.java +0 -0
  625. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyTopSelf.java +0 -0
  626. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/builtin/RubyTypesUtil.java +0 -0
  627. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/AtExitBlocks.java +0 -0
  628. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/ClassFactory.java +0 -0
  629. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/GlobalVariables.java +0 -0
  630. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/MethodBlockBase.java +0 -0
  631. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/MethodCache.java +0 -0
  632. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/ObjectSpace.java +0 -0
  633. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RhoSupport.java +367 -0
  634. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyAPI.java +0 -0
  635. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyBasic.java +0 -0
  636. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyBinding.java +0 -0
  637. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyBlock.java +0 -0
  638. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyClass.java +0 -0
  639. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyClass_Methods.java +0 -0
  640. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyConstant.java +31 -0
  641. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyException.java +0 -0
  642. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyExceptionValue.java +0 -0
  643. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyExceptionValueForThrow.java +0 -0
  644. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyID.java +0 -0
  645. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyIncludeClass.java +0 -0
  646. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyKernelModule.java +0 -0
  647. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyKernelModule_Methods.java +0 -0
  648. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyMarshalModule.java +0 -0
  649. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyMarshalModule_Methods.java +0 -0
  650. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyMathModule.java +0 -0
  651. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyMathModule_Methods.java +0 -0
  652. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyMethod.java +0 -0
  653. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyModule.java +0 -0
  654. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyModule_Methods.java +0 -0
  655. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyNoArgBlock.java +0 -0
  656. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyNoArgMethod.java +0 -0
  657. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyNoOrOneArgMethod.java +0 -0
  658. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyObject.java +0 -0
  659. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyOneArgBlock.java +0 -0
  660. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyOneArgMethod.java +0 -0
  661. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyOneOrTwoArgMethod.java +0 -0
  662. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyProgram.java +0 -0
  663. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubyRuntime.java +526 -0
  664. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubySingletonClass.java +0 -0
  665. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubySpecialValue.java +0 -0
  666. data/platform/bb/RubyVM/src/com/xruby/runtime/lang/RubySymbol.java +309 -0
  667. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyTwoArgBlock.java +0 -0
  668. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyTwoArgMethod.java +0 -0
  669. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyValue.java +0 -0
  670. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyVarArgBlock.java +0 -0
  671. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/RubyVarArgMethod.java +0 -0
  672. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/DummyMethod.java +0 -0
  673. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyAllocMethod.java +0 -0
  674. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyLevelClass.java +0 -0
  675. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyLevelConstant.java +0 -0
  676. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyLevelMethod.java +0 -0
  677. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyLevelModule.java +0 -0
  678. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/RubyLevelObject.java +0 -0
  679. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/annotation/UndefMethod.java +0 -0
  680. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/CgMethodItem.java +0 -0
  681. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/DummyMethod.java +0 -0
  682. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/MethodFactory.java +0 -0
  683. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/MethodFactoryHelper.java +0 -0
  684. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/MethodType.java +0 -0
  685. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/NoArgRunMethodHelper.java +0 -0
  686. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/OneArgRunMethodHelper.java +0 -0
  687. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyClassBuilder.java +0 -0
  688. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyClassFactory.java +0 -0
  689. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyModuleBuilder.java +0 -0
  690. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyModuleFactory.java +0 -0
  691. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyObjectBuilder.java +0 -0
  692. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyObjectFactory.java +0 -0
  693. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RubyTypeFactory.java +0 -0
  694. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/RunMethodHelper.java +0 -0
  695. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/TwoArgRunMethodHelper.java +0 -0
  696. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/lang/util/VarArgRunMethodHelper.java +0 -0
  697. data/platform/{shared/rubyJVM → bb/RubyVM}/src/com/xruby/runtime/stdlib/RubyStringIO.java +0 -0
  698. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/CharConversionException.java +0 -0
  699. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/Closeable.java +0 -0
  700. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/DataInput.java +0 -0
  701. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/DataOutput.java +0 -0
  702. data/platform/bb/RubyVM/src/j2me/io/File.java +222 -0
  703. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/FileFilter.java +0 -0
  704. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/FileInputStream.java +0 -0
  705. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/FileNotFoundException.java +0 -0
  706. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/FileOutputStream.java +0 -0
  707. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/FilenameFilter.java +0 -0
  708. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/Flushable.java +0 -0
  709. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/InvalidClassException.java +0 -0
  710. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/InvalidObjectException.java +0 -0
  711. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/NotActiveException.java +0 -0
  712. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/NotSerializableException.java +0 -0
  713. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectInput.java +0 -0
  714. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectInputStream.java +0 -0
  715. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectInputValidation.java +0 -0
  716. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectOutput.java +0 -0
  717. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectOutputStream.java +0 -0
  718. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/ObjectStreamException.java +0 -0
  719. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/OptionalDataException.java +0 -0
  720. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/RandomAccessFile.java +0 -0
  721. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/Serializable.java +0 -0
  722. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/StreamCorruptedException.java +0 -0
  723. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/SyncFailedException.java +0 -0
  724. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/io/WriteAbortedException.java +0 -0
  725. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/ArrayMe.java +0 -0
  726. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/AssertMe.java +0 -0
  727. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/CalendarMe.java +0 -0
  728. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/CharSequence.java +0 -0
  729. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/CharacterDataLatin1.java +0 -0
  730. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/CharacterMe.java +0 -0
  731. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/CloneNotSupportedException.java +0 -0
  732. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Cloneable.java +0 -0
  733. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Comparable.java +0 -0
  734. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Convert.java +0 -0
  735. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/EnumConstantNotPresentException.java +0 -0
  736. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/IllegalStateException.java +0 -0
  737. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Iterable.java +0 -0
  738. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/MathEx.java +0 -0
  739. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/NoSuchFieldException.java +0 -0
  740. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/NoSuchMethodException.java +0 -0
  741. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Number.java +0 -0
  742. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/PrintStreamMe.java +0 -0
  743. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/Readable.java +0 -0
  744. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/SecurityException.java +0 -0
  745. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/StringBufferMe.java +0 -0
  746. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/StringMe.java +0 -0
  747. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/SystemMe.java +0 -0
  748. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/ThreadLocal.java +0 -0
  749. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/TimeZoneMe.java +0 -0
  750. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/TypeNotPresentException.java +0 -0
  751. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/lang/UnsupportedOperationException.java +0 -0
  752. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/math/HugeDigit.java +0 -0
  753. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/math/HugeInt.java +0 -0
  754. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/math/HugeIntHelper.java +0 -0
  755. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/Buffer.java +0 -0
  756. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/BufferUnderflowException.java +0 -0
  757. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/ByteBuffer.java +0 -0
  758. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/ByteOrder.java +0 -0
  759. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/CharBuffer.java +0 -0
  760. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/InvalidMarkException.java +0 -0
  761. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/channels/FileChannel.java +0 -0
  762. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/nio/channels/Pipe.java +0 -0
  763. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/text/ParsePosition.java +0 -0
  764. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/ArrayList.java +0 -0
  765. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Collection.java +0 -0
  766. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Collections.java +0 -0
  767. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Comparator.java +0 -0
  768. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/ConcurrentModificationException.java +0 -0
  769. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/DuplicateFormatFlagsException.java +0 -0
  770. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/EventListener.java +0 -0
  771. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/FormatFlagsConversionMismatchException.java +0 -0
  772. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Formattable.java +0 -0
  773. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Formatter.java +0 -0
  774. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/FormatterClosedException.java +0 -0
  775. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/HashMap.java +0 -0
  776. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/HashSet.java +0 -0
  777. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatCodePointException.java +0 -0
  778. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatConversionException.java +0 -0
  779. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatException.java +0 -0
  780. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatFlagsException.java +0 -0
  781. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatPrecisionException.java +0 -0
  782. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/IllegalFormatWidthException.java +0 -0
  783. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/InputMismatchException.java +0 -0
  784. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/InvalidPropertiesFormatException.java +0 -0
  785. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Iterator.java +0 -0
  786. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/LinkedHashMap.java +0 -0
  787. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/LinkedHashSet.java +0 -0
  788. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/LinkedList.java +0 -0
  789. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/List.java +0 -0
  790. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/ListIterator.java +0 -0
  791. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Locale.java +0 -0
  792. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Map.java +0 -0
  793. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/MissingFormatArgumentException.java +0 -0
  794. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/MissingFormatWidthException.java +0 -0
  795. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/MissingResourceException.java +0 -0
  796. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/NavigableMap.java +0 -0
  797. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/NavigableSet.java +0 -0
  798. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/NoSuchElementException.java +0 -0
  799. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Observable.java +0 -0
  800. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Observer.java +0 -0
  801. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Queue.java +0 -0
  802. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/RandomAccess.java +0 -0
  803. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/RandomMe.java +0 -0
  804. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/Set.java +0 -0
  805. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/SortedMap.java +0 -0
  806. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/SortedSet.java +0 -0
  807. data/platform/bb/RubyVM/src/j2me/util/StringParser.java +245 -0
  808. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/TooManyListenersException.java +0 -0
  809. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/UnknownFormatConversionException.java +0 -0
  810. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/UnknownFormatFlagsException.java +0 -0
  811. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/WeakHashMap.java +0 -0
  812. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/concurrent/ConcurrentHashMap.java +0 -0
  813. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/concurrent/ConcurrentMap.java +0 -0
  814. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/concurrent/atomic/AtomicLong.java +0 -0
  815. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/concurrent/locks/ReentrantLock.java +0 -0
  816. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/logging/Level.java +0 -0
  817. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/logging/LogRecord.java +0 -0
  818. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/logging/Logger.java +0 -0
  819. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/zip/ZipEntry.java +0 -0
  820. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2me/util/zip/ZipFile.java +0 -0
  821. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2mex/realtime/MemoryArea.java +0 -0
  822. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2mex/realtime/NoHeapRealtimeThread.java +0 -0
  823. data/platform/{shared/rubyJVM → bb/RubyVM}/src/j2mex/realtime/RealtimeThread.java +0 -0
  824. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/Javolution.java +0 -0
  825. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/JavolutionError.java +0 -0
  826. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/Allocator.java +0 -0
  827. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/AllocatorContext.java +0 -0
  828. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ArrayFactory.java +0 -0
  829. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ConcurrentContext.java +0 -0
  830. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ConcurrentException.java +0 -0
  831. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ConcurrentThread.java +0 -0
  832. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/Context.java +0 -0
  833. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/HeapContext.java +0 -0
  834. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ImmortalContext.java +0 -0
  835. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/LocalContext.java +0 -0
  836. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/LogContext.java +0 -0
  837. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/ObjectFactory.java +0 -0
  838. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/PersistentContext.java +0 -0
  839. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/SecurityContext.java +0 -0
  840. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/context/StackContext.java +0 -0
  841. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/AppendableWriter.java +0 -0
  842. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/CharSequenceReader.java +0 -0
  843. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/UTF8ByteBufferReader.java +0 -0
  844. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/UTF8ByteBufferWriter.java +0 -0
  845. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/UTF8StreamReader.java +0 -0
  846. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/io/UTF8StreamWriter.java +0 -0
  847. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/ClassInitializer.java +0 -0
  848. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Configurable.java +0 -0
  849. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Enum.java +0 -0
  850. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Immutable.java +0 -0
  851. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/MathLib.java +0 -0
  852. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Realtime.java +0 -0
  853. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Reference.java +0 -0
  854. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Reflection.java +0 -0
  855. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/Reusable.java +0 -0
  856. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/lang/ValueType.java +0 -0
  857. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/Appendable.java +0 -0
  858. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/CharArray.java +0 -0
  859. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/CharSet.java +0 -0
  860. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/Text.java +0 -0
  861. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/TextBuilder.java +0 -0
  862. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/TextFormat.java +0 -0
  863. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/text/TypeFormat.java +0 -0
  864. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastCollection.java +0 -0
  865. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastComparator.java +0 -0
  866. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastIterator.java +0 -0
  867. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastList.java +0 -0
  868. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastMap.java +0 -0
  869. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/FastSet.java +0 -0
  870. data/platform/bb/RubyVM/src/javolution/util/FastTable.java +975 -0
  871. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/Index.java +0 -0
  872. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/LocalMap.java +0 -0
  873. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/ReentrantLock.java +0 -0
  874. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/StandardLog.java +0 -0
  875. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/doc-files/list-add.png +0 -0
  876. data/platform/{shared/rubyJVM → bb/RubyVM}/src/javolution/util/doc-files/map-put.png +0 -0
  877. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/io/GlobFilenameFilter.java +0 -0
  878. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/io/RegexFilenameFilter.java +0 -0
  879. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/GenericPatternCache.java +0 -0
  880. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/GlobCompiler.java +0 -0
  881. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/MalformedCachePatternException.java +0 -0
  882. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/PatternCache.java +0 -0
  883. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/PatternCacheLRU.java +0 -0
  884. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/PatternMatchingEngineFactory.java +0 -0
  885. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/perl/MalformedPerl5PatternException.java +0 -0
  886. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/perl/ParsedSubstitutionEntry.java +0 -0
  887. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/perl/Perl5Util.java +0 -0
  888. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/CharStringPointer.java +0 -0
  889. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/MalformedPatternException.java +0 -0
  890. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/MatchResult.java +0 -0
  891. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/OpCode.java +0 -0
  892. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Pattern.java +0 -0
  893. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/PatternCompiler.java +0 -0
  894. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/PatternCompilerOptions.java +0 -0
  895. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/PatternMatcher.java +0 -0
  896. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/PatternMatcherInput.java +0 -0
  897. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/PatternMatchingEngine.java +0 -0
  898. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5Compiler.java +0 -0
  899. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5MatchResult.java +0 -0
  900. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5Matcher.java +0 -0
  901. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5Pattern.java +0 -0
  902. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5Repetition.java +0 -0
  903. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Perl5Substitution.java +0 -0
  904. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/StringSubstitution.java +0 -0
  905. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Substitution.java +0 -0
  906. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/text/regex/Util.java +0 -0
  907. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/util/Cache.java +0 -0
  908. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/util/CacheLRU.java +0 -0
  909. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/util/GenericCache.java +0 -0
  910. data/platform/{shared/rubyJVM → bb/RubyVM}/src/org/apache/oro/util/GenericCacheEntry.java +0 -0
  911. data/platform/bb/RubyVM/src/org/json/me/RhoJSONArray.java +871 -0
  912. data/platform/bb/RubyVM/src/org/json/me/RhoJSONException.java +27 -0
  913. data/platform/bb/RubyVM/src/org/json/me/RhoJSONObject.java +1290 -0
  914. data/platform/bb/RubyVM/src/org/json/me/RhoJSONString.java +18 -0
  915. data/platform/bb/RubyVM/src/org/json/me/RhoJSONTokener.java +460 -0
  916. data/platform/bb/build/RubyVM_build.files +412 -411
  917. data/platform/bb/build/bb.rake +240 -90
  918. data/platform/bb/rhodes/platform/6.0/com/rho/BrowserAdapter5.java +155 -0
  919. data/platform/bb/rhodes/platform/6.0/com/rho/RhoMainScreen.java +36 -0
  920. data/platform/bb/rhodes/src/com/rho/RhoRubyHelper.java +5 -0
  921. data/platform/bb/rhodes/src/com/rho/file/Jsr75RAFileImpl.java +2 -2
  922. data/platform/bb/rhodes/src/com/rho/net/BaseSocket.java +6 -0
  923. data/platform/bb/rhodes/src/com/rho/net/NetworkAccess.java +1 -1
  924. data/platform/bb/rhodes/src/com/rho/net/SSLSocket.java +15 -0
  925. data/platform/bb/rhodes/src/com/rho/net/TCPSocket.java +15 -0
  926. data/platform/bb/rhodes/src/com/rho/rubyext/GeoLocation.java +2 -2
  927. data/platform/bb/rhodes/src/com/rho/rubyext/WebView.java +8 -3
  928. data/platform/bb/rhodes/src/rhomobile/PushListeningThread.java +39 -9
  929. data/platform/bb/rhodes/src/rhomobile/RhodesApplication.java +40 -42
  930. data/platform/bb/rhodes/src/rhomobile/RingtoneManager.java +2 -10
  931. data/platform/bb/rhodes/src/rhomobile/mapview/GoogleMapField.java +10 -10
  932. data/platform/iphone/Classes/AppManager/AppManager.m +9 -2
  933. data/platform/iphone/Classes/Camera/PickImageDelegate.m +6 -4
  934. data/platform/iphone/Classes/DateTimePicker.m +2 -0
  935. data/platform/iphone/Classes/DateTimePickerDelegate.m +19 -7
  936. data/platform/iphone/Classes/GeoLocation/LocationController.m +4 -0
  937. data/platform/iphone/Classes/MapView/MapViewController.h +1 -1
  938. data/platform/iphone/Classes/MapView/MapViewController.m +4 -1
  939. data/platform/iphone/Classes/NativeBar.m +7 -1
  940. data/platform/iphone/Classes/NavBar.m +4 -1
  941. data/platform/iphone/Classes/Phonebook/phonebook.m +5 -0
  942. data/platform/iphone/Classes/RhoAlert.h +1 -1
  943. data/platform/iphone/Classes/RhoAlert.m +8 -0
  944. data/platform/iphone/Classes/RhoMainView.h +0 -1
  945. data/platform/iphone/Classes/RhoNativeViewManager.mm +224 -0
  946. data/platform/iphone/Classes/RhoNativeViewManagerOC.h +45 -0
  947. data/platform/iphone/Classes/Rhodes.h +4 -1
  948. data/platform/iphone/Classes/Rhodes.m +157 -55
  949. data/platform/iphone/Classes/Signature/SignatureDelegate.h +29 -0
  950. data/platform/iphone/Classes/Signature/SignatureDelegate.m +98 -0
  951. data/platform/iphone/Classes/Signature/SignatureView.h +31 -0
  952. data/platform/iphone/Classes/Signature/SignatureView.m +216 -0
  953. data/platform/iphone/Classes/Signature/SignatureViewController.h +25 -0
  954. data/platform/iphone/Classes/Signature/SignatureViewController.m +163 -0
  955. data/platform/iphone/Classes/SimpleMainView.h +11 -1
  956. data/platform/iphone/Classes/SimpleMainView.m +243 -57
  957. data/platform/iphone/Classes/TabbedMainView.h +2 -0
  958. data/platform/iphone/Classes/TabbedMainView.m +9 -10
  959. data/platform/iphone/Classes/WebView.m +38 -24
  960. data/platform/iphone/Classes/rho/net/NetRequestImpl.m +11 -1
  961. data/platform/iphone/Entitlements.plist +6 -0
  962. data/platform/iphone/Info.plist +1 -1
  963. data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +20 -16
  964. data/platform/iphone/rbuild/iphone.rake +138 -134
  965. data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +19 -7
  966. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +65 -23
  967. data/platform/shared/SyncClient/RhoError.h +29 -0
  968. data/platform/shared/SyncClient/SyncClient.cpp +860 -0
  969. data/platform/shared/SyncClient/SyncClient.h +76 -0
  970. data/platform/shared/common/IRhoClassFactory.h +1 -3
  971. data/platform/shared/common/PosixThreadImpl.cpp +30 -12
  972. data/platform/shared/common/PosixThreadImpl.h +1 -0
  973. data/platform/shared/common/RhoAppAdapter.h +34 -0
  974. data/platform/shared/common/RhoConf.cpp +6 -5
  975. data/platform/shared/common/RhoConf.h +2 -1
  976. data/platform/shared/common/RhoFile.cpp +22 -3
  977. data/platform/shared/common/RhoFile.h +1 -1
  978. data/platform/shared/common/RhoNativeViewManager.h +43 -0
  979. data/platform/shared/common/RhoPort.h +16 -0
  980. data/platform/shared/common/RhoStd.h +9 -2
  981. data/platform/shared/common/RhoThread.h +2 -2
  982. data/platform/shared/common/RhodesApp.cpp +193 -111
  983. data/platform/shared/common/RhodesApp.h +28 -27
  984. data/platform/shared/common/RhodesAppBase.cpp +130 -0
  985. data/platform/shared/common/RhodesAppBase.h +64 -0
  986. data/platform/shared/common/SplashScreen.cpp +1 -1
  987. data/platform/shared/common/ThreadQueue.cpp +3 -3
  988. data/platform/shared/common/ThreadQueue.h +7 -7
  989. data/platform/shared/common/Tokenizer.h +2 -1
  990. data/platform/shared/common/iphone/RhoClassFactory.cpp +22 -0
  991. data/platform/shared/common/iphone/RhoClassfactory.h +29 -0
  992. data/platform/shared/common/iphone/RhoFileImpl.m +46 -0
  993. data/platform/shared/common/iphone/RhoThreadImpl.m +24 -0
  994. data/platform/shared/common/rhoparams.cpp +188 -0
  995. data/platform/shared/common/rhoparams.h +35 -42
  996. data/platform/shared/curl/lib/url.c +1 -1
  997. data/platform/shared/db/DBAdapter.cpp +68 -22
  998. data/platform/shared/db/DBAdapter.h +36 -5
  999. data/platform/shared/db/DBAttrManager.cpp +4 -0
  1000. data/platform/shared/db/DBAttrManager.h +2 -1
  1001. data/platform/shared/db/DBResult.cpp +2 -2
  1002. data/platform/shared/db/DBResult.h +25 -5
  1003. data/{res/build-tools → platform/shared/db/res}/db/syncdb.schema +0 -0
  1004. data/{res/build-tools → platform/shared/db/res}/db/syncdb.triggers +0 -0
  1005. data/platform/shared/json/JSONIterator.cpp +4 -2
  1006. data/platform/shared/json/RJSONTokener.c +16 -13
  1007. data/platform/shared/logging/RhoLog.cpp +1 -1
  1008. data/platform/shared/logging/RhoLogConf.cpp +12 -0
  1009. data/platform/shared/net/AsyncHttp.cpp +62 -63
  1010. data/platform/shared/net/AsyncHttp.h +26 -17
  1011. data/platform/shared/net/CURLNetRequest.cpp +248 -156
  1012. data/platform/shared/net/CURLNetRequest.h +42 -16
  1013. data/platform/shared/net/HttpServer.cpp +58 -84
  1014. data/platform/shared/net/HttpServer.h +6 -5
  1015. data/platform/shared/net/URI.cpp +39 -0
  1016. data/platform/shared/net/URI.h +3 -0
  1017. data/platform/{iphone/Classes/rho/net → shared/net/iphone}/sslimpl.cpp +0 -0
  1018. data/platform/{iphone/Classes/rho/net → shared/net/iphone}/sslimpl.h +0 -0
  1019. data/platform/shared/net/ssl.cpp +1 -1
  1020. data/platform/shared/ruby/ext/alert/alert.i +1 -1
  1021. data/platform/shared/ruby/ext/alert/alert_wrap.c +8 -8
  1022. data/platform/shared/ruby/ext/asynchttp/asynchttp.i +10 -17
  1023. data/platform/shared/ruby/ext/asynchttp/asynchttp_wrap.c +20 -340
  1024. data/platform/shared/ruby/ext/mapview/mapview.i +1 -1
  1025. data/platform/shared/ruby/ext/mapview/mapview_wrap.c +8 -8
  1026. data/platform/shared/ruby/ext/nativebar/nativebar.i +1 -1
  1027. data/platform/shared/ruby/ext/nativebar/nativebar_wrap.c +8 -8
  1028. data/platform/shared/ruby/ext/navbar/navbar.i +1 -1
  1029. data/platform/shared/ruby/ext/navbar/navbar_wrap.c +8 -8
  1030. data/platform/shared/ruby/ext/rho/rhoruby.c +29 -9
  1031. data/platform/shared/ruby/ext/rho/rhoruby.h +45 -7
  1032. data/platform/shared/ruby/ext/rhoconf/rhoconf.i +9 -2
  1033. data/platform/shared/ruby/ext/rhoconf/rhoconf_wrap.c +431 -122
  1034. data/platform/shared/ruby/ext/signature/signature.i +8 -0
  1035. data/platform/shared/ruby/ext/signature/signature_wrap.c +2184 -0
  1036. data/platform/shared/ruby/ext/sqlite3_api/sqlite3_api_wrap.c +32 -26
  1037. data/platform/shared/ruby/ext/syncengine/syncengine.i +8 -10
  1038. data/platform/shared/ruby/ext/syncengine/syncengine_wrap.c +449 -208
  1039. data/platform/shared/ruby/ext/webview/webview.i +1 -1
  1040. data/platform/shared/ruby/ext/webview/webview_wrap.c +11 -11
  1041. data/platform/shared/ruby/file.c +19 -11
  1042. data/platform/shared/ruby/linux/ruby/config.h +8 -8
  1043. data/platform/shared/ruby/strftime.c +9 -1
  1044. data/platform/shared/ruby/wince/io_wce.c +69 -29
  1045. data/platform/shared/ruby/wince/sys/stat.c +1 -1
  1046. data/platform/shared/ruby/wince/sys/timeb.c +1 -0
  1047. data/platform/shared/ruby/wince/wince.h +1 -0
  1048. data/platform/shared/rubyext/GeoLocation.cpp +27 -11
  1049. data/platform/shared/rubyext/GeoLocation.h +8 -2
  1050. data/platform/shared/rubyext/RhoAppAdapter.cpp +41 -0
  1051. data/platform/shared/rubyext/System.cpp +1 -18
  1052. data/platform/shared/rubyext/WebView.h +3 -1
  1053. data/platform/shared/sync/ClientRegister.cpp +2 -3
  1054. data/platform/shared/sync/ClientRegister.h +0 -2
  1055. data/platform/shared/sync/SyncEngine.cpp +136 -65
  1056. data/platform/shared/sync/SyncEngine.h +9 -4
  1057. data/platform/shared/sync/SyncNotify.cpp +123 -180
  1058. data/platform/shared/sync/SyncNotify.h +34 -24
  1059. data/platform/shared/sync/SyncSource.cpp +36 -33
  1060. data/platform/shared/sync/SyncSource.h +9 -3
  1061. data/platform/shared/sync/SyncThread.cpp +116 -38
  1062. data/platform/shared/sync/SyncThread.h +26 -30
  1063. data/platform/shared/test/test_helper.cpp +50 -0
  1064. data/platform/shared/test/test_helper.h +2 -0
  1065. data/platform/shared/xruby/src/com/xruby/compiler/codedom/AsciiValueExpression.java +54 -48
  1066. data/platform/shared/xruby/src/com/xruby/compiler/codegen/ClassGeneratorForRubyProgram.java +95 -95
  1067. data/platform/shared/xruby/src/com/xruby/compiler/codegen/RubyCompilerImpl.java +1 -1
  1068. data/platform/shared/xruby/src/com/xruby/compiler/codegen/RubyIDClassGenerator.java +102 -100
  1069. data/platform/wm/RhoLib/RhoLib.vcproj +10 -10
  1070. data/platform/wm/build/build_inf.js +1 -1
  1071. data/platform/wm/build/wm.rake +73 -14
  1072. data/platform/wm/rhodes/Alert.cpp +1 -1
  1073. data/platform/wm/rhodes/MainWindow.cpp +23 -4
  1074. data/platform/wm/rhodes/MainWindow.h +3 -1
  1075. data/platform/wm/rhodes/Rhodes.cpp +6 -5
  1076. data/platform/wm/rhodes/Vibrate.cpp +1 -1
  1077. data/platform/wm/rhodes/camera/Camera.cpp +2 -2
  1078. data/platform/wm/rhodes/phonebook/phonebook.cpp +2 -0
  1079. data/platform/wm/rhodes/rho/common/RhoClassFactory.cpp +2 -7
  1080. data/platform/wm/rhodes/rho/common/RhoClassFactory.h +0 -6
  1081. data/platform/wm/rhodes/rho/common/RhoThreadImpl.h +1 -0
  1082. data/platform/wm/rhodes/rho/net/NetRequest.cpp +1 -1
  1083. data/platform/wm/rhodes/rho/net/NetRequest.h +1 -0
  1084. data/platform/wm/rhodes/rho/net/NetRequestImpl.cpp +8 -3
  1085. data/platform/wm/rhodes/rho/net/NetRequestImpl.h +1 -0
  1086. data/platform/wm/rhodes/rho/rubyext/SystemImpl.cpp +13 -10
  1087. data/platform/wm/rhodes/rho/rubyext/WebView.cpp +11 -1
  1088. data/platform/wm/rhodes/rhodes.vcproj +26 -9
  1089. data/platform/wm/rhodes/signature/Signature.cpp +28 -0
  1090. data/platform/wm/rhodes/signature/Signature.h +3 -0
  1091. data/platform/wm/rhodes/stdafx.h +5 -0
  1092. data/platform/wm/rubylib/rubylib.vcproj +11 -3
  1093. data/platform/wm/syncengine/syncengine.vcproj +1 -1
  1094. data/platform/wm/tcmalloc/tcmalloc.vcproj +1 -0
  1095. data/rakefile.rb +189 -110
  1096. data/res/build-tools/xruby-0.3.3.jar +0 -0
  1097. data/res/generators/rhogen.rb +9 -9
  1098. data/res/generators/templates/application/app/Settings/home.erb +15 -18
  1099. data/res/generators/templates/application/app/Settings/index.erb +26 -42
  1100. data/res/generators/templates/application/app/Settings/login.erb +19 -23
  1101. data/res/generators/templates/application/app/Settings/reset.erb +12 -13
  1102. data/res/generators/templates/application/app/Settings/wait.erb +2 -2
  1103. data/res/generators/templates/application/app/application.rb +6 -2
  1104. data/res/generators/templates/application/app/helpers/application_helper.rb +39 -21
  1105. data/res/generators/templates/application/app/index.erb +21 -18
  1106. data/res/generators/templates/application/app/layout.erb +38 -21
  1107. data/res/generators/templates/application/build.yml +2 -1
  1108. data/res/generators/templates/application/public/css/android.css +122 -88
  1109. data/res/generators/templates/application/public/css/iphone.css +161 -133
  1110. data/res/generators/templates/application/public/css/windows_mobile.css +126 -116
  1111. data/res/generators/templates/application/public/images/iphone/jqtouch/backButton.png +0 -0
  1112. data/res/generators/templates/application/public/images/iphone/jqtouch/blueButton.png +0 -0
  1113. data/res/generators/templates/application/public/images/iphone/jqtouch/cancel.png +0 -0
  1114. data/res/generators/templates/application/public/images/iphone/jqtouch/chevron.png +0 -0
  1115. data/res/generators/templates/application/public/images/iphone/jqtouch/grayButton.png +0 -0
  1116. data/res/generators/templates/application/public/images/iphone/jqtouch/listArrowSel.png +0 -0
  1117. data/res/generators/templates/application/public/images/iphone/jqtouch/listGroup.png +0 -0
  1118. data/res/generators/templates/application/public/images/iphone/jqtouch/loading.gif +0 -0
  1119. data/res/generators/templates/application/public/images/iphone/jqtouch/on_off.png +0 -0
  1120. data/res/generators/templates/application/public/images/iphone/jqtouch/pinstripes.png +0 -0
  1121. data/res/generators/templates/application/public/images/iphone/jqtouch/selection.png +0 -0
  1122. data/res/generators/templates/application/public/images/iphone/jqtouch/thumb.png +0 -0
  1123. data/res/generators/templates/application/public/images/iphone/jqtouch/toggle.png +0 -0
  1124. data/res/generators/templates/application/public/images/iphone/jqtouch/toggleOn.png +0 -0
  1125. data/res/generators/templates/application/public/images/iphone/jqtouch/toolButton.png +0 -0
  1126. data/res/generators/templates/application/public/images/iphone/jqtouch/toolbar.png +0 -0
  1127. data/res/generators/templates/application/public/images/iphone/jqtouch/whiteButton.png +0 -0
  1128. data/res/generators/templates/application/public/jqtouch/jqtouch.css +378 -0
  1129. data/res/generators/templates/application/public/jqtouch/jqtouch.js +741 -0
  1130. data/res/generators/templates/application/public/jqtouch/jqtouch.transitions.js +60 -0
  1131. data/res/generators/templates/application/public/jqtouch/jquery.1.3.2.min.js +19 -0
  1132. data/res/generators/templates/application/rhoconfig.txt +6 -0
  1133. data/res/generators/templates/model/controller.rb +1 -2
  1134. data/res/generators/templates/model/edit.erb +22 -18
  1135. data/res/generators/templates/model/index.erb +25 -25
  1136. data/res/generators/templates/model/model.rb +4 -1
  1137. data/res/generators/templates/model/new.erb +20 -17
  1138. data/res/generators/templates/model/show.erb +16 -12
  1139. data/res/generators/templates/spec/app/mspec.rb +4 -1
  1140. data/res/generators/templates/spec/app/spec_runner.rb +4 -6
  1141. data/rhobuild.yml.example +13 -7
  1142. data/rhodes.gemspec +3 -2
  1143. data/spec/framework_spec/app/SpecRunner/controller.rb +0 -2
  1144. data/spec/framework_spec/app/mspec.rb +4 -1
  1145. data/spec/framework_spec/app/spec/core/dir/mkdir_spec.rb +3 -2
  1146. data/spec/framework_spec/app/spec/core/dir/path_spec.rb +1 -1
  1147. data/spec/framework_spec/app/spec/core/dir/shared/delete.rb +4 -2
  1148. data/spec/framework_spec/app/spec/core/file/basename_spec.rb +10 -10
  1149. data/spec/framework_spec/app/spec/core/file/constants/constants_spec.rb +2 -0
  1150. data/spec/framework_spec/app/spec/core/file/inspect_spec.rb +5 -3
  1151. data/spec/framework_spec/app/spec/core/file/path_spec.rb +1 -1
  1152. data/spec/framework_spec/app/spec/core/file/shared/fnmatch.rb +5 -5
  1153. data/spec/framework_spec/app/spec/core/file/shared/stat.rb +2 -2
  1154. data/spec/framework_spec/app/spec/core/file/split_spec.rb +2 -1
  1155. data/spec/framework_spec/app/spec/core/math/atanh_spec.rb +8 -6
  1156. data/spec/framework_spec/app/spec/shared/file/readable.rb +2 -1
  1157. data/spec/framework_spec/app/spec_runner.rb +50 -30
  1158. data/spec/framework_spec/build.yml +7 -4
  1159. data/spec/perfomance_spec/Rakefile +27 -0
  1160. data/spec/perfomance_spec/app/Perftest/controller.rb +92 -0
  1161. data/spec/perfomance_spec/app/Perftest/index.erb +21 -0
  1162. data/spec/perfomance_spec/app/Perftest/perftest.rb +4 -0
  1163. data/spec/perfomance_spec/app/application.rb +4 -0
  1164. data/spec/perfomance_spec/app/index.erb +0 -0
  1165. data/spec/perfomance_spec/app/layout.erb +25 -0
  1166. data/spec/perfomance_spec/build.yml +22 -0
  1167. data/spec/perfomance_spec/icon/icon.ico +0 -0
  1168. data/spec/perfomance_spec/icon/icon.png +0 -0
  1169. data/spec/perfomance_spec/public/css/android.css +287 -0
  1170. data/spec/perfomance_spec/public/css/blackberry.css +114 -0
  1171. data/spec/perfomance_spec/public/css/iphone.css +382 -0
  1172. data/{res/generators/templates/application → spec/perfomance_spec}/public/css/webkit.css +0 -0
  1173. data/spec/perfomance_spec/public/css/windows_mobile.css +212 -0
  1174. data/spec/perfomance_spec/public/pinstripes.png +0 -0
  1175. data/spec/perfomance_spec/rhoconfig.txt +34 -0
  1176. data/spec/phone_spec/app/Account/account.rb +7 -0
  1177. data/spec/phone_spec/app/Account_s/account_s.rb +50 -0
  1178. data/spec/phone_spec/app/Barcode/Barcode_UPC_01.png +0 -0
  1179. data/spec/phone_spec/app/Barcode/Barcode_UPC_02.jpg +0 -0
  1180. data/spec/{framework_spec → phone_spec}/app/BlobTest/blob_test.rb +0 -0
  1181. data/spec/{framework_spec → phone_spec}/app/BlobTest/test.png +0 -0
  1182. data/spec/{framework_spec → phone_spec}/app/BlobTest/test2.png +0 -0
  1183. data/spec/{framework_spec → phone_spec}/app/Case/case.rb +0 -0
  1184. data/spec/phone_spec/app/Case_s/case_s.rb +25 -0
  1185. data/spec/phone_spec/app/Customer/customer.rb +7 -0
  1186. data/spec/phone_spec/app/Customer_s/customer_s.rb +21 -0
  1187. data/spec/phone_spec/app/Data/big_test.json +1 -0
  1188. data/spec/phone_spec/app/Data/reqTest.rb +5 -0
  1189. data/spec/phone_spec/app/Data/test1.xml +6 -0
  1190. data/spec/phone_spec/app/Data/test_log.txt +1 -0
  1191. data/spec/phone_spec/app/Product/product.rb +29 -0
  1192. data/spec/phone_spec/app/Product_s/product_s.rb +22 -0
  1193. data/spec/phone_spec/app/Spec/asynchttp_spec.rb +131 -38
  1194. data/spec/phone_spec/app/Spec/barcode_spec.rb +19 -0
  1195. data/spec/phone_spec/app/Spec/blobsync_spec.rb +154 -0
  1196. data/spec/{framework_spec/app/spec → phone_spec/app/Spec}/bsearch_spec.rb +0 -0
  1197. data/spec/phone_spec/app/Spec/bulksync_spec.rb +74 -0
  1198. data/spec/phone_spec/app/Spec/contacts_spec.rb +23 -25
  1199. data/spec/phone_spec/app/Spec/crypt_spec.rb +14 -0
  1200. data/spec/phone_spec/app/Spec/date_spec.rb +17 -0
  1201. data/spec/{framework_spec/app/spec → phone_spec/app/Spec}/fixtures/client_info.txt +0 -0
  1202. data/spec/phone_spec/app/Spec/fixtures/object_values.txt +90 -0
  1203. data/spec/phone_spec/app/Spec/json_spec.rb +79 -42
  1204. data/spec/phone_spec/app/Spec/mapview_spec.rb +10 -12
  1205. data/spec/phone_spec/app/Spec/nativebar_spec.rb +5 -7
  1206. data/spec/phone_spec/app/Spec/navbar_spec.rb +6 -9
  1207. data/spec/phone_spec/app/Spec/pagination/fixtures/object_values.txt +91 -0
  1208. data/spec/phone_spec/app/Spec/rho_controller_spec.rb +156 -0
  1209. data/spec/phone_spec/app/Spec/rho_spec.rb +483 -0
  1210. data/spec/phone_spec/app/Spec/rhofile_spec.rb +52 -18
  1211. data/spec/phone_spec/app/Spec/rhom_object_spec.rb +835 -0
  1212. data/spec/phone_spec/app/Spec/syncengine_spec.rb +287 -0
  1213. data/spec/phone_spec/app/Spec/xml_spec.rb +88 -24
  1214. data/spec/phone_spec/app/Spec/xruby_spec.rb +61 -4
  1215. data/spec/phone_spec/app/SpecRunner/controller.rb +22 -0
  1216. data/spec/phone_spec/app/SpecRunner/index.erb +17 -0
  1217. data/spec/phone_spec/app/index.erb +1 -1
  1218. data/spec/phone_spec/app/spec_runner.rb +41 -0
  1219. data/spec/phone_spec/build.yml +16 -6
  1220. data/spec/phone_spec/rhoconfig.txt +2 -1
  1221. data/spec/phone_spec/server.rb +5 -0
  1222. metadata +944 -696
  1223. data/platform/android/Rhodes/jni/include/rhodes/SystemInfoImpl.h +0 -26
  1224. data/platform/android/Rhodes/jni/include/rhodes/jni/com_rhomobile_rhodes_Rhodes.h +0 -131
  1225. data/platform/android/Rhodes/jni/src/syncengine.cpp +0 -13
  1226. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesInstance.java +0 -40
  1227. data/platform/iphone/Classes/RhoFileImpl.m +0 -40
  1228. data/platform/iphone/Classes/rho/common/RhoClassFactory.cpp +0 -26
  1229. data/platform/iphone/Classes/rho/common/RhoClassFactory.h +0 -34
  1230. data/platform/iphone/Classes/rho/common/SystemInfoImpl.h +0 -20
  1231. data/platform/shared/common/ISystemInfo.h +0 -16
  1232. data/platform/shared/common/rhoparams.c +0 -105
  1233. data/platform/shared/rubyJVM/src/com/rho/Convert.java +0 -1989
  1234. data/platform/shared/rubyJVM/src/com/rho/IRhoRubyHelper.java +0 -34
  1235. data/platform/shared/rubyJVM/src/com/rho/RhoClassFactory.java +0 -122
  1236. data/platform/shared/rubyJVM/src/com/rho/RhoConf.java +0 -370
  1237. data/platform/shared/rubyJVM/src/com/rho/RhoLogger.java +0 -275
  1238. data/platform/shared/rubyJVM/src/com/rho/RhoRuby.java +0 -333
  1239. data/platform/shared/rubyJVM/src/com/rho/RhodesApp.java +0 -308
  1240. data/platform/shared/rubyJVM/src/com/rho/db/DBAdapter.java +0 -1189
  1241. data/platform/shared/rubyJVM/src/com/rho/file/RandomAccessFile.java +0 -229
  1242. data/platform/shared/rubyJVM/src/com/rho/net/AsyncHttp.java +0 -401
  1243. data/platform/shared/rubyJVM/src/com/rho/net/NetRequest.java +0 -692
  1244. data/platform/shared/rubyJVM/src/com/rho/net/RhoConnection.java +0 -847
  1245. data/platform/shared/rubyJVM/src/com/rho/rjson/RJSONTokener.java +0 -247
  1246. data/platform/shared/rubyJVM/src/com/rho/sync/JSONArrayIterator.java +0 -62
  1247. data/platform/shared/rubyJVM/src/com/rho/sync/JSONEntry.java +0 -75
  1248. data/platform/shared/rubyJVM/src/com/rho/sync/JSONStructIterator.java +0 -74
  1249. data/platform/shared/rubyJVM/src/com/rho/sync/SyncEngine.java +0 -846
  1250. data/platform/shared/rubyJVM/src/com/rho/sync/SyncNotify.java +0 -664
  1251. data/platform/shared/rubyJVM/src/com/rho/sync/SyncSource.java +0 -954
  1252. data/platform/shared/rubyJVM/src/com/rho/sync/SyncThread.java +0 -822
  1253. data/platform/shared/rubyJVM/src/com/xruby/GeneratedMethods/RubyString_Methods.java +0 -264
  1254. data/platform/shared/rubyJVM/src/com/xruby/GeneratedMethods/RubySymbol_Methods.java +0 -37
  1255. data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyDir.java +0 -307
  1256. data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyFile.java +0 -312
  1257. data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyIO.java +0 -395
  1258. data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyIOFileExecutor.java +0 -218
  1259. data/platform/shared/rubyJVM/src/com/xruby/runtime/builtin/RubyString.java +0 -1462
  1260. data/platform/shared/rubyJVM/src/com/xruby/runtime/lang/RhoSupport.java +0 -364
  1261. data/platform/shared/rubyJVM/src/com/xruby/runtime/lang/RubyConstant.java +0 -26
  1262. data/platform/shared/rubyJVM/src/com/xruby/runtime/lang/RubyRuntime.java +0 -482
  1263. data/platform/shared/rubyJVM/src/com/xruby/runtime/lang/RubySymbol.java +0 -303
  1264. data/platform/shared/rubyJVM/src/j2me/io/File.java +0 -222
  1265. data/platform/shared/rubyJVM/src/j2me/util/StringParser.java +0 -236
  1266. data/platform/shared/rubyJVM/src/javolution/context/package.html +0 -123
  1267. data/platform/shared/rubyJVM/src/javolution/io/package.html +0 -5
  1268. data/platform/shared/rubyJVM/src/javolution/lang/package.html +0 -4
  1269. data/platform/shared/rubyJVM/src/javolution/text/package.html +0 -56
  1270. data/platform/shared/rubyJVM/src/javolution/util/FastTable.java +0 -975
  1271. data/platform/shared/rubyJVM/src/javolution/util/package.html +0 -244
  1272. data/platform/shared/rubyJVM/src/org/json/me/JSONArray.java +0 -871
  1273. data/platform/shared/rubyJVM/src/org/json/me/JSONException.java +0 -27
  1274. data/platform/shared/rubyJVM/src/org/json/me/JSONObject.java +0 -1290
  1275. data/platform/shared/rubyJVM/src/org/json/me/JSONString.java +0 -18
  1276. data/platform/shared/rubyJVM/src/org/json/me/JSONTokener.java +0 -460
  1277. data/platform/shared/rubyext/RhoRuby.cpp +0 -31
  1278. data/platform/shared/rubyext/RhoRuby.h +0 -32
  1279. data/platform/wm/rhodes/rho/common/SystemInfoImpl.h +0 -21
  1280. data/res/generators/templates/spec/app/fileutils.rb +0 -1592
  1281. data/res/generators/templates/spec/app/mspec/guards/endian.rb +0 -44
  1282. data/spec/framework_spec/app/Account/account.rb +0 -7
  1283. data/spec/framework_spec/app/BulkTest/bulk_test.rb +0 -9
  1284. data/spec/framework_spec/app/Customer/customer.rb +0 -6
  1285. data/spec/framework_spec/app/Product/controller.rb +0 -62
  1286. data/spec/framework_spec/app/Product/product.rb +0 -9
  1287. data/spec/framework_spec/app/fileutils.rb +0 -1592
  1288. data/spec/framework_spec/app/mspec/expectations/expectations.rb +0 -17
  1289. data/spec/framework_spec/app/mspec/expectations/should.rb +0 -25
  1290. data/spec/framework_spec/app/mspec/expectations.rb +0 -2
  1291. data/spec/framework_spec/app/mspec/fileutils.rb +0 -1589
  1292. data/spec/framework_spec/app/mspec/guards/background.rb +0 -21
  1293. data/spec/framework_spec/app/mspec/guards/bug.rb +0 -24
  1294. data/spec/framework_spec/app/mspec/guards/compliance.rb +0 -37
  1295. data/spec/framework_spec/app/mspec/guards/conflict.rb +0 -18
  1296. data/spec/framework_spec/app/mspec/guards/extensions.rb +0 -20
  1297. data/spec/framework_spec/app/mspec/guards/guard.rb +0 -165
  1298. data/spec/framework_spec/app/mspec/guards/noncompliance.rb +0 -20
  1299. data/spec/framework_spec/app/mspec/guards/platform.rb +0 -43
  1300. data/spec/framework_spec/app/mspec/guards/quarantine.rb +0 -17
  1301. data/spec/framework_spec/app/mspec/guards/runner.rb +0 -34
  1302. data/spec/framework_spec/app/mspec/guards/superuser.rb +0 -17
  1303. data/spec/framework_spec/app/mspec/guards/support.rb +0 -20
  1304. data/spec/framework_spec/app/mspec/guards/tty.rb +0 -20
  1305. data/spec/framework_spec/app/mspec/guards/version.rb +0 -38
  1306. data/spec/framework_spec/app/mspec/guards.rb +0 -16
  1307. data/spec/framework_spec/app/mspec/helpers/argv.rb +0 -43
  1308. data/spec/framework_spec/app/mspec/helpers/bignum.rb +0 -5
  1309. data/spec/framework_spec/app/mspec/helpers/const_lookup.rb +0 -9
  1310. data/spec/framework_spec/app/mspec/helpers/ducktype.rb +0 -33
  1311. data/spec/framework_spec/app/mspec/helpers/enumerator_class.rb +0 -9
  1312. data/spec/framework_spec/app/mspec/helpers/environment.rb +0 -32
  1313. data/spec/framework_spec/app/mspec/helpers/fixture.rb +0 -20
  1314. data/spec/framework_spec/app/mspec/helpers/flunk.rb +0 -5
  1315. data/spec/framework_spec/app/mspec/helpers/fs.rb +0 -58
  1316. data/spec/framework_spec/app/mspec/helpers/hash.rb +0 -27
  1317. data/spec/framework_spec/app/mspec/helpers/infinity.rb +0 -5
  1318. data/spec/framework_spec/app/mspec/helpers/io.rb +0 -17
  1319. data/spec/framework_spec/app/mspec/helpers/language_version.rb +0 -20
  1320. data/spec/framework_spec/app/mspec/helpers/metaclass.rb +0 -7
  1321. data/spec/framework_spec/app/mspec/helpers/mock_to_path.rb +0 -7
  1322. data/spec/framework_spec/app/mspec/helpers/nan.rb +0 -5
  1323. data/spec/framework_spec/app/mspec/helpers/ruby_exe.rb +0 -123
  1324. data/spec/framework_spec/app/mspec/helpers/scratch.rb +0 -17
  1325. data/spec/framework_spec/app/mspec/helpers/tmp.rb +0 -32
  1326. data/spec/framework_spec/app/mspec/helpers.rb +0 -19
  1327. data/spec/framework_spec/app/mspec/matchers/base.rb +0 -95
  1328. data/spec/framework_spec/app/mspec/matchers/be_an_instance_of.rb +0 -26
  1329. data/spec/framework_spec/app/mspec/matchers/be_ancestor_of.rb +0 -24
  1330. data/spec/framework_spec/app/mspec/matchers/be_close.rb +0 -27
  1331. data/spec/framework_spec/app/mspec/matchers/be_empty.rb +0 -20
  1332. data/spec/framework_spec/app/mspec/matchers/be_false.rb +0 -20
  1333. data/spec/framework_spec/app/mspec/matchers/be_kind_of.rb +0 -24
  1334. data/spec/framework_spec/app/mspec/matchers/be_nil.rb +0 -20
  1335. data/spec/framework_spec/app/mspec/matchers/be_true.rb +0 -20
  1336. data/spec/framework_spec/app/mspec/matchers/complain.rb +0 -56
  1337. data/spec/framework_spec/app/mspec/matchers/eql.rb +0 -26
  1338. data/spec/framework_spec/app/mspec/matchers/equal.rb +0 -26
  1339. data/spec/framework_spec/app/mspec/matchers/equal_element.rb +0 -78
  1340. data/spec/framework_spec/app/mspec/matchers/equal_utf16.rb +0 -34
  1341. data/spec/framework_spec/app/mspec/matchers/have_constant.rb +0 -30
  1342. data/spec/framework_spec/app/mspec/matchers/have_instance_method.rb +0 -24
  1343. data/spec/framework_spec/app/mspec/matchers/have_method.rb +0 -24
  1344. data/spec/framework_spec/app/mspec/matchers/have_private_instance_method.rb +0 -24
  1345. data/spec/framework_spec/app/mspec/matchers/have_public_instance_method.rb +0 -24
  1346. data/spec/framework_spec/app/mspec/matchers/include.rb +0 -32
  1347. data/spec/framework_spec/app/mspec/matchers/match_yaml.rb +0 -47
  1348. data/spec/framework_spec/app/mspec/matchers/method.rb +0 -14
  1349. data/spec/framework_spec/app/mspec/matchers/output.rb +0 -67
  1350. data/spec/framework_spec/app/mspec/matchers/output_to_fd.rb +0 -71
  1351. data/spec/framework_spec/app/mspec/matchers/raise_error.rb +0 -49
  1352. data/spec/framework_spec/app/mspec/matchers/respond_to.rb +0 -24
  1353. data/spec/framework_spec/app/mspec/matchers/stringsymboladapter.rb +0 -8
  1354. data/spec/framework_spec/app/mspec/matchers.rb +0 -25
  1355. data/spec/framework_spec/app/mspec/mocks/mock.rb +0 -159
  1356. data/spec/framework_spec/app/mspec/mocks/object.rb +0 -24
  1357. data/spec/framework_spec/app/mspec/mocks/proxy.rb +0 -151
  1358. data/spec/framework_spec/app/mspec/mocks.rb +0 -3
  1359. data/spec/framework_spec/app/mspec/pp.rb +0 -893
  1360. data/spec/framework_spec/app/mspec/runner/actions/debug.rb +0 -17
  1361. data/spec/framework_spec/app/mspec/runner/actions/filter.rb +0 -40
  1362. data/spec/framework_spec/app/mspec/runner/actions/gdb.rb +0 -17
  1363. data/spec/framework_spec/app/mspec/runner/actions/tag.rb +0 -133
  1364. data/spec/framework_spec/app/mspec/runner/actions/taglist.rb +0 -56
  1365. data/spec/framework_spec/app/mspec/runner/actions/tagpurge.rb +0 -56
  1366. data/spec/framework_spec/app/mspec/runner/actions/tally.rb +0 -116
  1367. data/spec/framework_spec/app/mspec/runner/actions/timer.rb +0 -22
  1368. data/spec/framework_spec/app/mspec/runner/actions.rb +0 -8
  1369. data/spec/framework_spec/app/mspec/runner/context.rb +0 -188
  1370. data/spec/framework_spec/app/mspec/runner/example.rb +0 -34
  1371. data/spec/framework_spec/app/mspec/runner/exception.rb +0 -43
  1372. data/spec/framework_spec/app/mspec/runner/filters/match.rb +0 -22
  1373. data/spec/framework_spec/app/mspec/runner/filters/profile.rb +0 -54
  1374. data/spec/framework_spec/app/mspec/runner/filters/regexp.rb +0 -7
  1375. data/spec/framework_spec/app/mspec/runner/filters/tag.rb +0 -29
  1376. data/spec/framework_spec/app/mspec/runner/filters.rb +0 -4
  1377. data/spec/framework_spec/app/mspec/runner/formatters/describe.rb +0 -24
  1378. data/spec/framework_spec/app/mspec/runner/formatters/dotted.rb +0 -98
  1379. data/spec/framework_spec/app/mspec/runner/formatters/file.rb +0 -19
  1380. data/spec/framework_spec/app/mspec/runner/formatters/html.rb +0 -81
  1381. data/spec/framework_spec/app/mspec/runner/formatters/method.rb +0 -93
  1382. data/spec/framework_spec/app/mspec/runner/formatters/specdoc.rb +0 -41
  1383. data/spec/framework_spec/app/mspec/runner/formatters/spinner.rb +0 -99
  1384. data/spec/framework_spec/app/mspec/runner/formatters/summary.rb +0 -11
  1385. data/spec/framework_spec/app/mspec/runner/formatters/unit.rb +0 -21
  1386. data/spec/framework_spec/app/mspec/runner/formatters/yaml.rb +0 -44
  1387. data/spec/framework_spec/app/mspec/runner/formatters.rb +0 -10
  1388. data/spec/framework_spec/app/mspec/runner/mspec.rb +0 -361
  1389. data/spec/framework_spec/app/mspec/runner/object.rb +0 -24
  1390. data/spec/framework_spec/app/mspec/runner/shared.rb +0 -12
  1391. data/spec/framework_spec/app/mspec/runner/tag.rb +0 -32
  1392. data/spec/framework_spec/app/mspec/runner.rb +0 -15
  1393. data/spec/framework_spec/app/mspec/utils/name_map.rb +0 -129
  1394. data/spec/framework_spec/app/mspec/utils/options.rb +0 -441
  1395. data/spec/framework_spec/app/mspec/utils/ruby_name.rb +0 -8
  1396. data/spec/framework_spec/app/mspec/utils/script.rb +0 -220
  1397. data/spec/framework_spec/app/mspec/utils/version.rb +0 -53
  1398. data/spec/framework_spec/app/mspec/version.rb +0 -5
  1399. data/spec/framework_spec/app/spec/blobsync_spec.rb +0 -155
  1400. data/spec/framework_spec/app/spec/bulksync_spec.rb +0 -65
  1401. data/spec/framework_spec/app/spec/fixtures/object_values.txt +0 -90
  1402. data/spec/framework_spec/app/spec/pagination/fixtures/object_values.txt +0 -91
  1403. data/spec/framework_spec/app/spec/rho_controller_spec.rb +0 -143
  1404. data/spec/framework_spec/app/spec/rho_spec.rb +0 -69
  1405. data/spec/framework_spec/app/spec/rhoerror_spec.rb +0 -40
  1406. data/spec/framework_spec/app/spec/rhom_db_adapter_spec.rb +0 -27
  1407. data/spec/framework_spec/app/spec/rhom_object_spec.rb +0 -660
  1408. data/spec/framework_spec/app/spec/rhom_spec.rb +0 -60
  1409. data/spec/framework_spec/app/spec/rhoruby_spec.rb +0 -31
  1410. data/spec/framework_spec/app/spec/syncengine_spec.rb +0 -190
  1411. data/spec/phone_spec/app/Spec/controller.rb +0 -69
  1412. data/spec/phone_spec/app/Spec/index.erb +0 -17
  1413. data/spec/phone_spec/app/Spec/spec_runner.rb +0 -22
@@ -0,0 +1,860 @@
1
+ #include "SyncClient.h"
2
+
3
+ //#include "stdafx.h"
4
+
5
+ #include "common/RhodesAppBase.h"
6
+ #include "sync/SyncThread.h"
7
+ #include "common/RhoFile.h"
8
+ #include "common/Tokenizer.h"
9
+ #include "common/RhoConf.h"
10
+ #include "common/RhoTime.h"
11
+ #include "common/RhoAppAdapter.h"
12
+ #include "net/URI.h"
13
+
14
+ using namespace rho;
15
+ using namespace rho::common;
16
+ using namespace rho::sync;
17
+ const char* getSyncTypeName( RHOM_SYNC_TYPE sync_type )
18
+ {
19
+ switch( sync_type)
20
+ {
21
+ case RST_INCREMENTAL:
22
+ return "incremental";
23
+ case RST_BULK_ONLY:
24
+ return "bulk_only";
25
+ }
26
+
27
+ return "none";
28
+ }
29
+
30
+ void parseSyncNotify(const char* msg, RHO_SYNC_NOTIFY* pNotify);
31
+ String rhom_generate_id();
32
+
33
+ extern "C"
34
+ {
35
+
36
+ void rho_syncclient_initmodel(RHOM_MODEL* model)
37
+ {
38
+ memset( model, 0, sizeof(RHOM_MODEL) );
39
+ model->type = RMT_PROPERTY_BAG;
40
+ model->sync_type = RST_NONE;
41
+ model->sync_priority = 1000;
42
+ model->partition = "user";
43
+ }
44
+
45
+ void rho_syncclient_free_syncnotify(RHO_SYNC_NOTIFY* pNotify)
46
+ {
47
+ if (!pNotify)
48
+ return;
49
+
50
+ if ( pNotify->source_name != null )
51
+ free(pNotify->source_name);
52
+
53
+ if ( pNotify->status != null )
54
+ free(pNotify->status);
55
+
56
+ if ( pNotify->error_message != null )
57
+ free(pNotify->error_message);
58
+
59
+ if ( pNotify->callback_params != null )
60
+ free(pNotify->callback_params);
61
+
62
+ memset( pNotify, 0, sizeof(RHO_SYNC_NOTIFY) );
63
+ }
64
+
65
+ void rho_syncclient_processmodels(RHOM_MODEL* pModels, int nModels)
66
+ {
67
+ db::CDBAdapter& oUserDB = db::CDBAdapter::getUserDB();
68
+ int nStartModelID = 1;
69
+ {
70
+ DBResult( res, oUserDB.executeSQL("SELECT MAX(source_id) AS maxid FROM sources"));
71
+ if ( !res.isEnd() )
72
+ nStartModelID = res.getIntByIdx(0)+2;
73
+ }
74
+
75
+ for ( int i = 0; i < nModels; i++ )
76
+ {
77
+ RHOM_MODEL& model = pModels[i];
78
+ DBResult( res, oUserDB.executeSQL("SELECT sync_priority,source_id,partition, sync_type, schema_version, associations, blob_attribs FROM sources WHERE name=?",
79
+ model.name) );
80
+
81
+ if ( !res.isEnd() )
82
+ {
83
+ oUserDB.executeSQL("UPDATE sources SET sync_priority=?, sync_type=?, partition=?, schema_version=?, associations=?, blob_attribs=? WHERE name=?",
84
+ model.sync_priority, getSyncTypeName(model.sync_type), model.partition, "", "", "", model.name );
85
+
86
+ }else //new model
87
+ {
88
+ oUserDB.executeSQL("INSERT INTO sources (source_id,name,sync_priority, sync_type, partition, schema_version, associations, blob_attribs) values (?,?,?,?,?,?,?,?) ",
89
+ nStartModelID, model.name, model.sync_priority, getSyncTypeName(model.sync_type), model.partition, "", "", "" );
90
+
91
+ nStartModelID++;
92
+ }
93
+ }
94
+ }
95
+
96
+ void rho_syncclient_init(RHOM_MODEL* pModels, int nModels)
97
+ {
98
+ rho_logconf_Init(rho_native_rhopath());
99
+ CRhodesAppBase::Create( rho_native_rhopath() );
100
+
101
+ String strDbPath = rho_native_rhopath();
102
+
103
+ //create db and db-files folder
104
+ CRhoFile::createFolder( (strDbPath + "db/db-files").c_str());
105
+ CRhoFile::createFolder( (strDbPath + "apps").c_str());
106
+
107
+ for( int i = 0; i < nModels; i++ )
108
+ {
109
+ RHOM_MODEL& model = pModels[i];
110
+
111
+ String strDbPartition = strDbPath + "db/syncdb";
112
+ strDbPartition += model.partition;
113
+ strDbPartition += ".sqlite";
114
+
115
+ void* pDB = 0;
116
+ rho_db_open( strDbPartition.c_str(), model.partition, &pDB);
117
+ }
118
+
119
+ //process models
120
+ rho_syncclient_processmodels(pModels, nModels);
121
+
122
+ rho_db_init_attr_manager();
123
+
124
+ LOG(INFO) + "Starting sync engine...";
125
+ CSyncThread::Create(common::rho_impl_createClassFactory());
126
+
127
+ }
128
+
129
+ void rho_syncclient_database_full_reset_and_logout()
130
+ {
131
+ rho_sync_logout();
132
+
133
+ db::CDBAdapter& oUserDB = db::CDBAdapter::getUserDB();
134
+ oUserDB.executeSQL("UPDATE client_info SET reset=1");
135
+
136
+ if ( rho_conf_is_property_exists("bulksync_state") )
137
+ rho_conf_setInt("bulksync_state", 0 );
138
+
139
+ oUserDB.executeSQL("UPDATE sources SET token=0");
140
+
141
+ Vector<String> arExclude;
142
+ arExclude.addElement("sources");
143
+ arExclude.addElement("client_info");
144
+ db::CDBAdapter::destroy_tables_allpartitions(Vector<String>(), arExclude);
145
+
146
+ //TODO: scema_sources
147
+ //hash_migrate = {}
148
+ //::Rho::RHO.init_schema_sources(hash_migrate)
149
+ }
150
+
151
+ void rho_syncclient_destroy()
152
+ {
153
+ CSyncThread::Destroy();
154
+ }
155
+
156
+ bool rhom_method_name_isreserved(const String& strName)
157
+ {
158
+ static Hashtable<String,int> reserved_names;
159
+ if ( reserved_names.size() == 0 )
160
+ {
161
+ reserved_names.put("object",1);
162
+ reserved_names.put("source_id",1);
163
+ reserved_names.put("update_type",1);
164
+ reserved_names.put("attrib_type",1);
165
+ reserved_names.put("set_notification",1);
166
+ reserved_names.put("clear_notification",1);
167
+ }
168
+
169
+ return reserved_names.get(strName) != 0;
170
+ }
171
+
172
+ void db_insert_into_table( db::CDBAdapter& db, const String& table, Hashtable<String, String>& hashObject, const char* excludes = null)
173
+ {
174
+ String cols = "";
175
+ String quests = "";
176
+ Vector<String> vals;
177
+
178
+ for ( Hashtable<String,String>::iterator it = hashObject.begin(); it != hashObject.end(); ++it )
179
+ {
180
+ String key = it->first;
181
+ String val = it->second;
182
+
183
+ if ( excludes && key.compare(excludes) == 0 )
184
+ continue;
185
+
186
+ if (cols.length() > 0)
187
+ {
188
+ cols += ',';
189
+ quests += ',';
190
+ }
191
+
192
+ cols += key;
193
+ quests += '?';
194
+ vals.addElement( val );
195
+ }
196
+
197
+ String query = "insert into " + table + "(" + cols + ") values (" + quests + ")";
198
+
199
+ db.executeSQLEx(query.c_str(), vals);
200
+ }
201
+
202
+ unsigned long rhom_make_object(rho::db::CDBResult& res1, int nSrcID, bool isSchemaSrc)
203
+ {
204
+ unsigned long item = 0;
205
+ if ( res1.isEnd() )
206
+ return item;
207
+
208
+ item = rho_syncclient_hash_create();
209
+ rho_syncclient_hash_put(item, "source_id", convertToStringA(nSrcID).c_str() );
210
+
211
+ if (!isSchemaSrc)
212
+ {
213
+ for ( ; !res1.isEnd(); res1.next() )
214
+ rho_syncclient_hash_put(item, res1.getStringByIdx(0).c_str(), res1.getStringByIdx(1).c_str() );
215
+ }else
216
+ {
217
+ for (int i = 0; i < res1.getColCount(); i++ )
218
+ rho_syncclient_hash_put(item, res1.getColName(i).c_str(), res1.getStringByIdx(i).c_str() );
219
+ }
220
+
221
+ return item;
222
+ }
223
+
224
+ unsigned long rhom_load_item_by_object(db::CDBAdapter& db, const String& src_name, int nSrcID, const String& szObject, bool isSchemaSrc )
225
+ {
226
+ unsigned long item = 0;
227
+
228
+ if (!isSchemaSrc)
229
+ {
230
+ String sql = "SELECT attrib,value FROM object_values WHERE object=? AND source_id=?";
231
+ DBResult( res1, db.executeSQL(sql.c_str(), szObject, nSrcID) );
232
+ item = rhom_make_object(res1, nSrcID, isSchemaSrc);
233
+ if (item)
234
+ rho_syncclient_hash_put(item, "object", szObject.c_str() );
235
+ }else
236
+ {
237
+ String sql = "SELECT * FROM " + src_name + " WHERE object=? OFFSET 0 LIMIT 1";
238
+ DBResult( res1, db.executeSQL(sql.c_str(), szObject) );
239
+ item = rhom_make_object(res1, nSrcID, isSchemaSrc);
240
+ }
241
+
242
+ return item;
243
+ }
244
+
245
+ unsigned long rho_syncclient_find(const char* szModel,const char* szObject )
246
+ {
247
+ String src_name = szModel;
248
+
249
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT source_id, partition, schema, sync_type from sources WHERE name=?", src_name) );
250
+ if ( res.isEnd())
251
+ {
252
+ //TODO: report error - unknown source
253
+ return 0;
254
+ }
255
+
256
+ int nSrcID = res.getIntByIdx(0);
257
+ String db_partition = res.getStringByIdx(1);
258
+ bool isSchemaSrc = res.getStringByIdx(2).length() > 0;
259
+ //String tableName = isSchemaSrc ? src_name : "object_values";
260
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
261
+
262
+ return rhom_load_item_by_object( db, src_name, nSrcID, szObject, isSchemaSrc);
263
+ }
264
+
265
+ unsigned long rhom_find(const char* szModel, unsigned long hash, int nCount )
266
+ {
267
+ String src_name = szModel;
268
+
269
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT source_id, partition, schema, sync_type from sources WHERE name=?", src_name) );
270
+ if ( res.isEnd())
271
+ {
272
+ //TODO: report error - unknown source
273
+ return 0;
274
+ }
275
+
276
+ int nSrcID = res.getIntByIdx(0);
277
+ String strSrcID = convertToStringA(nSrcID);
278
+ String db_partition = res.getStringByIdx(1);
279
+ bool isSchemaSrc = res.getStringByIdx(2).length() > 0;
280
+ //String tableName = isSchemaSrc ? src_name : "object_values";
281
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
282
+
283
+ Hashtable<String, String>& hashCond = *((Hashtable<String, String>*)hash);
284
+ String sql = "";
285
+ Vector<String> arValues;
286
+
287
+ if (!isSchemaSrc)
288
+ {
289
+ if (hashCond.size() == 0) {
290
+ sql = "SELECT distinct(object) FROM object_values WHERE source_id=?";
291
+ arValues.addElement(strSrcID);
292
+ }else
293
+ {
294
+ for ( Hashtable<String,String>::iterator it = hashCond.begin(); it != hashCond.end(); ++it )
295
+ {
296
+ if ( sql.length() > 0 )
297
+ sql += "\nINTERSECT\n";
298
+
299
+ sql += "SELECT object FROM object_values WHERE attrib=? AND source_id=? AND value=?";
300
+ arValues.addElement(it->first);
301
+ arValues.addElement(strSrcID);
302
+ arValues.addElement(it->second);
303
+ }
304
+ }
305
+ }else
306
+ {
307
+ sql = "SELECT object FROM " + src_name;
308
+ if (hashCond.size() != 0)
309
+ {
310
+ sql += " WHERE ";
311
+ for ( Hashtable<String,String>::iterator it = hashCond.begin(); it != hashCond.end(); ++it )
312
+ {
313
+ if (it != hashCond.begin())
314
+ sql += " AND ";
315
+ sql += it->first + "=?" ;
316
+ arValues.addElement(it->second);
317
+ }
318
+ }
319
+ }
320
+
321
+ DBResult( res1, db.executeSQLEx(sql.c_str(), arValues ) );
322
+
323
+ if ( nCount == 1 )
324
+ {
325
+ return isSchemaSrc ? rhom_make_object(res1, nSrcID, isSchemaSrc) :
326
+ rhom_load_item_by_object(db, src_name, nSrcID, res1.getStringByIdx(0), isSchemaSrc);
327
+ }
328
+
329
+ unsigned long items = rho_syncclient_strhasharray_create();
330
+ for ( ; !res1.isEnd(); res1.next() )
331
+ {
332
+ rho_syncclient_strhasharray_add(items,
333
+ isSchemaSrc ? rhom_make_object(res1, nSrcID, isSchemaSrc) :
334
+ rhom_load_item_by_object(db, src_name, nSrcID, res1.getStringByIdx(0), isSchemaSrc) );
335
+ }
336
+
337
+ return items;
338
+ }
339
+
340
+ unsigned long rho_syncclient_find_all(const char* szModel, unsigned long hash )
341
+ {
342
+ return rhom_find( szModel, hash, -1 );
343
+ }
344
+
345
+ unsigned long rho_syncclient_find_first(const char* szModel, unsigned long hash )
346
+ {
347
+ return rhom_find( szModel, hash, 1 );
348
+ }
349
+
350
+ void rho_syncclient_start_bulkupdate(const char* szModel)
351
+ {
352
+ String src_name = szModel;
353
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT partition from sources WHERE name=?", src_name) );
354
+ if ( res.isEnd())
355
+ {
356
+ //TODO: report error - unknown source
357
+ return;
358
+ }
359
+ String db_partition = res.getStringByIdx(0);
360
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
361
+
362
+ db.startTransaction();
363
+ }
364
+
365
+ void rho_syncclient_stop_bulkupdate(const char* szModel)
366
+ {
367
+ String src_name = szModel;
368
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT partition from sources WHERE name=?", src_name) );
369
+ if ( res.isEnd())
370
+ {
371
+ //TODO: report error - unknown source
372
+ return;
373
+ }
374
+ String db_partition = res.getStringByIdx(0);
375
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
376
+
377
+ db.endTransaction();
378
+ }
379
+
380
+ void rho_syncclient_itemdestroy( const char* szModel, unsigned long hash )
381
+ {
382
+ Hashtable<String, String>& hashObject = *((Hashtable<String, String>*)hash);
383
+ String src_name = szModel;
384
+
385
+ String obj = hashObject.get("object");
386
+ String update_type="delete";
387
+
388
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT source_id, partition, schema, sync_type from sources WHERE name=?", src_name) );
389
+ if ( res.isEnd())
390
+ {
391
+ //TODO: report error - unknown source
392
+ return;
393
+ }
394
+
395
+ int nSrcID = res.getIntByIdx(0);
396
+ String db_partition = res.getStringByIdx(1);
397
+ bool isSchemaSrc = res.getStringByIdx(2).length() > 0;
398
+ bool isSyncSrc = res.getStringByIdx(3).compare("none") != 0;
399
+ String tableName = isSchemaSrc ? src_name : "object_values";
400
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
401
+
402
+ db.startTransaction();
403
+
404
+ //save list of attrs
405
+ unsigned long item = 0;
406
+
407
+ if ( isSchemaSrc )
408
+ {
409
+ DBResult( attrsList, db.executeSQL( ("SELECT * FROM " + tableName + " WHERE object=?").c_str(), obj) );
410
+ if ( !attrsList.isEnd() )
411
+ item = rhom_make_object(attrsList,nSrcID,isSchemaSrc);
412
+ }else
413
+ {
414
+ DBResult( attrsList, db.executeSQL( ("SELECT attrib, value FROM " + tableName + " WHERE object=? and source_id=?").c_str(), obj, nSrcID) );
415
+ if ( !attrsList.isEnd() )
416
+ item = rhom_make_object(attrsList,nSrcID,isSchemaSrc);
417
+ }
418
+
419
+ //first delete the record from viewable list
420
+ db.executeSQL( ("DELETE FROM " + tableName + " WHERE object=?").c_str(), obj );
421
+
422
+ if ( isSyncSrc )
423
+ {
424
+ DBResult( resCreateType, db.executeSQL("SELECT update_type FROM changed_values WHERE object=? and update_type=? and sent=?",
425
+ obj, "create", 0) );
426
+
427
+ db.executeSQL("DELETE FROM changed_values WHERE object=? and sent=?", obj, 0);
428
+
429
+ if ( resCreateType.isEnd() && item != 0 )
430
+ {
431
+ Hashtable<String,String>& hashItem = *((Hashtable<String,String>*)item);
432
+ for ( Hashtable<String,String>::iterator it = hashItem.begin(); it != hashItem.end(); ++it )
433
+ {
434
+ String key = it->first;
435
+ String val = it->second;
436
+
437
+ if ( rhom_method_name_isreserved(key) )
438
+ continue;
439
+
440
+ Hashtable<String,String> fields;
441
+ fields.put("source_id", convertToStringA(nSrcID));
442
+ fields.put("object", obj);
443
+ fields.put("attrib", key);
444
+ fields.put("value", val);
445
+ fields.put("update_type", update_type);
446
+
447
+ db_insert_into_table(db, "changed_values", fields );
448
+ }
449
+
450
+ rho_syncclient_hash_delete(item);
451
+ }
452
+ }
453
+
454
+ db.endTransaction();
455
+ }
456
+
457
+ void rho_syncclient_save( const char* szModel, unsigned long hash )
458
+ {
459
+ Hashtable<String, String>& hashObject = *((Hashtable<String, String>*)hash);
460
+ String src_name = szModel;
461
+
462
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT source_id, partition, schema, sync_type from sources WHERE name=?", src_name) );
463
+ if ( res.isEnd())
464
+ {
465
+ //TODO: report error - unknown source
466
+ return;
467
+ }
468
+
469
+ int nSrcID = res.getIntByIdx(0);
470
+ String obj = hashObject.get("object");
471
+
472
+ String db_partition = res.getStringByIdx(1);
473
+ bool isSchemaSrc = res.getStringByIdx(2).length() > 0;
474
+ bool isSyncSrc = res.getStringByIdx(3).compare("none") != 0;
475
+ String tableName = isSchemaSrc ? src_name : "object_values";
476
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
477
+
478
+ db.startTransaction();
479
+
480
+ String update_type = "";
481
+ String sql;
482
+ Vector<String> arValues;
483
+ if (isSchemaSrc)
484
+ {
485
+ sql = "SELECT object FROM " + tableName + " WHERE object=? LIMIT 1 OFFSET 0";
486
+ arValues.addElement(obj);
487
+ }
488
+ else
489
+ {
490
+ sql = "SELECT object FROM " + tableName + " WHERE object=? AND source_id=? LIMIT 1 OFFSET 0";
491
+ arValues.addElement(obj);
492
+ arValues.addElement(convertToStringA(nSrcID));
493
+ }
494
+ DBResult( res1, db.executeSQLEx(sql.c_str(), arValues ) );
495
+ if (!res1.isEnd())
496
+ {
497
+ if (isSyncSrc)
498
+ {
499
+ DBResult( resUpdateType, db.executeSQL( "SELECT update_type FROM changed_values WHERE object=? and source_id=? and sent=?",
500
+ obj, nSrcID, 0 ) );
501
+ if (!resUpdateType.isEnd())
502
+ update_type = resUpdateType.getStringByIdx(0);
503
+ else
504
+ update_type = "update";
505
+ }else
506
+ update_type = "update";
507
+ }
508
+ else
509
+ {
510
+ rho_syncclient_create_object(szModel, hash);
511
+ }
512
+
513
+ if (!res.isEnd())
514
+ {
515
+ unsigned long item = rhom_load_item_by_object( db, src_name, nSrcID, obj, isSchemaSrc);
516
+ Hashtable<String, String>& hashItem = *((Hashtable<String, String>*)item);
517
+
518
+ for ( Hashtable<String,String>::iterator it = hashObject.begin(); it != hashObject.end(); ++it )
519
+ {
520
+ String key = it->first;
521
+ String val = it->second;
522
+
523
+ if ( rhom_method_name_isreserved(key) )
524
+ continue;
525
+
526
+ // add rows excluding object, source_id and update_type
527
+ Hashtable<String,String> fields;
528
+ fields.put("source_id", convertToStringA(nSrcID));
529
+ fields.put("object", obj);
530
+ fields.put("attrib", key);
531
+ fields.put("value", val);
532
+ fields.put("update_type", update_type);
533
+ if ( db::CDBAdapter::getDB(db_partition.c_str()).getAttrMgr().isBlobAttr(nSrcID, key.c_str()) )
534
+ fields.put( "attrib_type", "blob.file");
535
+
536
+ if ( hashItem.containsKey(key) )
537
+ {
538
+ bool isModified = hashItem.get(key) != val;
539
+ if (isModified)
540
+ {
541
+ if (isSyncSrc)
542
+ {
543
+ DBResult( resUpdateType, db.executeSQL( "SELECT update_type FROM changed_values WHERE object=? and attrib=? and source_id=? and sent=?",
544
+ obj, key, nSrcID, 0 ) );
545
+ if (!resUpdateType.isEnd())
546
+ {
547
+ fields.put("update_type", resUpdateType.getStringByIdx(0) );
548
+ db.executeSQL( "DELETE FROM changed_values WHERE object=? and attrib=? and source_id=? and sent=?",
549
+ obj, key, nSrcID, 0 );
550
+ }
551
+
552
+ db_insert_into_table(db, "changed_values", fields);
553
+ }
554
+
555
+ if ( isSchemaSrc )
556
+ db.executeSQL( (String("UPDATE ") + tableName + " SET " + key + "=? WHERE object=?").c_str(), val, obj );
557
+ else
558
+ db.executeSQL( "UPDATE object_values SET value=? WHERE object=? and attrib=? and source_id=?", val, obj, key, nSrcID );
559
+ }
560
+
561
+ }else
562
+ {
563
+ if (isSyncSrc)
564
+ db_insert_into_table(db, "changed_values", fields);
565
+
566
+ fields.remove("update_type");
567
+ fields.remove("attrib_type");
568
+
569
+ if (isSchemaSrc)
570
+ db.executeSQL( (String("UPDATE ") + tableName + " SET " + key + "=? WHERE object=?").c_str(), val, obj );
571
+ else
572
+ db_insert_into_table(db, tableName, fields);
573
+ }
574
+ }
575
+ }
576
+
577
+ db.endTransaction();
578
+ }
579
+
580
+ void rho_syncclient_create_object(const char* szModel, unsigned long hash)
581
+ {
582
+ Hashtable<String, String>& hashObject = *((Hashtable<String, String>*)hash);
583
+ String src_name = szModel;
584
+
585
+ DBResult( res, db::CDBAdapter::getUserDB().executeSQL("SELECT source_id, partition, schema, sync_type from sources WHERE name=?", src_name) );
586
+ if ( res.isEnd())
587
+ {
588
+ //TODO: report error - unknown source
589
+ return;
590
+ }
591
+
592
+ String update_type = "create";
593
+ int nSrcID = res.getIntByIdx(0);
594
+ String obj = hashObject.containsKey("object") ? hashObject.get("object") : rhom_generate_id();
595
+
596
+ String db_partition = res.getStringByIdx(1);
597
+ bool isSchemaSrc = res.getStringByIdx(2).length() > 0;
598
+ bool isSyncSrc = res.getStringByIdx(3).compare("none") != 0;
599
+ String tableName = isSchemaSrc ? src_name : "object_values";
600
+ db::CDBAdapter& db = db::CDBAdapter::getDB(db_partition.c_str());
601
+
602
+ hashObject.put("source_id", convertToStringA(nSrcID));
603
+ hashObject.put("object", obj);
604
+
605
+ db.startTransaction();
606
+ if ( isSchemaSrc )
607
+ db_insert_into_table(db, tableName, hashObject, "source_id");
608
+
609
+ if ( isSyncSrc || !isSchemaSrc )
610
+ {
611
+ for ( Hashtable<String,String>::iterator it = hashObject.begin(); it != hashObject.end(); ++it )
612
+ {
613
+ String key = it->first;
614
+ String val = it->second;
615
+
616
+ if ( rhom_method_name_isreserved(key) )
617
+ continue;
618
+
619
+ // add rows excluding object, source_id and update_type
620
+ Hashtable<String,String> fields;
621
+ fields.put("source_id", convertToStringA(nSrcID));
622
+ fields.put("object", obj);
623
+ fields.put("attrib", key);
624
+ fields.put("value", val);
625
+ fields.put("update_type", update_type);
626
+
627
+ if ( db::CDBAdapter::getDB(db_partition.c_str()).getAttrMgr().isBlobAttr(nSrcID, key.c_str()) )
628
+ fields.put( "attrib_type", "blob.file");
629
+
630
+ if ( isSyncSrc )
631
+ db_insert_into_table(db, "changed_values", fields);
632
+
633
+ fields.remove("update_type");
634
+ fields.remove("attrib_type");
635
+
636
+ if ( !isSchemaSrc )
637
+ db_insert_into_table(db, tableName, fields);
638
+ }
639
+ }
640
+
641
+ db.endTransaction();
642
+ }
643
+
644
+ void rho_syncclient_parsenotify(const char* msg, RHO_SYNC_NOTIFY* pNotify)
645
+ {
646
+ CTokenizer oTokenizer( msg, "&" );
647
+ int nLastPos = 0;
648
+ while (oTokenizer.hasMoreTokens())
649
+ {
650
+ nLastPos = oTokenizer.getCurPos();
651
+
652
+ String tok = oTokenizer.nextToken();
653
+ if (tok.length() == 0)
654
+ continue;
655
+
656
+ CTokenizer oValueTok( tok, "=" );
657
+ String name = net::URI::urlDecode(oValueTok.nextToken());
658
+ String value = net::URI::urlDecode(oValueTok.nextToken());
659
+
660
+ if ( name.compare("total_count") == 0)
661
+ convertFromStringA( value.c_str(), pNotify->total_count );
662
+ else if ( name.compare("processed_count") == 0)
663
+ convertFromStringA( value.c_str(), pNotify->processed_count );
664
+ else if ( name.compare("cumulative_count") == 0)
665
+ convertFromStringA( value.c_str(), pNotify->cumulative_count );
666
+ else if ( name.compare("source_id") == 0)
667
+ convertFromStringA( value.c_str(), pNotify->source_id );
668
+ else if ( name.compare("error_code") == 0)
669
+ convertFromStringA( value.c_str(), pNotify->error_code );
670
+ else if ( name.compare("source_name") == 0)
671
+ pNotify->source_name = strdup(value.c_str());
672
+ else if ( name.compare("sync_type") == 0)
673
+ pNotify->sync_type = strdup(value.c_str());
674
+ else if ( name.compare("status") == 0)
675
+ pNotify->status = strdup(value.c_str());
676
+ else if ( name.compare("error_message") == 0)
677
+ pNotify->error_message = strdup(value.c_str());
678
+ else if ( name.compare("rho_callback") != 0)
679
+ break;
680
+
681
+ nLastPos = oTokenizer.getCurPos();
682
+ }
683
+
684
+ if ( nLastPos < (int)strlen(msg) )
685
+ pNotify->callback_params = strdup(msg+nLastPos);
686
+ }
687
+
688
+ unsigned long rho_syncclient_strarray_create()
689
+ {
690
+ return (unsigned long)(new rho::Vector<rho::String>());
691
+ }
692
+
693
+ void rho_syncclient_strarray_add(unsigned long ar, const char* szStr)
694
+ {
695
+ rho::Vector<rho::String>& arThis = *((rho::Vector<rho::String>*)ar);
696
+ arThis.addElement(szStr);
697
+ }
698
+
699
+ void rho_syncclient_strarray_delete(unsigned long ar)
700
+ {
701
+ if (ar)
702
+ delete ((rho::Vector<rho::String>*)ar);
703
+ }
704
+
705
+ unsigned long rho_syncclient_strhasharray_create()
706
+ {
707
+ return (unsigned long)(new VectorPtr<Hashtable<String, String>* >());
708
+ }
709
+
710
+ void rho_syncclient_strhasharray_add(unsigned long ar, unsigned long hash)
711
+ {
712
+ VectorPtr<Hashtable<String, String>* >& arThis = *((VectorPtr<Hashtable<String, String>* >*)ar);
713
+ arThis.addElement( (Hashtable<String, String>*)hash );
714
+ }
715
+
716
+ void rho_syncclient_strhasharray_delete(unsigned long ar)
717
+ {
718
+ if (ar)
719
+ delete ((VectorPtr<Hashtable<String, String>* >*)ar);
720
+ }
721
+
722
+ int rho_syncclient_strhasharray_size(unsigned long ar)
723
+ {
724
+ VectorPtr<Hashtable<String, String>* >& arThis = *((VectorPtr<Hashtable<String, String>* >*)ar);
725
+ return arThis.size();
726
+ }
727
+
728
+ unsigned long rho_syncclient_strhasharray_get(unsigned long ar, int nIndex)
729
+ {
730
+ VectorPtr<Hashtable<String, String>* >& arThis = *((VectorPtr<Hashtable<String, String>* >*)ar);
731
+ return (unsigned long) arThis.elementAt(nIndex);
732
+ }
733
+
734
+ unsigned long rho_syncclient_hash_create()
735
+ {
736
+ return (unsigned long)(new rho::Hashtable<rho::String, rho::String>());
737
+ }
738
+
739
+ void rho_syncclient_hash_put(unsigned long hash, const char* szKey, const char* szValue)
740
+ {
741
+ Hashtable<String, String>& hashThis = *((Hashtable<String, String>*)hash);
742
+ hashThis.put(szKey, szValue);
743
+ }
744
+
745
+ void rho_syncclient_hash_delete(unsigned long hash)
746
+ {
747
+ if (hash)
748
+ delete ((rho::Hashtable<rho::String, rho::String>*)hash);
749
+ }
750
+
751
+ const char* rho_syncclient_hash_get(unsigned long hash, const char* szKey)
752
+ {
753
+ Hashtable<String, String>& hashThis = *((Hashtable<String, String>*)hash);
754
+
755
+ if ( hashThis.containsKey(szKey) )
756
+ return hashThis[szKey].c_str();
757
+
758
+ return null;
759
+ }
760
+
761
+ int rho_syncclient_hash_equal(unsigned long hash1, unsigned long hash2)
762
+ {
763
+ Hashtable<String, String>& hashThis1 = *((Hashtable<String, String>*)hash1);
764
+ Hashtable<String, String>& hashThis2 = *((Hashtable<String, String>*)hash2);
765
+
766
+ return hashThis1 == hashThis2 ? 1 : 0;
767
+ }
768
+
769
+ int rho_syncclient_hash_size(unsigned long hash)
770
+ {
771
+ Hashtable<String, String>& hashThis = *((Hashtable<String, String>*)hash);
772
+
773
+ return hashThis.size();
774
+ }
775
+
776
+ void rho_syncclient_hash_enumerate(unsigned long hash, int (*enum_func)(const char* szKey, const char* szValue, void* pThis), void* pThis )
777
+ {
778
+ Hashtable<String, String>& hashThis = *((Hashtable<String, String>*)hash);
779
+
780
+ for ( Hashtable<String,String>::iterator it = hashThis.begin(); it != hashThis.end(); ++it )
781
+ {
782
+ if ( !(*enum_func)(it->first.c_str(), it->second.c_str(), pThis) )
783
+ return;
784
+ }
785
+ }
786
+
787
+ }
788
+
789
+ String rhom_generate_id()
790
+ {
791
+ static uint64 g_base_temp_id = 0;
792
+ if ( g_base_temp_id == 0 )
793
+ g_base_temp_id = CLocalTime().toULong();
794
+
795
+ g_base_temp_id ++;
796
+ return convertToStringA(g_base_temp_id);
797
+ }
798
+
799
+
800
+ namespace rho {
801
+ const _CRhoAppAdapter& RhoAppAdapter = _CRhoAppAdapter();
802
+
803
+ /*static*/ String _CRhoAppAdapter::getMessageText(const char* szName)
804
+ {
805
+ return String();
806
+ }
807
+
808
+ /*static*/ String _CRhoAppAdapter::getErrorText(int nError)
809
+ {
810
+ return String();
811
+ }
812
+
813
+ /*static*/ int _CRhoAppAdapter::getErrorFromResponse(net::INetResponse& resp)
814
+ {
815
+ if ( !resp.isResponseRecieved())
816
+ return ERR_NETWORK;
817
+
818
+ if ( resp.isUnathorized() )
819
+ return ERR_UNATHORIZED;
820
+
821
+ if ( !resp.isOK() )
822
+ return ERR_REMOTESERVER;
823
+
824
+ return ERR_NONE;
825
+ }
826
+
827
+ /*static*/ void _CRhoAppAdapter::loadServerSources(const String& strSources)
828
+ {
829
+
830
+ }
831
+
832
+ /*static*/ const char* _CRhoAppAdapter::getRhoDBVersion()
833
+ {
834
+ return "1.0";
835
+ }
836
+ }
837
+
838
+ extern "C"
839
+ {
840
+ extern "C" void alert_show_popup(const char* message)
841
+ {
842
+
843
+ }
844
+
845
+ const char* rho_ruby_getMessageText(const char* szName)
846
+ {
847
+ return szName;
848
+ }
849
+
850
+ const char* rho_ruby_getErrorText(int nError)
851
+ {
852
+ return "";
853
+ }
854
+
855
+ void rho_net_impl_network_indicator(int active)
856
+ {
857
+ // [UIApplication sharedApplication].networkActivityIndicatorVisible = active ? YES : NO;
858
+ }
859
+
860
+ }