ZCRMSDK 1.0.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. checksums.yaml +4 -4
  2. data/src/ZCRMSDK.rb +362 -0
  3. data/src/com/zoho/api/authenticator/oauth_token.rb +217 -0
  4. data/src/com/zoho/api/authenticator/store/db_store.rb +149 -0
  5. data/src/com/zoho/api/authenticator/store/file_store.rb +165 -0
  6. data/src/com/zoho/api/authenticator/store/token_store.rb +26 -0
  7. data/src/com/zoho/api/authenticator/token.rb +10 -0
  8. data/src/com/zoho/api/logger/sdk_logger.rb +68 -0
  9. data/src/com/zoho/crm/api/attachments/action_handler.rb +10 -0
  10. data/src/com/zoho/crm/api/attachments/action_response.rb +10 -0
  11. data/src/com/zoho/crm/api/attachments/action_wrapper.rb +63 -0
  12. data/src/com/zoho/crm/api/attachments/api_exception.rb +125 -0
  13. data/src/com/zoho/crm/api/attachments/attachment.rb +367 -0
  14. data/src/com/zoho/crm/api/attachments/attachments_operations.rb +196 -0
  15. data/src/com/zoho/crm/api/attachments/file_body_wrapper.rb +64 -0
  16. data/src/com/zoho/crm/api/attachments/response_handler.rb +10 -0
  17. data/src/com/zoho/crm/api/attachments/response_wrapper.rb +83 -0
  18. data/src/com/zoho/crm/api/attachments/success_response.rb +121 -0
  19. data/src/com/zoho/crm/api/blue_print/action_response.rb +10 -0
  20. data/src/com/zoho/crm/api/blue_print/api_exception.rb +123 -0
  21. data/src/com/zoho/crm/api/blue_print/blue_print.rb +119 -0
  22. data/src/com/zoho/crm/api/blue_print/blue_print_operations.rb +67 -0
  23. data/src/com/zoho/crm/api/blue_print/body_wrapper.rb +61 -0
  24. data/src/com/zoho/crm/api/blue_print/next_transition.rb +80 -0
  25. data/src/com/zoho/crm/api/blue_print/process_info.rb +251 -0
  26. data/src/com/zoho/crm/api/blue_print/response_handler.rb +10 -0
  27. data/src/com/zoho/crm/api/blue_print/response_wrapper.rb +63 -0
  28. data/src/com/zoho/crm/api/blue_print/success_response.rb +121 -0
  29. data/src/com/zoho/crm/api/blue_print/transition.rb +253 -0
  30. data/src/com/zoho/crm/api/blue_print/validation_error.rb +80 -0
  31. data/src/com/zoho/crm/api/bulk_read/action_handler.rb +10 -0
  32. data/src/com/zoho/crm/api/bulk_read/action_response.rb +10 -0
  33. data/src/com/zoho/crm/api/bulk_read/action_wrapper.rb +82 -0
  34. data/src/com/zoho/crm/api/bulk_read/api_exception.rb +125 -0
  35. data/src/com/zoho/crm/api/bulk_read/bulk_read_operations.rb +74 -0
  36. data/src/com/zoho/crm/api/bulk_read/call_back.rb +81 -0
  37. data/src/com/zoho/crm/api/bulk_read/criteria.rb +135 -0
  38. data/src/com/zoho/crm/api/bulk_read/file_body_wrapper.rb +64 -0
  39. data/src/com/zoho/crm/api/bulk_read/job_detail.rb +196 -0
  40. data/src/com/zoho/crm/api/bulk_read/query.rb +137 -0
  41. data/src/com/zoho/crm/api/bulk_read/request_wrapper.rb +100 -0
  42. data/src/com/zoho/crm/api/bulk_read/response_handler.rb +10 -0
  43. data/src/com/zoho/crm/api/bulk_read/response_wrapper.rb +63 -0
  44. data/src/com/zoho/crm/api/bulk_read/result.rb +137 -0
  45. data/src/com/zoho/crm/api/bulk_read/success_response.rb +121 -0
  46. data/src/com/zoho/crm/api/bulk_write/action_response.rb +10 -0
  47. data/src/com/zoho/crm/api/bulk_write/api_exception.rb +239 -0
  48. data/src/com/zoho/crm/api/bulk_write/bulk_write_operations.rb +112 -0
  49. data/src/com/zoho/crm/api/bulk_write/bulk_write_response.rb +216 -0
  50. data/src/com/zoho/crm/api/bulk_write/call_back.rb +81 -0
  51. data/src/com/zoho/crm/api/bulk_write/field_mapping.rb +156 -0
  52. data/src/com/zoho/crm/api/bulk_write/file.rb +157 -0
  53. data/src/com/zoho/crm/api/bulk_write/file_body_wrapper.rb +64 -0
  54. data/src/com/zoho/crm/api/bulk_write/request_wrapper.rb +119 -0
  55. data/src/com/zoho/crm/api/bulk_write/resource.rb +195 -0
  56. data/src/com/zoho/crm/api/bulk_write/response_handler.rb +10 -0
  57. data/src/com/zoho/crm/api/bulk_write/response_wrapper.rb +10 -0
  58. data/src/com/zoho/crm/api/bulk_write/result.rb +61 -0
  59. data/src/com/zoho/crm/api/bulk_write/success_response.rb +121 -0
  60. data/src/com/zoho/crm/api/contact_roles/action_handler.rb +10 -0
  61. data/src/com/zoho/crm/api/contact_roles/action_response.rb +10 -0
  62. data/src/com/zoho/crm/api/contact_roles/action_wrapper.rb +63 -0
  63. data/src/com/zoho/crm/api/contact_roles/api_exception.rb +125 -0
  64. data/src/com/zoho/crm/api/contact_roles/body_wrapper.rb +61 -0
  65. data/src/com/zoho/crm/api/contact_roles/contact_role.rb +99 -0
  66. data/src/com/zoho/crm/api/contact_roles/contact_roles_operations.rb +161 -0
  67. data/src/com/zoho/crm/api/contact_roles/response_handler.rb +10 -0
  68. data/src/com/zoho/crm/api/contact_roles/response_wrapper.rb +63 -0
  69. data/src/com/zoho/crm/api/contact_roles/success_response.rb +121 -0
  70. data/src/com/zoho/crm/api/currencies/action_handler.rb +10 -0
  71. data/src/com/zoho/crm/api/currencies/action_response.rb +10 -0
  72. data/src/com/zoho/crm/api/currencies/action_wrapper.rb +63 -0
  73. data/src/com/zoho/crm/api/currencies/api_exception.rb +127 -0
  74. data/src/com/zoho/crm/api/currencies/base_currency_action_handler.rb +10 -0
  75. data/src/com/zoho/crm/api/currencies/base_currency_action_wrapper.rb +63 -0
  76. data/src/com/zoho/crm/api/currencies/base_currency_wrapper.rb +61 -0
  77. data/src/com/zoho/crm/api/currencies/body_wrapper.rb +61 -0
  78. data/src/com/zoho/crm/api/currencies/currencies_operations.rb +156 -0
  79. data/src/com/zoho/crm/api/currencies/currency.rb +290 -0
  80. data/src/com/zoho/crm/api/currencies/format.rb +100 -0
  81. data/src/com/zoho/crm/api/currencies/response_handler.rb +10 -0
  82. data/src/com/zoho/crm/api/currencies/response_wrapper.rb +63 -0
  83. data/src/com/zoho/crm/api/currencies/success_response.rb +121 -0
  84. data/src/com/zoho/crm/api/custom_views/api_exception.rb +121 -0
  85. data/src/com/zoho/crm/api/custom_views/criteria.rb +135 -0
  86. data/src/com/zoho/crm/api/custom_views/custom_view.rb +327 -0
  87. data/src/com/zoho/crm/api/custom_views/custom_views_operations.rb +75 -0
  88. data/src/com/zoho/crm/api/custom_views/info.rb +156 -0
  89. data/src/com/zoho/crm/api/custom_views/range.rb +80 -0
  90. data/src/com/zoho/crm/api/custom_views/response_handler.rb +10 -0
  91. data/src/com/zoho/crm/api/custom_views/response_wrapper.rb +82 -0
  92. data/src/com/zoho/crm/api/custom_views/shared_details.rb +118 -0
  93. data/src/com/zoho/crm/api/custom_views/translation.rb +118 -0
  94. data/src/com/zoho/crm/api/dc/au_datacenter.rb +18 -0
  95. data/src/com/zoho/crm/api/dc/cn_datacenter.rb +18 -0
  96. data/src/com/zoho/crm/api/dc/datacenter.rb +20 -0
  97. data/src/com/zoho/crm/api/dc/eu_datacenter.rb +18 -0
  98. data/src/com/zoho/crm/api/dc/in_datacenter.rb +18 -0
  99. data/src/com/zoho/crm/api/dc/us_datacenter.rb +18 -0
  100. data/src/com/zoho/crm/api/exception/sdk_exception.rb +47 -0
  101. data/src/com/zoho/crm/api/fields/api_exception.rb +121 -0
  102. data/src/com/zoho/crm/api/fields/association_details.rb +80 -0
  103. data/src/com/zoho/crm/api/fields/auto_number.rb +99 -0
  104. data/src/com/zoho/crm/api/fields/crypt.rb +156 -0
  105. data/src/com/zoho/crm/api/fields/currency.rb +80 -0
  106. data/src/com/zoho/crm/api/fields/field.rb +956 -0
  107. data/src/com/zoho/crm/api/fields/fields_operations.rb +71 -0
  108. data/src/com/zoho/crm/api/fields/formula.rb +80 -0
  109. data/src/com/zoho/crm/api/fields/lookup_field.rb +80 -0
  110. data/src/com/zoho/crm/api/fields/module.rb +157 -0
  111. data/src/com/zoho/crm/api/fields/multi_select_lookup.rb +156 -0
  112. data/src/com/zoho/crm/api/fields/pick_list_value.rb +175 -0
  113. data/src/com/zoho/crm/api/fields/private.rb +99 -0
  114. data/src/com/zoho/crm/api/fields/related_details.rb +137 -0
  115. data/src/com/zoho/crm/api/fields/response_handler.rb +10 -0
  116. data/src/com/zoho/crm/api/fields/response_wrapper.rb +63 -0
  117. data/src/com/zoho/crm/api/fields/tool_tip.rb +80 -0
  118. data/src/com/zoho/crm/api/fields/unique.rb +61 -0
  119. data/src/com/zoho/crm/api/fields/view_type.rb +118 -0
  120. data/src/com/zoho/crm/api/files/action_handler.rb +10 -0
  121. data/src/com/zoho/crm/api/files/action_response.rb +10 -0
  122. data/src/com/zoho/crm/api/files/action_wrapper.rb +63 -0
  123. data/src/com/zoho/crm/api/files/api_exception.rb +125 -0
  124. data/src/com/zoho/crm/api/files/body_wrapper.rb +62 -0
  125. data/src/com/zoho/crm/api/files/file_body_wrapper.rb +64 -0
  126. data/src/com/zoho/crm/api/files/file_operations.rb +75 -0
  127. data/src/com/zoho/crm/api/files/response_handler.rb +10 -0
  128. data/src/com/zoho/crm/api/files/success_response.rb +121 -0
  129. data/src/com/zoho/crm/api/header.rb +10 -0
  130. data/src/com/zoho/crm/api/header_map.rb +55 -0
  131. data/src/com/zoho/crm/api/initializer.rb +192 -0
  132. data/src/com/zoho/crm/api/layouts/api_exception.rb +121 -0
  133. data/src/com/zoho/crm/api/layouts/layout.rb +272 -0
  134. data/src/com/zoho/crm/api/layouts/layouts_operations.rb +61 -0
  135. data/src/com/zoho/crm/api/layouts/properties.rb +100 -0
  136. data/src/com/zoho/crm/api/layouts/response_handler.rb +10 -0
  137. data/src/com/zoho/crm/api/layouts/response_wrapper.rb +63 -0
  138. data/src/com/zoho/crm/api/layouts/section.rb +233 -0
  139. data/src/com/zoho/crm/api/modules/action_handler.rb +10 -0
  140. data/src/com/zoho/crm/api/modules/action_response.rb +10 -0
  141. data/src/com/zoho/crm/api/modules/action_wrapper.rb +63 -0
  142. data/src/com/zoho/crm/api/modules/api_exception.rb +125 -0
  143. data/src/com/zoho/crm/api/modules/argument.rb +80 -0
  144. data/src/com/zoho/crm/api/modules/body_wrapper.rb +61 -0
  145. data/src/com/zoho/crm/api/modules/module.rb +882 -0
  146. data/src/com/zoho/crm/api/modules/modules_operations.rb +111 -0
  147. data/src/com/zoho/crm/api/modules/related_list_properties.rb +99 -0
  148. data/src/com/zoho/crm/api/modules/response_handler.rb +10 -0
  149. data/src/com/zoho/crm/api/modules/response_wrapper.rb +63 -0
  150. data/src/com/zoho/crm/api/modules/success_response.rb +121 -0
  151. data/src/com/zoho/crm/api/modules/territory.rb +99 -0
  152. data/src/com/zoho/crm/api/notes/action_handler.rb +10 -0
  153. data/src/com/zoho/crm/api/notes/action_response.rb +10 -0
  154. data/src/com/zoho/crm/api/notes/action_wrapper.rb +63 -0
  155. data/src/com/zoho/crm/api/notes/api_exception.rb +125 -0
  156. data/src/com/zoho/crm/api/notes/body_wrapper.rb +61 -0
  157. data/src/com/zoho/crm/api/notes/info.rb +118 -0
  158. data/src/com/zoho/crm/api/notes/note.rb +349 -0
  159. data/src/com/zoho/crm/api/notes/notes_operations.rb +219 -0
  160. data/src/com/zoho/crm/api/notes/response_handler.rb +10 -0
  161. data/src/com/zoho/crm/api/notes/response_wrapper.rb +82 -0
  162. data/src/com/zoho/crm/api/notes/success_response.rb +121 -0
  163. data/src/com/zoho/crm/api/notification/action_handler.rb +10 -0
  164. data/src/com/zoho/crm/api/notification/action_response.rb +10 -0
  165. data/src/com/zoho/crm/api/notification/action_wrapper.rb +63 -0
  166. data/src/com/zoho/crm/api/notification/api_exception.rb +125 -0
  167. data/src/com/zoho/crm/api/notification/body_wrapper.rb +61 -0
  168. data/src/com/zoho/crm/api/notification/info.rb +118 -0
  169. data/src/com/zoho/crm/api/notification/notification.rb +251 -0
  170. data/src/com/zoho/crm/api/notification/notification_operations.rb +164 -0
  171. data/src/com/zoho/crm/api/notification/response_handler.rb +10 -0
  172. data/src/com/zoho/crm/api/notification/response_wrapper.rb +82 -0
  173. data/src/com/zoho/crm/api/notification/success_response.rb +121 -0
  174. data/src/com/zoho/crm/api/org/action_response.rb +10 -0
  175. data/src/com/zoho/crm/api/org/api_exception.rb +123 -0
  176. data/src/com/zoho/crm/api/org/file_body_wrapper.rb +62 -0
  177. data/src/com/zoho/crm/api/org/license_details.rb +156 -0
  178. data/src/com/zoho/crm/api/org/org.rb +631 -0
  179. data/src/com/zoho/crm/api/org/org_operations.rb +49 -0
  180. data/src/com/zoho/crm/api/org/response_handler.rb +10 -0
  181. data/src/com/zoho/crm/api/org/response_wrapper.rb +63 -0
  182. data/src/com/zoho/crm/api/org/success_response.rb +121 -0
  183. data/src/com/zoho/crm/api/param.rb +10 -0
  184. data/src/com/zoho/crm/api/parameter_map.rb +54 -0
  185. data/src/com/zoho/crm/api/profiles/api_exception.rb +121 -0
  186. data/src/com/zoho/crm/api/profiles/category.rb +99 -0
  187. data/src/com/zoho/crm/api/profiles/permission_detail.rb +137 -0
  188. data/src/com/zoho/crm/api/profiles/profile.rb +290 -0
  189. data/src/com/zoho/crm/api/profiles/profiles_operations.rb +61 -0
  190. data/src/com/zoho/crm/api/profiles/response_handler.rb +10 -0
  191. data/src/com/zoho/crm/api/profiles/response_wrapper.rb +63 -0
  192. data/src/com/zoho/crm/api/profiles/section.rb +80 -0
  193. data/src/com/zoho/crm/api/query/api_exception.rb +121 -0
  194. data/src/com/zoho/crm/api/query/body_wrapper.rb +61 -0
  195. data/src/com/zoho/crm/api/query/query_operations.rb +35 -0
  196. data/src/com/zoho/crm/api/query/response_handler.rb +10 -0
  197. data/src/com/zoho/crm/api/query/response_wrapper.rb +84 -0
  198. data/src/com/zoho/crm/api/record/action_handler.rb +10 -0
  199. data/src/com/zoho/crm/api/record/action_response.rb +10 -0
  200. data/src/com/zoho/crm/api/record/action_wrapper.rb +63 -0
  201. data/src/com/zoho/crm/api/record/api_exception.rb +143 -0
  202. data/src/com/zoho/crm/api/record/body_wrapper.rb +156 -0
  203. data/src/com/zoho/crm/api/record/carry_over_tags.rb +99 -0
  204. data/src/com/zoho/crm/api/record/comment.rb +118 -0
  205. data/src/com/zoho/crm/api/record/consent.rb +185 -0
  206. data/src/com/zoho/crm/api/record/convert_action_handler.rb +10 -0
  207. data/src/com/zoho/crm/api/record/convert_action_response.rb +10 -0
  208. data/src/com/zoho/crm/api/record/convert_action_wrapper.rb +63 -0
  209. data/src/com/zoho/crm/api/record/convert_body_wrapper.rb +61 -0
  210. data/src/com/zoho/crm/api/record/criteria.rb +135 -0
  211. data/src/com/zoho/crm/api/record/deleted_record.rb +157 -0
  212. data/src/com/zoho/crm/api/record/deleted_records_handler.rb +10 -0
  213. data/src/com/zoho/crm/api/record/deleted_records_wrapper.rb +82 -0
  214. data/src/com/zoho/crm/api/record/download_handler.rb +10 -0
  215. data/src/com/zoho/crm/api/record/field.rb +2109 -0
  216. data/src/com/zoho/crm/api/record/file_body_wrapper.rb +66 -0
  217. data/src/com/zoho/crm/api/record/file_details.rb +327 -0
  218. data/src/com/zoho/crm/api/record/file_handler.rb +10 -0
  219. data/src/com/zoho/crm/api/record/info.rb +118 -0
  220. data/src/com/zoho/crm/api/record/inventory_line_items.rb +235 -0
  221. data/src/com/zoho/crm/api/record/lead_converter.rb +194 -0
  222. data/src/com/zoho/crm/api/record/line_item_product.rb +65 -0
  223. data/src/com/zoho/crm/api/record/line_tax.rb +118 -0
  224. data/src/com/zoho/crm/api/record/mass_update.rb +140 -0
  225. data/src/com/zoho/crm/api/record/mass_update_action_handler.rb +10 -0
  226. data/src/com/zoho/crm/api/record/mass_update_action_response.rb +10 -0
  227. data/src/com/zoho/crm/api/record/mass_update_action_wrapper.rb +63 -0
  228. data/src/com/zoho/crm/api/record/mass_update_body_wrapper.rb +156 -0
  229. data/src/com/zoho/crm/api/record/mass_update_response.rb +10 -0
  230. data/src/com/zoho/crm/api/record/mass_update_response_handler.rb +10 -0
  231. data/src/com/zoho/crm/api/record/mass_update_response_wrapper.rb +63 -0
  232. data/src/com/zoho/crm/api/record/mass_update_success_response.rb +121 -0
  233. data/src/com/zoho/crm/api/record/options.rb +10 -0
  234. data/src/com/zoho/crm/api/record/participants.rb +116 -0
  235. data/src/com/zoho/crm/api/record/pricing_details.rb +65 -0
  236. data/src/com/zoho/crm/api/record/record.rb +192 -0
  237. data/src/com/zoho/crm/api/record/record_operations.rb +757 -0
  238. data/src/com/zoho/crm/api/record/recurring_activity.rb +61 -0
  239. data/src/com/zoho/crm/api/record/remind_at.rb +61 -0
  240. data/src/com/zoho/crm/api/record/reminder.rb +80 -0
  241. data/src/com/zoho/crm/api/record/response_handler.rb +10 -0
  242. data/src/com/zoho/crm/api/record/response_wrapper.rb +82 -0
  243. data/src/com/zoho/crm/api/record/success_response.rb +161 -0
  244. data/src/com/zoho/crm/api/record/successful_convert.rb +101 -0
  245. data/src/com/zoho/crm/api/record/territory.rb +80 -0
  246. data/src/com/zoho/crm/api/related_lists/api_exception.rb +121 -0
  247. data/src/com/zoho/crm/api/related_lists/related_list.rb +251 -0
  248. data/src/com/zoho/crm/api/related_lists/related_lists_operations.rb +61 -0
  249. data/src/com/zoho/crm/api/related_lists/response_handler.rb +10 -0
  250. data/src/com/zoho/crm/api/related_lists/response_wrapper.rb +63 -0
  251. data/src/com/zoho/crm/api/related_records/action_handler.rb +10 -0
  252. data/src/com/zoho/crm/api/related_records/action_response.rb +10 -0
  253. data/src/com/zoho/crm/api/related_records/action_wrapper.rb +63 -0
  254. data/src/com/zoho/crm/api/related_records/api_exception.rb +125 -0
  255. data/src/com/zoho/crm/api/related_records/body_wrapper.rb +62 -0
  256. data/src/com/zoho/crm/api/related_records/file_body_wrapper.rb +64 -0
  257. data/src/com/zoho/crm/api/related_records/related_records_operations.rb +263 -0
  258. data/src/com/zoho/crm/api/related_records/response_handler.rb +10 -0
  259. data/src/com/zoho/crm/api/related_records/response_wrapper.rb +84 -0
  260. data/src/com/zoho/crm/api/related_records/success_response.rb +121 -0
  261. data/src/com/zoho/crm/api/request_proxy.rb +16 -0
  262. data/src/com/zoho/crm/api/roles/api_exception.rb +121 -0
  263. data/src/com/zoho/crm/api/roles/response_handler.rb +10 -0
  264. data/src/com/zoho/crm/api/roles/response_wrapper.rb +63 -0
  265. data/src/com/zoho/crm/api/roles/role.rb +195 -0
  266. data/src/com/zoho/crm/api/roles/roles_operations.rb +47 -0
  267. data/src/com/zoho/crm/api/sdk_config.rb +78 -0
  268. data/src/com/zoho/crm/api/share_records/action_handler.rb +10 -0
  269. data/src/com/zoho/crm/api/share_records/action_response.rb +10 -0
  270. data/src/com/zoho/crm/api/share_records/action_wrapper.rb +63 -0
  271. data/src/com/zoho/crm/api/share_records/api_exception.rb +129 -0
  272. data/src/com/zoho/crm/api/share_records/body_wrapper.rb +61 -0
  273. data/src/com/zoho/crm/api/share_records/delete_action_handler.rb +10 -0
  274. data/src/com/zoho/crm/api/share_records/delete_action_response.rb +10 -0
  275. data/src/com/zoho/crm/api/share_records/delete_action_wrapper.rb +63 -0
  276. data/src/com/zoho/crm/api/share_records/response_handler.rb +10 -0
  277. data/src/com/zoho/crm/api/share_records/response_wrapper.rb +83 -0
  278. data/src/com/zoho/crm/api/share_records/share_record.rb +157 -0
  279. data/src/com/zoho/crm/api/share_records/share_records_operations.rb +128 -0
  280. data/src/com/zoho/crm/api/share_records/shared_through.rb +100 -0
  281. data/src/com/zoho/crm/api/share_records/success_response.rb +123 -0
  282. data/src/com/zoho/crm/api/tags/action_handler.rb +10 -0
  283. data/src/com/zoho/crm/api/tags/action_response.rb +10 -0
  284. data/src/com/zoho/crm/api/tags/action_wrapper.rb +63 -0
  285. data/src/com/zoho/crm/api/tags/api_exception.rb +131 -0
  286. data/src/com/zoho/crm/api/tags/body_wrapper.rb +61 -0
  287. data/src/com/zoho/crm/api/tags/conflict_wrapper.rb +61 -0
  288. data/src/com/zoho/crm/api/tags/count_handler.rb +10 -0
  289. data/src/com/zoho/crm/api/tags/count_wrapper.rb +63 -0
  290. data/src/com/zoho/crm/api/tags/info.rb +80 -0
  291. data/src/com/zoho/crm/api/tags/merge_wrapper.rb +61 -0
  292. data/src/com/zoho/crm/api/tags/record_action_handler.rb +10 -0
  293. data/src/com/zoho/crm/api/tags/record_action_response.rb +10 -0
  294. data/src/com/zoho/crm/api/tags/record_action_wrapper.rb +120 -0
  295. data/src/com/zoho/crm/api/tags/response_handler.rb +10 -0
  296. data/src/com/zoho/crm/api/tags/response_wrapper.rb +82 -0
  297. data/src/com/zoho/crm/api/tags/success_response.rb +123 -0
  298. data/src/com/zoho/crm/api/tags/tag.rb +157 -0
  299. data/src/com/zoho/crm/api/tags/tags_operations.rb +387 -0
  300. data/src/com/zoho/crm/api/taxes/action_handler.rb +10 -0
  301. data/src/com/zoho/crm/api/taxes/action_response.rb +10 -0
  302. data/src/com/zoho/crm/api/taxes/action_wrapper.rb +63 -0
  303. data/src/com/zoho/crm/api/taxes/api_exception.rb +125 -0
  304. data/src/com/zoho/crm/api/taxes/body_wrapper.rb +61 -0
  305. data/src/com/zoho/crm/api/taxes/preference.rb +80 -0
  306. data/src/com/zoho/crm/api/taxes/response_handler.rb +10 -0
  307. data/src/com/zoho/crm/api/taxes/response_wrapper.rb +82 -0
  308. data/src/com/zoho/crm/api/taxes/success_response.rb +121 -0
  309. data/src/com/zoho/crm/api/taxes/tax.rb +137 -0
  310. data/src/com/zoho/crm/api/taxes/taxes_operations.rb +136 -0
  311. data/src/com/zoho/crm/api/territories/api_exception.rb +121 -0
  312. data/src/com/zoho/crm/api/territories/response_handler.rb +10 -0
  313. data/src/com/zoho/crm/api/territories/response_wrapper.rb +63 -0
  314. data/src/com/zoho/crm/api/territories/territories_operations.rb +47 -0
  315. data/src/com/zoho/crm/api/territories/territory.rb +234 -0
  316. data/src/com/zoho/crm/api/user_signature.rb +27 -0
  317. data/src/com/zoho/crm/api/users/action_handler.rb +10 -0
  318. data/src/com/zoho/crm/api/users/action_response.rb +10 -0
  319. data/src/com/zoho/crm/api/users/action_wrapper.rb +63 -0
  320. data/src/com/zoho/crm/api/users/api_exception.rb +125 -0
  321. data/src/com/zoho/crm/api/users/body_wrapper.rb +61 -0
  322. data/src/com/zoho/crm/api/users/customize_info.rb +156 -0
  323. data/src/com/zoho/crm/api/users/info.rb +118 -0
  324. data/src/com/zoho/crm/api/users/request_wrapper.rb +61 -0
  325. data/src/com/zoho/crm/api/users/response_handler.rb +10 -0
  326. data/src/com/zoho/crm/api/users/response_wrapper.rb +82 -0
  327. data/src/com/zoho/crm/api/users/shift.rb +80 -0
  328. data/src/com/zoho/crm/api/users/success_response.rb +121 -0
  329. data/src/com/zoho/crm/api/users/tab_theme.rb +80 -0
  330. data/src/com/zoho/crm/api/users/territory.rb +99 -0
  331. data/src/com/zoho/crm/api/users/theme.rb +156 -0
  332. data/src/com/zoho/crm/api/users/user.rb +696 -0
  333. data/src/com/zoho/crm/api/users/users_operations.rb +181 -0
  334. data/src/com/zoho/crm/api/util/api_http_connector.rb +112 -0
  335. data/src/com/zoho/crm/api/util/api_response.rb +16 -0
  336. data/src/com/zoho/crm/api/util/choice.rb +9 -0
  337. data/src/com/zoho/crm/api/util/common_api_handler.rb +236 -0
  338. data/src/com/zoho/crm/api/util/constants.rb +536 -0
  339. data/src/com/zoho/crm/api/util/converter.rb +213 -0
  340. data/src/com/zoho/crm/api/util/data_type_converter.rb +162 -0
  341. data/src/com/zoho/crm/api/util/downloader.rb +83 -0
  342. data/src/com/zoho/crm/api/util/form_data_converter.rb +168 -0
  343. data/src/com/zoho/crm/api/util/header_param_validator.rb +55 -0
  344. data/src/com/zoho/crm/api/util/json_converter.rb +726 -0
  345. data/src/com/zoho/crm/api/util/model.rb +5 -0
  346. data/src/com/zoho/crm/api/util/module_fields_handler.rb +78 -0
  347. data/src/com/zoho/crm/api/util/stream_wrapper.rb +37 -0
  348. data/src/com/zoho/crm/api/util/utility.rb +743 -0
  349. data/src/com/zoho/crm/api/variable_groups/api_exception.rb +121 -0
  350. data/src/com/zoho/crm/api/variable_groups/response_handler.rb +10 -0
  351. data/src/com/zoho/crm/api/variable_groups/response_wrapper.rb +63 -0
  352. data/src/com/zoho/crm/api/variable_groups/variable_group.rb +137 -0
  353. data/src/com/zoho/crm/api/variable_groups/variable_groups_operations.rb +66 -0
  354. data/src/com/zoho/crm/api/variables/action_handler.rb +10 -0
  355. data/src/com/zoho/crm/api/variables/action_response.rb +10 -0
  356. data/src/com/zoho/crm/api/variables/action_wrapper.rb +63 -0
  357. data/src/com/zoho/crm/api/variables/api_exception.rb +125 -0
  358. data/src/com/zoho/crm/api/variables/body_wrapper.rb +61 -0
  359. data/src/com/zoho/crm/api/variables/response_handler.rb +10 -0
  360. data/src/com/zoho/crm/api/variables/response_wrapper.rb +63 -0
  361. data/src/com/zoho/crm/api/variables/success_response.rb +121 -0
  362. data/src/com/zoho/crm/api/variables/variable.rb +173 -0
  363. data/src/com/zoho/crm/api/variables/variables_operations.rb +241 -0
  364. data/src/resources/JSONDetails.json +1 -0
  365. data/src/version.rb +3 -0
  366. metadata +395 -45
  367. data/lib/ZCRMSDK.rb +0 -14
  368. data/lib/ZCRMSDK/handler.rb +0 -3290
  369. data/lib/ZCRMSDK/oauth_client.rb +0 -253
  370. data/lib/ZCRMSDK/oauth_utility.rb +0 -161
  371. data/lib/ZCRMSDK/operations.rb +0 -1091
  372. data/lib/ZCRMSDK/org.rb +0 -174
  373. data/lib/ZCRMSDK/persistence.rb +0 -129
  374. data/lib/ZCRMSDK/request.rb +0 -83
  375. data/lib/ZCRMSDK/response.rb +0 -216
  376. data/lib/ZCRMSDK/restclient.rb +0 -65
  377. data/lib/ZCRMSDK/test.rb +0 -5746
  378. data/lib/ZCRMSDK/utility.rb +0 -309
  379. data/lib/ZCRMSDK/version.rb +0 -5
@@ -0,0 +1,213 @@
1
+ require 'base64'
2
+ require_relative 'constants'
3
+ require_relative 'utility'
4
+
5
+ module Util
6
+ class Converter
7
+ attr_accessor :common_api_handler
8
+ # This method is to process the API response.
9
+ # @param response [Object] A Object containing the API response contents or response.
10
+ # @param class_path [String] A String containing the expected method return type.
11
+ def get_response(response_json, class_path); end
12
+
13
+ # This abstract method is to construct the API request.
14
+ # @param request_instance [Object] An Object containing the class instance.
15
+ # @param class_path [String] A String containing the expected method return type.
16
+ # @param instanceNumber [Integer] An Integer containing the class instance list number.
17
+ # @return An Object representing the API request body object.
18
+ # @raise Exception
19
+ def form_request(request_instance, class_path, instance_no, member_details = nil); end
20
+
21
+ # This abstract method is to process the API response.
22
+ # @param response [Object] A Object containing the HttpResponse class instance.
23
+ # @param pack [String] A String containing the expected method return type.
24
+ # @return An Object representing the POJO class instance.
25
+ # @raise Exception
26
+ def get_wrapper_response(response, pack); end
27
+
28
+ # This abstract method is to construct the API request body.
29
+ # @param request [Object] A HttpEntityEnclosingRequestBase class instance.
30
+ # @param request_object A Object containing the API request body object.
31
+ # @raise Exception
32
+ def append_to_request(request, request_object); end
33
+
34
+ # Creates a Converter class instance with the CommonAPIHandler class instance.
35
+ # @param common_api_handler A CommonAPIHandler class instance.
36
+ def initialize(common_api_handler)
37
+ @common_api_handler = common_api_handler
38
+ end
39
+
40
+ # This method is to validate if the input values satisfy the constraints for the respective fields.
41
+ # @param class_name [String] A String containing the class name.
42
+ # @param member_name [String] A String containing the member name.
43
+ # @param key_details A Hash containing the key JSON details.
44
+ # @param value [Object[ An Object containing the key value.
45
+ # @param unique_values_map A Hash containing the construct objects.
46
+ # @param instance_number [Integer] An Integer containing the POJO class instance list number.
47
+ # @return A Boolean representing the key value is expected pattern, unique, length, and values.
48
+ # @raise SDKException
49
+ def value_checker(class_name, member_name, key_details, value, unique_values_map, instance_number)
50
+ error = {}
51
+
52
+ name = key_details[Constants::NAME]
53
+ type = key_details[Constants::TYPE]
54
+
55
+ var_type = nil
56
+ check = true
57
+
58
+ unless value.nil?
59
+ var_type = value.class.name
60
+ end
61
+
62
+ if Constants::DATA_TYPE.key? type
63
+ if value.is_a? Array
64
+ if key_details.key? Constants::STRUCTURE_NAME
65
+ structure_name = key_details[Constants::STRUCTURE_NAME]
66
+ index = 0
67
+ value.each do |data|
68
+ class_name = data.class.name
69
+ unless structure_name.downcase == Util::Utility.path_to_package(class_name).downcase
70
+ instance_number = index
71
+ type = Constants::LIST_NAMESPACE + '(' + structure_name + ')'
72
+ var_type = Constants::LIST_NAMESPACE + '(' + class_name + ')'
73
+ expected_list_type = false
74
+ check = false
75
+
76
+ break
77
+ end
78
+ index += 1
79
+ end
80
+ end
81
+ elsif !value.nil?
82
+ check = Util::Utility.check_data_type(value,type)
83
+ end
84
+ elsif (type.downcase != Constants::OBJECT.downcase)
85
+ if type.downcase != Util::Utility.path_to_package(var_type).downcase
86
+ check = false
87
+ end
88
+ end
89
+ if !check
90
+ error[Constants::ERROR_HASH_CLASS] = class_name
91
+
92
+ error[Constants::ERROR_HASH_FIELD] = member_name
93
+
94
+ error[Constants::INDEX] = instance_number
95
+
96
+ error[Constants::ERROR_HASH_EXPECTED_TYPE] = type
97
+
98
+ error[Constants::GIVEN_TYPE] = var_type
99
+
100
+ raise SDKException.new(Constants::TYPE_ERROR, nil, error, nil)
101
+ end
102
+
103
+ class_name = if class_name.include? Constants::DOUBLE_COLON
104
+ class_name.split(Constants::DOUBLE_COLON)[1]
105
+ else
106
+ class_name.split(Constants::DOT)[5]
107
+ end
108
+
109
+ if key_details.key?(Constants::VALUES) && (!key_details.key?(Constants::PICKLIST) || (key_details[Constants::PICKLIST] && Initializer.get_initializer.sdk_config.pick_list_validation))
110
+ value = value.value if value.is_a? Util::Choice
111
+ unless key_details[Constants::VALUES].include? value
112
+
113
+ unless instance_number.nil?
114
+ error[Constants::INDEX] = instance_number
115
+ end
116
+
117
+ error[Constants::ERROR_HASH_CLASS] = class_name
118
+
119
+ error[Constants::GIVEN_VALUE] = value
120
+
121
+ error[Constants::ERROR_HASH_FIELD] = member_name
122
+
123
+ error[Constants::ACCEPTED_VALUES] = key_details[Constants::VALUES]
124
+
125
+ raise SDKException.new(Constants::UNACCEPTED_VALUES_ERROR, nil, error, nil)
126
+ end
127
+ end
128
+
129
+ if key_details.key?(Constants::MIN_LENGTH) || key_details.key?(Constants::MAX_LENGTH)
130
+ count = value.length
131
+ if count < key_details[Constants::MIN_LENGTH]
132
+ error[Constants::ERROR_HASH_CLASS] = class_name
133
+
134
+ error[Constants::GIVEN_LENGTH] = count
135
+
136
+ error[Constants::ERROR_HASH_FIELD] = member_name
137
+
138
+ error[Constants::ERROR_HASH_MINIMUM_LENGTH] = key_details[Constants::MIN_LENGTH]
139
+
140
+ raise SDKException.new(Constants::MINIMUM_LENGTH_ERROR, nil, error, nil)
141
+
142
+ end
143
+
144
+ if count > key_details[Constants::MAX_LENGTH]
145
+ error[Constants::ERROR_HASH_CLASS] = class_name
146
+
147
+ error[Constants::ERROR_HASH_FIELD] = member_name
148
+
149
+ error[Constants::GIVEN_LENGTH] = count
150
+
151
+ error[Constants::ERROR_HASH_MAXIMUM_LENGTH] = key_details[Constants::MAX_LENGTH]
152
+
153
+ raise SDKException.new(Constants::MAXIMUM_LENGTH_ERROR, nil, error, nil)
154
+
155
+ end
156
+ end
157
+
158
+ if key_details.key? Constants::REGEX
159
+ if value.match(key_details[Constants::REGEX]).nil?
160
+ error[Constants::INSTANCE_NUMBER] = instance_number
161
+
162
+ error[Constants::ERROR_HASH_CLASS] = class_name
163
+
164
+ error[Constants::ERROR_HASH_FIELD] = member_name
165
+
166
+ raise SDKException.new(Constants::REGEX_MISMATCH_ERROR, nil, error, nil)
167
+
168
+ end
169
+
170
+ end
171
+
172
+ if key_details.key? Constants::UNIQUE
173
+
174
+ unique_values_map[name] = [] unless unique_values_map.key? name
175
+
176
+ if unique_values_map[name].include? value
177
+ error[Constants::FIRST_INDEX] = unique_values_map[name].find_index(value) + 1
178
+
179
+ error[Constants::NEXT_INDEX] = instance_number
180
+
181
+ error[Constants::ERROR_HASH_CLASS] = class_name
182
+
183
+ error[Constants::ERROR_HASH_FIELD] = member_name
184
+
185
+ raise SDKException.new(Constants::UNIQUE_KEY_ERROR, nil, error, nil)
186
+
187
+ else
188
+ unique_values_map[name].push(value)
189
+ end
190
+ end
191
+
192
+ true
193
+ end
194
+
195
+ # This method to get the module field JSON details file path.
196
+ # @return A String representing the module field JSON details file path.
197
+ def get_record_json_file_path
198
+ initializer = Initializer.get_initializer
199
+
200
+ file_name = initializer.user.email
201
+
202
+ file_name = file_name[0..file_name.index(Constants::AT) - 1] + initializer.environment.url
203
+
204
+ bytes = file_name.force_encoding('utf-8').bytes
205
+
206
+ str = Base64.encode64(bytes.pack('"C*"'))
207
+
208
+ str = str.chomp
209
+
210
+ File.join(initializer.resources_path + '/' + Constants::RESOURCES + '/' + str + '.json')
211
+ end
212
+ end
213
+ end
@@ -0,0 +1,162 @@
1
+ require 'date'
2
+ require 'time'
3
+ require 'monitor'
4
+ require_relative 'constants'
5
+
6
+ module Util
7
+ # This class converts JSON value to the expected data type.
8
+ class DataTypeConverter
9
+ @@sync_lock = Monitor.new
10
+
11
+ @@pre_converter_map = {}
12
+
13
+ @@post_converter_map = {}
14
+
15
+ # This method is to initialize the PreConverter and PostConverter lambda functions.
16
+ def self.init
17
+ return unless @@pre_converter_map.empty? && @@post_converter_map.empty?
18
+
19
+ @@sync_lock.synchronize do
20
+ add_to_map(DateTime.name,
21
+ lambda do |obj|
22
+ return DateTime.parse(Time.parse(obj).localtime.to_s)
23
+ end,
24
+ lambda do |obj|
25
+ return obj.strftime('%FT%T%:z')
26
+ end)
27
+
28
+ add_to_map(Date.name,
29
+ lambda do |obj|
30
+ return Date.parse(obj)
31
+ end,
32
+ lambda do |obj|
33
+ return obj.strftime('%F')
34
+ end)
35
+ add_to_map(Constants::DATETIME_NAMESPACE,
36
+ lambda do |obj|
37
+ return DateTime.parse(Time.parse(obj).localtime.to_s)
38
+ end,
39
+ lambda do |obj|
40
+ return obj.strftime('%FT%T%:z')
41
+ end)
42
+
43
+ add_to_map(Constants::DATE_NAMESPACE,
44
+ lambda do |obj|
45
+ return Date.parse(obj)
46
+ end,
47
+ lambda do |obj|
48
+ return obj.strftime('%F')
49
+ end)
50
+
51
+ string = lambda do |obj|
52
+ return obj.to_s
53
+ end
54
+ add_to_map(String.name, string, string)
55
+ add_to_map(Constants::STRING, string, string)
56
+
57
+ integer = lambda do |obj|
58
+ if obj == Constants::NULL_VALUE
59
+ return nil
60
+ end
61
+ return obj.to_i
62
+ end
63
+
64
+ add_to_map(Integer.name, integer, integer)
65
+ add_to_map(Constants::INTEGER, integer, integer)
66
+ add_to_map(Constants::LONG, integer, integer)
67
+
68
+ pre_convert_object = lambda do |obj|
69
+ return pre_convert_object_data(obj)
70
+ end
71
+
72
+ post_convert_object = lambda do |obj|
73
+ return post_convert_object_data(obj)
74
+ end
75
+
76
+ add_to_map(Constants::OBJECT,pre_convert_object, post_convert_object)
77
+
78
+ bool = lambda do |obj|
79
+ return obj
80
+ end
81
+
82
+ add_to_map(Constants::BOOLEAN, bool, bool)
83
+
84
+ float = lambda do |obj|
85
+ return obj.to_f
86
+ end
87
+
88
+ add_to_map(Float.name, float, float)
89
+ add_to_map(Constants::FLOAT, float, float)
90
+ add_to_map(Constants::DOUBLE, float, float)
91
+ end
92
+ end
93
+
94
+ # This method is to add PreConverter and PostConverter instance.
95
+ # @param name [String] A String containing the data type class name.
96
+ # @param pre_converter [Object] A PreConverter instance.
97
+ # @param post_converter [Object] A PostConverter instance.
98
+ def self.add_to_map(name, pre_converter, post_converter)
99
+ @@pre_converter_map[name] = pre_converter
100
+
101
+ @@post_converter_map[name] = post_converter
102
+ end
103
+
104
+ # This method is to convert JSON value to expected data value.
105
+ # @param obj [Object] A Object containing the JSON value.
106
+ # @param type [String] A String containing the expected method return type.
107
+ # @return A Value containing the expected data value.
108
+ # @raise Exception
109
+ def self.pre_convert(obj, type)
110
+ init
111
+ @@pre_converter_map[type].call(obj)
112
+ end
113
+
114
+ # This method is to convert Java data to JSON data value.
115
+ # @param obj [Object] R containing the Java data value.
116
+ # @param type [String] A String containing the expected method return type.
117
+ # @return An Object containing the expected data value.
118
+ # @raise Exception
119
+ def self.post_convert(obj, type)
120
+ init
121
+ @@post_converter_map[type].call(obj)
122
+ end
123
+
124
+ def self.pre_convert_object_data(obj)
125
+ return obj
126
+ end
127
+
128
+ def self.post_convert_object_data(obj)
129
+ if obj.nil?
130
+ return nil
131
+ end
132
+
133
+ if obj.is_a? DateTime
134
+ return DataTypeConverter.post_convert(obj, Constants::DATETIME_NAMESPACE)
135
+ end
136
+
137
+ if obj.is_a? Date
138
+ return DataTypeConverter.post_convert(obj, Constants::DATE_NAMESPACE)
139
+ end
140
+
141
+ if obj.is_a? Array
142
+ values = []
143
+ unless obj.empty?
144
+ obj.each do |value|
145
+ values.push(DataTypeConverter.post_convert_object_data(value))
146
+ end
147
+ end
148
+ return values
149
+ elsif obj.is_a? Hash
150
+ map_instance = {}
151
+ unless obj.empty?
152
+ obj.each do |key, value|
153
+ map_instance[key] = DataTypeConverter.post_convert_object_data(value)
154
+ end
155
+ end
156
+ return map_instance
157
+ else
158
+ return obj
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,83 @@
1
+ require_relative 'converter'
2
+ require_relative 'stream_wrapper'
3
+ require_relative 'constants'
4
+ module Util
5
+ # This class is to process the download file and stream response.
6
+ class Downloader < Converter
7
+ attr_accessor :unique_hash
8
+
9
+ def initialize(common_api_handler)
10
+ @unique_hash = {}
11
+
12
+ super(common_api_handler)
13
+ end
14
+
15
+ def append_to_request(request, request_object); end
16
+
17
+ def form_request(request_instance, class_path, member_json_details = nil); end
18
+
19
+ def get_wrapped_response(response, class_path)
20
+ get_response(response, class_path)
21
+ end
22
+
23
+ def get_response(response_object, class_path)
24
+ require_relative '../initializer'
25
+
26
+ json_details = Initializer.json_details
27
+
28
+ if class_path.to_s.include? Constants::DOUBLE_COLON
29
+ class_path_split = class_path.to_s.split(Constants::DOUBLE_COLON)
30
+ module_name = Utility.classname_to_filename(class_path_split[0])
31
+ file_name = Utility.classname_to_filename(class_path_split[1])
32
+ else
33
+ class_path_split = class_path.to_s.split(Constants::DOT)
34
+ module_name = class_path_split[-2]
35
+ file_name = Utility.classname_to_filename(class_path_split[-1])
36
+ end
37
+
38
+ require_relative '../' + module_name + '/' + file_name
39
+
40
+ package_name = Utility.path_to_package(class_path)
41
+ class_details = json_details[package_name]
42
+
43
+ if class_details.key?(Constants::INTERFACE) && !class_details[Constants::INTERFACE].nil? && class_details[Constants::INTERFACE]
44
+ classes = class_details[Constants::CLASSES]
45
+ classes.each do |class_name|
46
+ return get_response(response_object, class_name) if class_name.include? Constants::FILEBODYWRAPPER
47
+ end
48
+ return nil
49
+ else
50
+
51
+ instance = if class_path.is_a? String
52
+
53
+ if class_path.include? Constants::DOUBLE_COLON
54
+ Object.const_get(class_path).new
55
+ else
56
+ Object.const_get(Utility.class_to_load(class_path)).new
57
+ end
58
+ else
59
+ Object.const_get(Utility.class_to_load(class_path.to_s)).new
60
+ end
61
+
62
+ class_details.each do |member_name, member_json_details|
63
+ type = member_json_details[Constants::TYPE]
64
+
65
+ if type.downcase == Constants::STREAM_WRAPPER_CLASS_PATH.downcase
66
+ file_name = response_object.to_hash[Constants::CONTENT_DISPOSITION][0].split('=')[1]
67
+
68
+ file_name = file_name.split("''")[1] if file_name.include? "''"
69
+
70
+ file_name = file_name.gsub('"', '') if file_name.include? '"'
71
+
72
+ file_instance = Util::StreamWrapper.new(file_name, response_object.body)
73
+ instance_value = file_instance
74
+ end
75
+
76
+ instance.instance_variable_set(Constants::AT + member_name, instance_value)
77
+ end
78
+ end
79
+
80
+ instance
81
+ end
82
+ end
83
+ end