rhoconnect-client 5.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (270) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +9 -0
  3. data/CREDITS +0 -0
  4. data/LICENSE +9 -0
  5. data/README.md +47 -0
  6. data/ext/rhoconnect-client/RhoConnectClient.rb +190 -0
  7. data/ext/rhoconnect-client/ext/RhoConnectClient.xml +726 -0
  8. data/ext/rhoconnect-client/ext/build +26 -0
  9. data/ext/rhoconnect-client/ext/build.bat +30 -0
  10. data/ext/rhoconnect-client/ext/platform/android/ext_java.files +1 -0
  11. data/ext/rhoconnect-client/ext/platform/android/ext_native.files +14 -0
  12. data/ext/rhoconnect-client/ext/platform/android/src/com/rhoconnectclient/RhoconnectClient.java +1 -0
  13. data/ext/rhoconnect-client/ext/platform/iphone/.gitignore +1 -0
  14. data/ext/rhoconnect-client/ext/platform/iphone/Rakefile +74 -0
  15. data/ext/rhoconnect-client/ext/platform/iphone/RhoconnectClient.xcodeproj/project.pbxproj +390 -0
  16. data/ext/rhoconnect-client/ext/platform/iphone/RhoconnectClient_Prefix.pch +7 -0
  17. data/ext/rhoconnect-client/ext/platform/iphone/impl/readme.txt +7 -0
  18. data/ext/rhoconnect-client/ext/platform/qt/Rakefile +35 -0
  19. data/ext/rhoconnect-client/ext/platform/qt/rhoconnect-client.pro +88 -0
  20. data/ext/rhoconnect-client/ext/platform/wm/Rhoconnect-client.sln +36 -0
  21. data/ext/rhoconnect-client/ext/platform/wm/Rhoconnect-client.vcproj +774 -0
  22. data/ext/rhoconnect-client/ext/platform/wm/Rhoconnect-client.vsprops +15 -0
  23. data/ext/rhoconnect-client/ext/platform/wm/src/rhoconnectclient_wm.cpp +40 -0
  24. data/ext/rhoconnect-client/ext/platform/wm/src/rhoconnectclient_wm.h +2 -0
  25. data/ext/rhoconnect-client/ext/platform/wp8/Rhoconnect-client.props +22 -0
  26. data/ext/rhoconnect-client/ext/platform/wp8/Rhoconnect-client.sln +32 -0
  27. data/ext/rhoconnect-client/ext/platform/wp8/Rhoconnect-client.vcxproj +220 -0
  28. data/ext/rhoconnect-client/ext/platform/wp8/Rhoconnect-client.vcxproj.filters +103 -0
  29. data/ext/rhoconnect-client/ext/shared/RhoConnectClientImpl.cpp +273 -0
  30. data/ext/rhoconnect-client/ext/shared/RhoConnectClientImpl.h +60 -0
  31. data/ext/rhoconnect-client/ext/shared/RhoConnectClientSingletonImpl.h +53 -0
  32. data/ext/rhoconnect-client/ext/shared/initRhoconnectClient.cpp +207 -0
  33. data/ext/rhoconnect-client/ext/shared/rhoconnectclient.c +18 -0
  34. data/ext/rhoconnect-client/ext/shared/sync/ClientRegister.cpp +398 -0
  35. data/ext/rhoconnect-client/ext/shared/sync/ClientRegister.h +147 -0
  36. data/ext/rhoconnect-client/ext/shared/sync/ISyncProtocol.h +91 -0
  37. data/ext/rhoconnect-client/ext/shared/sync/SyncEngine.cpp +1245 -0
  38. data/ext/rhoconnect-client/ext/shared/sync/SyncEngine.h +213 -0
  39. data/ext/rhoconnect-client/ext/shared/sync/SyncNotify.cpp +737 -0
  40. data/ext/rhoconnect-client/ext/shared/sync/SyncNotify.h +209 -0
  41. data/ext/rhoconnect-client/ext/shared/sync/SyncProtocol_3.h +220 -0
  42. data/ext/rhoconnect-client/ext/shared/sync/SyncProtocol_4.h +259 -0
  43. data/ext/rhoconnect-client/ext/shared/sync/SyncSource.cpp +1694 -0
  44. data/ext/rhoconnect-client/ext/shared/sync/SyncSource.h +212 -0
  45. data/ext/rhoconnect-client/ext/shared/sync/SyncThread.cpp +583 -0
  46. data/ext/rhoconnect-client/ext/shared/sync/SyncThread.h +250 -0
  47. data/ext/rhoconnect-client/ext.yml +12 -0
  48. data/lib/build/run_rhoconnect_spec.rb +135 -0
  49. data/lib/rhoconnect-client.rb +3 -0
  50. data/platform/shared/RhoConnectClient/RhoConnectClient.cpp +1673 -0
  51. data/platform/shared/RhoConnectClient/RhoConnectClient.h +181 -0
  52. data/platform/shared/RhoConnectClient/RhoError.h +77 -0
  53. data/rhoconnect-client/C++/Tests/RhoConnectClientTest.cpp +830 -0
  54. data/rhoconnect-client/C++/Tests/win32/.gitignore +3 -0
  55. data/rhoconnect-client/C++/Tests/win32/RhoConnectClient.sln +65 -0
  56. data/rhoconnect-client/C++/Tests/win32/RhoConnectClient.vcproj +634 -0
  57. data/rhoconnect-client/C++/Tests/win32/RhoConnectClientTest/RhoConnectClientTest.vcproj +222 -0
  58. data/rhoconnect-client/C++/Tests/win32/RhoConnectClientTest/stdafx.h +65 -0
  59. data/rhoconnect-client/C++/Tests/win32/stdafx.h +65 -0
  60. data/rhoconnect-client/CHANGELOG +18 -0
  61. data/rhoconnect-client/Java/Android/build/android.rake +387 -0
  62. data/rhoconnect-client/Java/Android/build/android_sdk.rb +582 -0
  63. data/rhoconnect-client/Java/Android/build/libcurl_build.files +73 -0
  64. data/rhoconnect-client/Java/Android/build/libjson_build.files +9 -0
  65. data/rhoconnect-client/Java/Android/build/librhocommon_build.files +14 -0
  66. data/rhoconnect-client/Java/Android/build/librhodb_build.files +5 -0
  67. data/rhoconnect-client/Java/Android/build/librhoimpl_build.files +13 -0
  68. data/rhoconnect-client/Java/Android/build/librholog_build.files +4 -0
  69. data/rhoconnect-client/Java/Android/build/libsqlite_build.files +1 -0
  70. data/rhoconnect-client/Java/Android/build/libsync_build.files +7 -0
  71. data/rhoconnect-client/Java/Android/build/libunzip_build.files +1 -0
  72. data/rhoconnect-client/Java/Android/build/rhoconnectclient_build.files +3 -0
  73. data/rhoconnect-client/Java/Android/build/rhoimpljava_build.files +21 -0
  74. data/rhoconnect-client/Java/Android/src/com/rhomobile/rhodes/Capabilities.java +63 -0
  75. data/rhoconnect-client/Java/Android/src/com/rhomobile/rhodes/MemoryInfoCollector.java +79 -0
  76. data/rhoconnect-client/Java/Android/src/com/rhomobile/rhodes/util/ContextFactory.java +63 -0
  77. data/rhoconnect-client/Java/Android/test/.classpath +9 -0
  78. data/rhoconnect-client/Java/Android/test/.project +33 -0
  79. data/rhoconnect-client/Java/Android/test/AndroidManifest.xml +14 -0
  80. data/rhoconnect-client/Java/Android/test/assets/apps/androidtest.png +0 -0
  81. data/rhoconnect-client/Java/Android/test/assets/apps/rhoconfig.txt +19 -0
  82. data/rhoconnect-client/Java/Android/test/assets/apps/rhoconfig.txt.timestamp +1 -0
  83. data/rhoconnect-client/Java/Android/test/assets/db/syncdb.schema +44 -0
  84. data/rhoconnect-client/Java/Android/test/assets/db/syncdb.triggers +10 -0
  85. data/rhoconnect-client/Java/Android/test/assets/db/syncdb_java.triggers +21 -0
  86. data/rhoconnect-client/Java/Android/test/assets/rho.dat +9 -0
  87. data/rhoconnect-client/Java/Android/test/proguard.cfg +36 -0
  88. data/rhoconnect-client/Java/Android/test/project.properties +11 -0
  89. data/rhoconnect-client/Java/Android/test/res/drawable-hdpi/icon.png +0 -0
  90. data/rhoconnect-client/Java/Android/test/res/drawable-ldpi/icon.png +0 -0
  91. data/rhoconnect-client/Java/Android/test/res/drawable-mdpi/icon.png +0 -0
  92. data/rhoconnect-client/Java/Android/test/res/layout/main.xml +12 -0
  93. data/rhoconnect-client/Java/Android/test/res/values/strings.xml +5 -0
  94. data/rhoconnect-client/Java/Android/test/rhoimpl.jar +0 -0
  95. data/rhoconnect-client/Java/Android/test/src/com/rhomobile/rhoconnect_client_test/TestRhoConnectClient.java +343 -0
  96. data/rhoconnect-client/Java/Android/test/src/com/rhomobile/rhoconnect_client_test/TestRhoConnectClientBlobs.java +219 -0
  97. data/rhoconnect-client/Java/RhoConnect/.classpath +6 -0
  98. data/rhoconnect-client/Java/RhoConnect/.project +93 -0
  99. data/rhoconnect-client/Java/RhoConnect/assets/apps/rhoconfig.txt +19 -0
  100. data/rhoconnect-client/Java/RhoConnect/assets/apps/rhoconfig.txt.timestamp +1 -0
  101. data/rhoconnect-client/Java/RhoConnect/assets/db/syncdb.schema +44 -0
  102. data/rhoconnect-client/Java/RhoConnect/assets/db/syncdb.triggers +10 -0
  103. data/rhoconnect-client/Java/RhoConnect/assets/db/syncdb_java.triggers +21 -0
  104. data/rhoconnect-client/Java/RhoConnect/assets/rho.dat +8 -0
  105. data/rhoconnect-client/Java/RhoConnect/jni/include/RhoConnectJniNotify.h +61 -0
  106. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhoConnectClient.h +181 -0
  107. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhoConnectNotify.h +13 -0
  108. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhoConnectNotify_IDelegate.h +13 -0
  109. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhoConnectObjectNotify.h +13 -0
  110. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhoConnectObjectNotify_IDelegate.h +13 -0
  111. data/rhoconnect-client/Java/RhoConnect/jni/include/com_rhomobile_rhoconnect_RhomModel.h +103 -0
  112. data/rhoconnect-client/Java/RhoConnect/jni/include/rhojava.inc +76 -0
  113. data/rhoconnect-client/Java/RhoConnect/jni/src/RhoConnectJniClient.cpp +401 -0
  114. data/rhoconnect-client/Java/RhoConnect/jni/src/RhoConnectJniModel.cpp +332 -0
  115. data/rhoconnect-client/Java/RhoConnect/jni/src/RhoConnectJniNotify.cpp +223 -0
  116. data/rhoconnect-client/Java/RhoConnect/jni/src/RhoConnectUtil.cpp +82 -0
  117. data/rhoconnect-client/Java/RhoConnect/jni/src/RhodesApp.cpp +114 -0
  118. data/rhoconnect-client/Java/RhoConnect/src/com/rhomobile/rhoconnect/RhoConnectClient.java +108 -0
  119. data/rhoconnect-client/Java/RhoConnect/src/com/rhomobile/rhoconnect/RhoConnectNotify.java +78 -0
  120. data/rhoconnect-client/Java/RhoConnect/src/com/rhomobile/rhoconnect/RhoConnectObjectNotify.java +71 -0
  121. data/rhoconnect-client/Java/RhoConnect/src/com/rhomobile/rhoconnect/RhomModel.java +195 -0
  122. data/rhoconnect-client/JavaScript/.classpath +10 -0
  123. data/rhoconnect-client/JavaScript/.gitignore +4 -0
  124. data/rhoconnect-client/JavaScript/.project +17 -0
  125. data/rhoconnect-client/JavaScript/README.textile +1 -0
  126. data/rhoconnect-client/JavaScript/build.xml +185 -0
  127. data/rhoconnect-client/JavaScript/doc/fsm-sample.js +44 -0
  128. data/rhoconnect-client/JavaScript/doc/fsm-sample.png +0 -0
  129. data/rhoconnect-client/JavaScript/src/RhoSyncJS.gwt.xml +21 -0
  130. data/rhoconnect-client/JavaScript/stubs/RhoSyncStubsJS.gwt.xml +21 -0
  131. data/rhoconnect-client/JavaScript/stubs/com/rho/Capabilities.java +7 -0
  132. data/rhoconnect-client/JavaScript/stubs/com/rho/IRhoRubyHelper.java +7 -0
  133. data/rhoconnect-client/JavaScript/stubs/com/rho/Mutex.java +5 -0
  134. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoAppAdapter.java +39 -0
  135. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoClassFactory.java +29 -0
  136. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoConf.java +100 -0
  137. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoEmptyLogger.java +7 -0
  138. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoEmptyProfiler.java +5 -0
  139. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoLogger.java +32 -0
  140. data/rhoconnect-client/JavaScript/stubs/com/rho/RhoProfiler.java +27 -0
  141. data/rhoconnect-client/JavaScript/stubs/com/rho/RhodesApp.java +25 -0
  142. data/rhoconnect-client/JavaScript/stubs/com/rho/TimeInterval.java +22 -0
  143. data/rhoconnect-client/JavaScript/stubs/com/rho/Tokenizer.java +23 -0
  144. data/rhoconnect-client/JavaScript/stubs/com/rho/db/DBAdapter.java +174 -0
  145. data/rhoconnect-client/JavaScript/stubs/com/rho/db/DBAttrManager.java +15 -0
  146. data/rhoconnect-client/JavaScript/stubs/com/rho/db/DBException.java +5 -0
  147. data/rhoconnect-client/JavaScript/stubs/com/rho/db/IDBResult.java +27 -0
  148. data/rhoconnect-client/JavaScript/stubs/com/rho/file/IFileAccess.java +7 -0
  149. data/rhoconnect-client/JavaScript/stubs/com/rho/file/SimpleFile.java +15 -0
  150. data/rhoconnect-client/JavaScript/stubs/com/rho/net/IHttpConnection.java +22 -0
  151. data/rhoconnect-client/JavaScript/stubs/com/rho/net/NetRequest.java +324 -0
  152. data/rhoconnect-client/JavaScript/stubs/com/rho/net/NetResponse.java +51 -0
  153. data/rhoconnect-client/JavaScript/stubs/com/rho/net/URI.java +64 -0
  154. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/ClientRegister.java +15 -0
  155. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/JSONArrayIterator.java +37 -0
  156. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/JSONEntry.java +48 -0
  157. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/JSONStructIterator.java +41 -0
  158. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/SyncNotify.java +98 -0
  159. data/rhoconnect-client/JavaScript/stubs/com/rho/sync/SyncThread.java +92 -0
  160. data/rhoconnect-client/JavaScript/war/WEB-INF/lib/gwt-servlet-deps.jar +0 -0
  161. data/rhoconnect-client/JavaScript/war/WEB-INF/lib/gwt-servlet.jar +0 -0
  162. data/rhoconnect-client/JavaScript/war/js/fsm-sample.js +54 -0
  163. data/rhoconnect-client/JavaScript/war/js/rhosync-api.js +237 -0
  164. data/rhoconnect-client/JavaScript/war/js/rhosync-fsm.js +307 -0
  165. data/rhoconnect-client/JavaScript/war/rhosyncjs/4C71D69C9BBC9E6F05C6BA49B01BCBC1.cache.html +3122 -0
  166. data/rhoconnect-client/JavaScript/war/rhosyncjs/5146F4FFF34511C8BB2661E920B49E3A.cache.html +3254 -0
  167. data/rhoconnect-client/JavaScript/war/rhosyncjs/5248C67481D9D27AD0703D15CDBD2A1C.cache.html +3147 -0
  168. data/rhoconnect-client/JavaScript/war/rhosyncjs/EE1DC2692C9C32367B53A39E2358AF23.cache.html +3195 -0
  169. data/rhoconnect-client/JavaScript/war/rhosyncjs/clear.cache.gif +0 -0
  170. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/corner.png +0 -0
  171. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/corner_ie6.png +0 -0
  172. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/hborder.png +0 -0
  173. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/hborder_ie6.png +0 -0
  174. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/corner_dialog_topleft.png +0 -0
  175. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/corner_dialog_topright.png +0 -0
  176. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/hborder_blue_shadow.png +0 -0
  177. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/hborder_gray_shadow.png +0 -0
  178. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/vborder_blue_shadow.png +0 -0
  179. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/ie6/vborder_gray_shadow.png +0 -0
  180. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/splitPanelThumb.png +0 -0
  181. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/vborder.png +0 -0
  182. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/images/vborder_ie6.png +0 -0
  183. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/standard.css +1144 -0
  184. data/rhoconnect-client/JavaScript/war/rhosyncjs/gwt/standard/standard_rtl.css +1145 -0
  185. data/rhoconnect-client/JavaScript/war/rhosyncjs/hosted.html +350 -0
  186. data/rhoconnect-client/JavaScript/war/rhosyncjs/rhosyncjs.nocache.js +314 -0
  187. data/rhoconnect-client/JavaScript/war/test/SpecRunner.html +35 -0
  188. data/rhoconnect-client/JavaScript/war/test/dbtest.html +38 -0
  189. data/rhoconnect-client/JavaScript/war/test/lib/jasmine-1.0.1/MIT.LICENSE +20 -0
  190. data/rhoconnect-client/JavaScript/war/test/lib/jasmine-1.0.1/jasmine-html.js +188 -0
  191. data/rhoconnect-client/JavaScript/war/test/lib/jasmine-1.0.1/jasmine.css +166 -0
  192. data/rhoconnect-client/JavaScript/war/test/lib/jasmine-1.0.1/jasmine.js +2421 -0
  193. data/rhoconnect-client/JavaScript/war/test/spec/SpecHelper.js +7 -0
  194. data/rhoconnect-client/JavaScript/war/test/spec/SyncApiSpec.js +573 -0
  195. data/rhoconnect-client/JavaScript/war/test/spec/samples/PlayerSpec.js +58 -0
  196. data/rhoconnect-client/JavaScript/war/test/worker-test.js +17 -0
  197. data/rhoconnect-client/LICENSE +41 -0
  198. data/rhoconnect-client/ObjectiveC/RhoConnectClient.h +118 -0
  199. data/rhoconnect-client/ObjectiveC/RhoConnectClient.m +641 -0
  200. data/rhoconnect-client/ObjectiveC/RhoConnectClient.xcodeproj/project.pbxproj +1434 -0
  201. data/rhoconnect-client/ObjectiveC/RhoConnectNotify.h +83 -0
  202. data/rhoconnect-client/ObjectiveC/RhoConnectNotify.m +181 -0
  203. data/rhoconnect-client/ObjectiveC/RhoConnectObjectNotify.h +65 -0
  204. data/rhoconnect-client/ObjectiveC/RhoConnectObjectNotify.m +73 -0
  205. data/rhoconnect-client/ObjectiveC/RhomModel.h +101 -0
  206. data/rhoconnect-client/ObjectiveC/RhomModel.m +320 -0
  207. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/MainWindow.xib +198 -0
  208. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/RhoConnectClientTest-Info.plist +30 -0
  209. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/RhoConnectClientTest.xcodeproj/project.pbxproj +373 -0
  210. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/RhoConnectClientTestAppDelegate.h +58 -0
  211. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/RhoConnectClientTestAppDelegate.m +84 -0
  212. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/RhoConnectClientTest_Prefix.pch +8 -0
  213. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/invalid_import_db.zip +0 -0
  214. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/main.m +1096 -0
  215. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/test.png +0 -0
  216. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/test2.png +0 -0
  217. data/rhoconnect-client/ObjectiveC/Tests/RhoConnectClientTest/valid_import_db.zip +0 -0
  218. data/rhoconnect-client/ObjectiveC/Tests/ptests/Classes/ptestsAppDelegate.h +62 -0
  219. data/rhoconnect-client/ObjectiveC/Tests/ptests/Classes/ptestsAppDelegate.m +35 -0
  220. data/rhoconnect-client/ObjectiveC/Tests/ptests/Classes/ptestsViewController.h +78 -0
  221. data/rhoconnect-client/ObjectiveC/Tests/ptests/Classes/ptestsViewController.m +549 -0
  222. data/rhoconnect-client/ObjectiveC/Tests/ptests/MainWindow.xib +227 -0
  223. data/rhoconnect-client/ObjectiveC/Tests/ptests/main.m +17 -0
  224. data/rhoconnect-client/ObjectiveC/Tests/ptests/ptests-Info.plist +30 -0
  225. data/rhoconnect-client/ObjectiveC/Tests/ptests/ptests.xcodeproj/project.pbxproj +363 -0
  226. data/rhoconnect-client/ObjectiveC/Tests/ptests/ptestsViewController.xib +641 -0
  227. data/rhoconnect-client/ObjectiveC/Tests/ptests/ptests_Prefix.pch +8 -0
  228. data/rhoconnect-client/README.textile +23 -0
  229. data/rhoconnect-client/Rakefile +20 -0
  230. data/rhoconnect-client/Samples/Java/android_store/.classpath +8 -0
  231. data/rhoconnect-client/Samples/Java/android_store/.project +33 -0
  232. data/rhoconnect-client/Samples/Java/android_store/AndroidManifest.xml +24 -0
  233. data/rhoconnect-client/Samples/Java/android_store/assets/apps/rhoconfig.txt +19 -0
  234. data/rhoconnect-client/Samples/Java/android_store/assets/apps/rhoconfig.txt.timestamp +1 -0
  235. data/rhoconnect-client/Samples/Java/android_store/assets/db/syncdb.schema +44 -0
  236. data/rhoconnect-client/Samples/Java/android_store/assets/db/syncdb.triggers +10 -0
  237. data/rhoconnect-client/Samples/Java/android_store/assets/db/syncdb_java.triggers +21 -0
  238. data/rhoconnect-client/Samples/Java/android_store/assets/rho.dat +8 -0
  239. data/rhoconnect-client/Samples/Java/android_store/default.properties +11 -0
  240. data/rhoconnect-client/Samples/Java/android_store/project.properties +14 -0
  241. data/rhoconnect-client/Samples/Java/android_store/res/drawable-hdpi/icon.png +0 -0
  242. data/rhoconnect-client/Samples/Java/android_store/res/drawable-ldpi/icon.png +0 -0
  243. data/rhoconnect-client/Samples/Java/android_store/res/drawable-mdpi/icon.png +0 -0
  244. data/rhoconnect-client/Samples/Java/android_store/res/layout/main.xml +12 -0
  245. data/rhoconnect-client/Samples/Java/android_store/res/values/strings.xml +5 -0
  246. data/rhoconnect-client/Samples/Java/android_store/rhoimpl.jar +0 -0
  247. data/rhoconnect-client/Samples/Java/android_store/src/com/rhomobile/android_store/StoreActivity.java +68 -0
  248. data/rhoconnect-client/Samples/Java/android_store/src/com/rhomobile/android_store/StoreApplication.java +15 -0
  249. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/LoginViewController.h +70 -0
  250. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/LoginViewController.m +94 -0
  251. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/RhoConnectEngine.h +82 -0
  252. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/RhoConnectEngine.m +119 -0
  253. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/RootViewController.h +63 -0
  254. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/RootViewController.m +314 -0
  255. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/WaitLoginController.h +65 -0
  256. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/WaitLoginController.m +110 -0
  257. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/storeAppDelegate.h +61 -0
  258. data/rhoconnect-client/Samples/ObjectiveC/store/Classes/storeAppDelegate.m +171 -0
  259. data/rhoconnect-client/Samples/ObjectiveC/store/LoginViewController.xib +779 -0
  260. data/rhoconnect-client/Samples/ObjectiveC/store/MainWindow.xib +580 -0
  261. data/rhoconnect-client/Samples/ObjectiveC/store/RootViewController.xib +384 -0
  262. data/rhoconnect-client/Samples/ObjectiveC/store/WaitLoginController.xib +557 -0
  263. data/rhoconnect-client/Samples/ObjectiveC/store/icon.png +0 -0
  264. data/rhoconnect-client/Samples/ObjectiveC/store/main.m +22 -0
  265. data/rhoconnect-client/Samples/ObjectiveC/store/store-Info.plist +30 -0
  266. data/rhoconnect-client/Samples/ObjectiveC/store/store.xcodeproj/project.pbxproj +367 -0
  267. data/rhoconnect-client/Samples/ObjectiveC/store/store_Prefix.pch +14 -0
  268. data/rhoconnect-client/build.yml +3 -0
  269. data/rhoconnect-client/version +1 -0
  270. metadata +314 -0
@@ -0,0 +1,320 @@
1
+ //
2
+ // RhomModel.m
3
+ // SyncClientTest
4
+ //
5
+ // Created by evgeny vovchenko on 8/23/10.
6
+ // Copyright 2010 RhoMobile. All rights reserved.
7
+ // Copyright 2011-2016 Symbol Technologies. All rights reserved.
8
+ //
9
+
10
+ #import "RhomModel.h"
11
+ #import "RhoConnectClient/RhoConnectClient.h"
12
+ #include "sync/SyncThread.h"
13
+ #import "RhoConnectClient.h"
14
+
15
+ @implementation RhomModel
16
+
17
+ @synthesize name;
18
+ @synthesize partition;
19
+ @synthesize sync_type;
20
+ @synthesize source_id;
21
+ @synthesize model_type;
22
+ @synthesize associations;
23
+ @synthesize blob_attribs;
24
+
25
+ - (id)init
26
+ {
27
+ self = [super init];
28
+ partition = @"user";
29
+ sync_type = RST_INCREMENTAL;
30
+ model_type = RMT_PROPERTY_BAG;
31
+ source_id = 0;
32
+ associations = NULL;
33
+ blob_attribs = [[NSMutableString alloc] init];
34
+
35
+ return self;
36
+ }
37
+
38
+ - (void)dealloc;
39
+ {
40
+ [name release];
41
+ [partition release];
42
+ if (associations)
43
+ {
44
+ [associations release];
45
+ }
46
+ [blob_attribs release];
47
+ [super dealloc];
48
+ }
49
+
50
+ - (RhoConnectNotify *)sync
51
+ {
52
+ char *res = (char *)rho_sync_doSyncSourceByName([name cStringUsingEncoding:[NSString defaultCStringEncoding]]);
53
+
54
+ RHO_CONNECT_NOTIFY oNotify = { 0 };
55
+
56
+ rho_connectclient_parsenotify(res, &oNotify);
57
+ rho_sync_free_string(res);
58
+
59
+ return [[[RhoConnectNotify alloc] init:&oNotify] autorelease];
60
+ }
61
+
62
+ - (void)sync:(SEL)callback target:(id)target
63
+ {
64
+ [RhoConnectClient setNotification:callback target:target];
65
+
66
+ rho_sync_doSyncSourceByName([name cStringUsingEncoding:[NSString defaultCStringEncoding]]);
67
+ }
68
+
69
+ - (void)setNotification:(SEL)callback target:(id)target
70
+ {
71
+ [RhoConnectClient setModelNotification:source_id callback:callback target:target];
72
+ }
73
+
74
+ - (void)clearNotification
75
+ {
76
+ rho_sync_clear_notification(source_id);
77
+ }
78
+
79
+ - (void)add_blob_attribute:(NSString *)attr_name
80
+ {
81
+ [self add_blob_attribute:attr_name overwrite:NO];
82
+ }
83
+
84
+ - (void)add_blob_attribute:(NSString *)attr_name overwrite:(BOOL)attr_overwrite
85
+ {
86
+ if (0 < [blob_attribs length])
87
+ {
88
+ [blob_attribs appendString:@","];
89
+ }
90
+ [blob_attribs appendString:attr_name];
91
+ [blob_attribs appendString:@","];
92
+ [blob_attribs appendString:attr_overwrite ? @"1":@"0"];
93
+ }
94
+
95
+ - (void)create:(NSMutableDictionary *)data
96
+ {
97
+ unsigned long item = rho_connectclient_hash_create();
98
+
99
+ for (NSString *key in data)
100
+ {
101
+ rho_connectclient_hash_put(item,
102
+ [key cStringUsingEncoding:[NSString defaultCStringEncoding]],
103
+ [[data objectForKey:key] cStringUsingEncoding:[NSString defaultCStringEncoding]]
104
+ );
105
+ }
106
+
107
+ rho_connectclient_create_object([name cStringUsingEncoding:[NSString defaultCStringEncoding]],
108
+ item);
109
+ const char *szValue = rho_connectclient_hash_get(item, "object");
110
+ if (szValue)
111
+ {
112
+ [data setValue:[NSString stringWithUTF8String:szValue] forKey:@"object"];
113
+ }
114
+ else
115
+ {
116
+ [data setValue:@"" forKey:@"object"];
117
+ }
118
+
119
+ szValue = rho_connectclient_hash_get(item, "source_id");
120
+ if (szValue)
121
+ {
122
+ [data setValue:[NSString stringWithUTF8String:szValue] forKey:@"source_id"];
123
+ }
124
+ else
125
+ {
126
+ [data setValue:@"" forKey:@"source_id"];
127
+ }
128
+
129
+ rho_connectclient_hash_delete(item);
130
+ }
131
+
132
+ - (BOOL)is_changed
133
+ {
134
+ return rho_connectclient_is_changed([name cStringUsingEncoding:[NSString defaultCStringEncoding]]) == 1 ? TRUE : FALSE;
135
+ }
136
+
137
+ - (void)setSyncType:(int)type
138
+ {
139
+ sync_type = type;
140
+ rho_connectclient_set_synctype([name cStringUsingEncoding:[NSString defaultCStringEncoding]], type);
141
+ }
142
+
143
+ int enum_func(const char *szKey, const char *szValue, void *pThis)
144
+ {
145
+ NSMutableDictionary *data = (NSMutableDictionary *)pThis;
146
+
147
+ [data setValue:[NSString stringWithUTF8String:szValue] forKey:[NSString stringWithUTF8String:szKey]];
148
+ return 1;
149
+ }
150
+
151
+ - (NSMutableDictionary *)find:(NSString *)object_id
152
+ {
153
+ unsigned long item = rho_connectclient_find(
154
+ [name cStringUsingEncoding:[NSString defaultCStringEncoding]],
155
+ [object_id cStringUsingEncoding:[NSString defaultCStringEncoding]]);
156
+
157
+ if (item == 0)
158
+ {
159
+ return NULL;
160
+ }
161
+ NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
162
+ rho_connectclient_hash_enumerate(item, &enum_func, data);
163
+
164
+ rho_connectclient_hash_delete(item);
165
+ return [data autorelease];
166
+ }
167
+
168
+ - (NSMutableDictionary *)find_first:(NSDictionary *)cond
169
+ {
170
+ unsigned long condhash = rho_connectclient_hash_create();
171
+
172
+ for (NSString *key in cond)
173
+ {
174
+ rho_connectclient_hash_put(condhash,
175
+ [key cStringUsingEncoding:[NSString defaultCStringEncoding]],
176
+ [[cond objectForKey:key] cStringUsingEncoding:[NSString defaultCStringEncoding]]
177
+ );
178
+ }
179
+
180
+ unsigned long item = rho_connectclient_find_first([name cStringUsingEncoding:[NSString defaultCStringEncoding]], condhash);
181
+ rho_connectclient_hash_delete(condhash);
182
+
183
+ if (item == 0)
184
+ {
185
+ return NULL;
186
+ }
187
+ NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
188
+ rho_connectclient_hash_enumerate(item, &enum_func, data);
189
+
190
+ rho_connectclient_hash_delete(item);
191
+ return [data autorelease];
192
+ }
193
+
194
+ - (NSMutableArray *)find_all:(NSDictionary *)cond
195
+ {
196
+ unsigned long condhash = rho_connectclient_hash_create();
197
+
198
+ if (cond)
199
+ {
200
+ for (NSString *key in cond)
201
+ {
202
+ rho_connectclient_hash_put(condhash,
203
+ [key cStringUsingEncoding:[NSString defaultCStringEncoding]],
204
+ [[cond objectForKey:key] cStringUsingEncoding:[NSString defaultCStringEncoding]]
205
+ );
206
+ }
207
+ }
208
+
209
+ unsigned long items = rho_connectclient_find_all([name cStringUsingEncoding:[NSString defaultCStringEncoding]], condhash);
210
+ rho_connectclient_hash_delete(condhash);
211
+
212
+ if (items == 0)
213
+ {
214
+ return NULL;
215
+ }
216
+
217
+ int nSize = rho_connectclient_strhasharray_size(items);
218
+ NSMutableArray *arRes = [[NSMutableArray alloc] initWithCapacity:nSize];
219
+ for (int i = 0; i < nSize; i++)
220
+ {
221
+ NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
222
+ rho_connectclient_hash_enumerate(rho_connectclient_strhasharray_get(items, i), &enum_func, data);
223
+
224
+ [arRes addObject:data];
225
+ [data release];
226
+ }
227
+
228
+ rho_connectclient_strhasharray_delete(items);
229
+ return [arRes autorelease];
230
+ }
231
+
232
+ - (NSMutableArray *)find_bysql:(NSString *)sql args:(NSArray *)sql_args
233
+ {
234
+ unsigned long ar_params = 0;
235
+
236
+ if (sql_args != NULL && [sql_args count] > 0)
237
+ {
238
+ ar_params = rho_connectclient_strarray_create();
239
+ for (NSString *param in sql_args)
240
+ {
241
+ rho_connectclient_strarray_add(ar_params, [param cStringUsingEncoding:[NSString defaultCStringEncoding]]);
242
+ }
243
+ }
244
+
245
+ unsigned long items = rho_connectclient_findbysql(
246
+ [name cStringUsingEncoding:[NSString defaultCStringEncoding]],
247
+ [sql cStringUsingEncoding:[NSString defaultCStringEncoding]],
248
+ ar_params);
249
+
250
+ if (items == 0)
251
+ {
252
+ return NULL;
253
+ }
254
+
255
+ int nSize = rho_connectclient_strhasharray_size(items);
256
+ NSMutableArray *arRes = [[NSMutableArray alloc] initWithCapacity:nSize];
257
+ for (int i = 0; i < nSize; i++)
258
+ {
259
+ NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
260
+ rho_connectclient_hash_enumerate(rho_connectclient_strhasharray_get(items, i), &enum_func, data);
261
+
262
+ [arRes addObject:data];
263
+ [data release];
264
+ }
265
+
266
+ rho_connectclient_strhasharray_delete(items);
267
+ return [arRes autorelease];
268
+ }
269
+
270
+ - (void)save:(NSDictionary *)data
271
+ {
272
+ unsigned long item = rho_connectclient_hash_create();
273
+
274
+ for (NSString *key in data)
275
+ {
276
+ rho_connectclient_hash_put(item,
277
+ [key cStringUsingEncoding:[NSString defaultCStringEncoding]],
278
+ [[data objectForKey:key] cStringUsingEncoding:[NSString defaultCStringEncoding]]
279
+ );
280
+ }
281
+
282
+ rho_connectclient_save([name cStringUsingEncoding:[NSString defaultCStringEncoding]], item);
283
+
284
+ rho_connectclient_hash_delete(item);
285
+ }
286
+
287
+ - (void)destroy:(NSDictionary *)data
288
+ {
289
+ unsigned long item = rho_connectclient_hash_create();
290
+
291
+ for (NSString *key in data)
292
+ {
293
+ rho_connectclient_hash_put(item,
294
+ [key cStringUsingEncoding:[NSString defaultCStringEncoding]],
295
+ [[data objectForKey:key] cStringUsingEncoding:[NSString defaultCStringEncoding]]
296
+ );
297
+ }
298
+
299
+ rho_connectclient_itemdestroy([name cStringUsingEncoding:[NSString defaultCStringEncoding]],
300
+ item);
301
+
302
+ rho_connectclient_hash_delete(item);
303
+ }
304
+
305
+ - (void)startBulkUpdate
306
+ {
307
+ rho_connectclient_start_bulkupdate([name cStringUsingEncoding:[NSString defaultCStringEncoding]]);
308
+ }
309
+
310
+ - (void)stopBulkUpdate
311
+ {
312
+ rho_connectclient_stop_bulkupdate([name cStringUsingEncoding:[NSString defaultCStringEncoding]]);
313
+ }
314
+
315
+ - (void)pushChanges
316
+ {
317
+ rho_connectclient_push_changes([name cStringUsingEncoding:[NSString defaultCStringEncoding]]);
318
+ }
319
+
320
+ @end
@@ -0,0 +1,198 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
3
+ <data>
4
+ <int key="IBDocument.SystemTarget">800</int>
5
+ <string key="IBDocument.SystemVersion">10D540</string>
6
+ <string key="IBDocument.InterfaceBuilderVersion">760</string>
7
+ <string key="IBDocument.AppKitVersion">1038.29</string>
8
+ <string key="IBDocument.HIToolboxVersion">460.00</string>
9
+ <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
10
+ <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
11
+ <string key="NS.object.0">81</string>
12
+ </object>
13
+ <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
14
+ <bool key="EncodedWithXMLCoder">YES</bool>
15
+ <integer value="2"/>
16
+ </object>
17
+ <object class="NSArray" key="IBDocument.PluginDependencies">
18
+ <bool key="EncodedWithXMLCoder">YES</bool>
19
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
20
+ </object>
21
+ <object class="NSMutableDictionary" key="IBDocument.Metadata">
22
+ <bool key="EncodedWithXMLCoder">YES</bool>
23
+ <object class="NSArray" key="dict.sortedKeys" id="0">
24
+ <bool key="EncodedWithXMLCoder">YES</bool>
25
+ </object>
26
+ <object class="NSMutableArray" key="dict.values">
27
+ <bool key="EncodedWithXMLCoder">YES</bool>
28
+ </object>
29
+ </object>
30
+ <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
31
+ <bool key="EncodedWithXMLCoder">YES</bool>
32
+ <object class="IBProxyObject" id="841351856">
33
+ <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
34
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
35
+ </object>
36
+ <object class="IBProxyObject" id="427554174">
37
+ <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
38
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
39
+ </object>
40
+ <object class="IBUICustomObject" id="664661524">
41
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
42
+ </object>
43
+ <object class="IBUIWindow" id="380026005">
44
+ <reference key="NSNextResponder"/>
45
+ <int key="NSvFlags">1316</int>
46
+ <object class="NSPSMatrix" key="NSFrameMatrix"/>
47
+ <string key="NSFrameSize">{320, 480}</string>
48
+ <reference key="NSSuperview"/>
49
+ <object class="NSColor" key="IBUIBackgroundColor">
50
+ <int key="NSColorSpace">1</int>
51
+ <bytes key="NSRGB">MSAxIDEAA</bytes>
52
+ </object>
53
+ <bool key="IBUIOpaque">NO</bool>
54
+ <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
55
+ <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
56
+ <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
57
+ <bool key="IBUIResizesToFullScreen">YES</bool>
58
+ </object>
59
+ </object>
60
+ <object class="IBObjectContainer" key="IBDocument.Objects">
61
+ <object class="NSMutableArray" key="connectionRecords">
62
+ <bool key="EncodedWithXMLCoder">YES</bool>
63
+ <object class="IBConnectionRecord">
64
+ <object class="IBCocoaTouchOutletConnection" key="connection">
65
+ <string key="label">delegate</string>
66
+ <reference key="source" ref="841351856"/>
67
+ <reference key="destination" ref="664661524"/>
68
+ </object>
69
+ <int key="connectionID">4</int>
70
+ </object>
71
+ <object class="IBConnectionRecord">
72
+ <object class="IBCocoaTouchOutletConnection" key="connection">
73
+ <string key="label">window</string>
74
+ <reference key="source" ref="664661524"/>
75
+ <reference key="destination" ref="380026005"/>
76
+ </object>
77
+ <int key="connectionID">5</int>
78
+ </object>
79
+ </object>
80
+ <object class="IBMutableOrderedSet" key="objectRecords">
81
+ <object class="NSArray" key="orderedObjects">
82
+ <bool key="EncodedWithXMLCoder">YES</bool>
83
+ <object class="IBObjectRecord">
84
+ <int key="objectID">0</int>
85
+ <reference key="object" ref="0"/>
86
+ <reference key="children" ref="1000"/>
87
+ <nil key="parent"/>
88
+ </object>
89
+ <object class="IBObjectRecord">
90
+ <int key="objectID">2</int>
91
+ <reference key="object" ref="380026005"/>
92
+ <object class="NSMutableArray" key="children">
93
+ <bool key="EncodedWithXMLCoder">YES</bool>
94
+ </object>
95
+ <reference key="parent" ref="0"/>
96
+ </object>
97
+ <object class="IBObjectRecord">
98
+ <int key="objectID">-1</int>
99
+ <reference key="object" ref="841351856"/>
100
+ <reference key="parent" ref="0"/>
101
+ <string key="objectName">File's Owner</string>
102
+ </object>
103
+ <object class="IBObjectRecord">
104
+ <int key="objectID">3</int>
105
+ <reference key="object" ref="664661524"/>
106
+ <reference key="parent" ref="0"/>
107
+ </object>
108
+ <object class="IBObjectRecord">
109
+ <int key="objectID">-2</int>
110
+ <reference key="object" ref="427554174"/>
111
+ <reference key="parent" ref="0"/>
112
+ </object>
113
+ </object>
114
+ </object>
115
+ <object class="NSMutableDictionary" key="flattenedProperties">
116
+ <bool key="EncodedWithXMLCoder">YES</bool>
117
+ <object class="NSArray" key="dict.sortedKeys">
118
+ <bool key="EncodedWithXMLCoder">YES</bool>
119
+ <string>-1.CustomClassName</string>
120
+ <string>-2.CustomClassName</string>
121
+ <string>2.IBAttributePlaceholdersKey</string>
122
+ <string>2.IBEditorWindowLastContentRect</string>
123
+ <string>2.IBPluginDependency</string>
124
+ <string>3.CustomClassName</string>
125
+ <string>3.IBPluginDependency</string>
126
+ </object>
127
+ <object class="NSMutableArray" key="dict.values">
128
+ <bool key="EncodedWithXMLCoder">YES</bool>
129
+ <string>UIApplication</string>
130
+ <string>UIResponder</string>
131
+ <object class="NSMutableDictionary">
132
+ <bool key="EncodedWithXMLCoder">YES</bool>
133
+ <reference key="dict.sortedKeys" ref="0"/>
134
+ <object class="NSMutableArray" key="dict.values">
135
+ <bool key="EncodedWithXMLCoder">YES</bool>
136
+ </object>
137
+ </object>
138
+ <string>{{198, 376}, {320, 480}}</string>
139
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
140
+ <string>SyncClientTestAppDelegate</string>
141
+ <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
142
+ </object>
143
+ </object>
144
+ <object class="NSMutableDictionary" key="unlocalizedProperties">
145
+ <bool key="EncodedWithXMLCoder">YES</bool>
146
+ <reference key="dict.sortedKeys" ref="0"/>
147
+ <object class="NSMutableArray" key="dict.values">
148
+ <bool key="EncodedWithXMLCoder">YES</bool>
149
+ </object>
150
+ </object>
151
+ <nil key="activeLocalization"/>
152
+ <object class="NSMutableDictionary" key="localizations">
153
+ <bool key="EncodedWithXMLCoder">YES</bool>
154
+ <reference key="dict.sortedKeys" ref="0"/>
155
+ <object class="NSMutableArray" key="dict.values">
156
+ <bool key="EncodedWithXMLCoder">YES</bool>
157
+ </object>
158
+ </object>
159
+ <nil key="sourceID"/>
160
+ <int key="maxID">9</int>
161
+ </object>
162
+ <object class="IBClassDescriber" key="IBDocument.Classes">
163
+ <object class="NSMutableArray" key="referencedPartialClassDescriptions">
164
+ <bool key="EncodedWithXMLCoder">YES</bool>
165
+ <object class="IBPartialClassDescription">
166
+ <string key="className">SyncClientTestAppDelegate</string>
167
+ <string key="superclassName">NSObject</string>
168
+ <object class="NSMutableDictionary" key="outlets">
169
+ <string key="NS.key.0">window</string>
170
+ <string key="NS.object.0">UIWindow</string>
171
+ </object>
172
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
173
+ <string key="majorKey">IBProjectSource</string>
174
+ <string key="minorKey">Classes/SyncClientTestAppDelegate.h</string>
175
+ </object>
176
+ </object>
177
+ <object class="IBPartialClassDescription">
178
+ <string key="className">SyncClientTestAppDelegate</string>
179
+ <string key="superclassName">NSObject</string>
180
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
181
+ <string key="majorKey">IBUserSource</string>
182
+ <string key="minorKey"/>
183
+ </object>
184
+ </object>
185
+ </object>
186
+ </object>
187
+ <int key="IBDocument.localizationMode">0</int>
188
+ <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
189
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
190
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
191
+ <integer value="3100" key="NS.object.0"/>
192
+ </object>
193
+ <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
194
+ <string key="IBDocument.LastKnownRelativeProjectPath">SyncClientTest.xcodeproj</string>
195
+ <int key="IBDocument.defaultPropertyAccessControl">3</int>
196
+ <string key="IBCocoaTouchPluginVersion">81</string>
197
+ </data>
198
+ </archive>