ZCRMSDK 1.0.5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (378) 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 +69 -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 +677 -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 +235 -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 +111 -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 +235 -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 +167 -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 +727 -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 +393 -42
  367. data/lib/ZCRMSDK.rb +0 -14
  368. data/lib/ZCRMSDK/handler.rb +0 -3299
  369. data/lib/ZCRMSDK/oauth_client.rb +0 -257
  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/utility.rb +0 -310
  378. data/lib/ZCRMSDK/version.rb +0 -5
data/lib/ZCRMSDK/org.rb DELETED
@@ -1,174 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'handler'
4
- require_relative 'utility'
5
- require_relative 'operations'
6
- module ZCRMSDK
7
- module Org
8
- # THIS CLASS IS USED TO STORE AND EXECUTE ORGANIZATION RELATED FUNCTIONALITIES
9
- class ZCRMOrganization
10
- attr_accessor :users_license_purchased, :photo_id, :privacy_settings, :zia_portal_id, :currency, :company_name, :org_id, :alias_aka, :primary_zuid, :zgid, :primary_email, :website, :mobile, :phone, :employee_count, :description, :time_zone, :iso_code, :currency_locale, :currency_symbol, :street, :state, :city, :country, :zip_code, :country_code, :fax, :mc_status, :is_gapps_enabled, :paid_expiry, :trial_type, :trial_expiry, :is_paid_account, :paid_type
11
- def initialize(org_name = nil, org_id = nil)
12
- @currency = nil
13
- @zia_portal_id = nil
14
- @privacy_settings = nil
15
- @photo_id = nil
16
- @company_name = org_name
17
- @org_id = org_id
18
- @alias_aka = nil
19
- @primary_zuid = nil
20
- @zgid = nil
21
- @primary_email = nil
22
- @website = nil
23
- @mobile = nil
24
- @phone = nil
25
- @employee_count = nil
26
- @description = nil
27
- @time_zone = nil
28
- @iso_code = nil
29
- @currency_locale = nil
30
- @currency_symbol = nil
31
- @street = nil
32
- @state = nil
33
- @city = nil
34
- @country = nil
35
- @zip_code = nil
36
- @country_code = nil
37
- @fax = nil
38
- @mc_status = nil
39
- @is_gapps_enabled = nil
40
- @paid_expiry = nil
41
- @trial_type = nil
42
- @trial_expiry = nil
43
- @is_paid_account = nil
44
- @paid_type = nil
45
- @users_license_purchased = nil
46
- end
47
-
48
- def self.get_instance(org_name = nil, org_id = nil)
49
- ZCRMOrganization.new(org_name, org_id)
50
- end
51
-
52
- def get_user(user_id)
53
- Handler::OrganizationAPIHandler.get_instance.get_user(user_id)
54
- end
55
-
56
- def get_current_user
57
- Handler::OrganizationAPIHandler.get_instance.get_current_user
58
- end
59
-
60
- def get_all_users(page=1,per_page=200)
61
- Handler::OrganizationAPIHandler.get_instance.get_all_users(page,per_page)
62
- end
63
-
64
- def get_all_active_users(page=1,per_page=200)
65
- Handler::OrganizationAPIHandler.get_instance.get_all_active_users(page,per_page)
66
- end
67
-
68
- def get_all_deactive_users(page=1,per_page=200)
69
- Handler::OrganizationAPIHandler.get_instance.get_all_deactive_users(page,per_page)
70
- end
71
-
72
- def get_all_confirmed_users(page=1,per_page=200)
73
- Handler::OrganizationAPIHandler.get_instance.get_all_confirmed_users(page,per_page)
74
- end
75
-
76
- def get_all_not_confirmed_users(page=1,per_page=200)
77
- Handler::OrganizationAPIHandler.get_instance.get_all_not_confirmed_users(page,per_page)
78
- end
79
-
80
- def get_all_deleted_users(page=1,per_page=200)
81
- Handler::OrganizationAPIHandler.get_instance.get_all_deleted_users(page,per_page)
82
- end
83
-
84
- def get_all_active_confirmed_users(page=1,per_page=200)
85
- Handler::OrganizationAPIHandler.get_instance.get_all_active_confirmed_users(page,per_page)
86
- end
87
-
88
- def get_all_admin_users(page=1,per_page=200)
89
- Handler::OrganizationAPIHandler.get_instance.get_all_admin_users(page,per_page)
90
- end
91
-
92
- def get_all_active_confirmed_admin_users(page=1,per_page=200)
93
- Handler::OrganizationAPIHandler.get_instance.get_all_active_confirmed_admin_users(page,per_page)
94
- end
95
-
96
- def get_all_profiles
97
- Handler::OrganizationAPIHandler.get_instance.get_all_profiles
98
- end
99
-
100
- def get_profile(profile_id)
101
- Handler::OrganizationAPIHandler.get_instance.get_profile(profile_id)
102
- end
103
-
104
- def get_all_roles
105
- Handler::OrganizationAPIHandler.get_instance.get_all_roles
106
- end
107
-
108
- def get_role(role_id)
109
- Handler::OrganizationAPIHandler.get_instance.get_role(role_id)
110
- end
111
-
112
- def create_user(user_instance)
113
- Handler::OrganizationAPIHandler.get_instance.create_user(user_instance)
114
- end
115
-
116
- def update_user(user_instance)
117
- Handler::OrganizationAPIHandler.get_instance.update_user(user_instance)
118
- end
119
-
120
- def delete_user(user_id)
121
- Handler::OrganizationAPIHandler.get_instance.delete_user(user_id)
122
- end
123
-
124
- def get_organization_taxes
125
- Handler::OrganizationAPIHandler.get_instance.get_organization_taxes
126
- end
127
-
128
- def get_organization_tax(org_tax_id)
129
- Handler::OrganizationAPIHandler.get_instance.get_organization_tax(org_tax_id)
130
- end
131
-
132
- def search_users_by_criteria(criteria, type = nil,page=1,per_page=200)
133
- Handler::OrganizationAPIHandler.get_instance.search_users_by_criteria(criteria, type,page,per_page)
134
- end
135
-
136
- def create_organization_taxes(orgtax_instances)
137
- Handler::OrganizationAPIHandler.get_instance.create_organization_taxes(orgtax_instances)
138
- end
139
-
140
- def update_organization_taxes(orgtax_instances)
141
- Handler::OrganizationAPIHandler.get_instance.update_organization_taxes(orgtax_instances)
142
- end
143
-
144
- def delete_organization_taxes(orgtax_ids)
145
- Handler::OrganizationAPIHandler.get_instance.delete_organization_taxes(orgtax_ids)
146
- end
147
-
148
- def delete_organization_tax(orgtax_id)
149
- Handler::OrganizationAPIHandler.get_instance.delete_organization_tax(orgtax_id)
150
- end
151
- def get_notes(sort_by=nil,sort_order=nil,page=1,per_page=200)
152
- Handler::OrganizationAPIHandler.get_instance.get_notes(sort_by,sort_order,page,per_page)
153
- end
154
- def create_notes(notes_instances)
155
- Handler::OrganizationAPIHandler.get_instance.create_notes(notes_instances)
156
- end
157
- def delete_notes(notes_ids)
158
- Handler::OrganizationAPIHandler.get_instance.delete_notes(notes_ids)
159
- end
160
- def get_variable_groups
161
- Handler::VariableGroupAPIHandler.get_instance.get_variable_groups
162
- end
163
- def get_variables
164
- Handler::VariableAPIHandler.get_instance.get_variables
165
- end
166
- def create_variables(variable_instances)
167
- Handler::VariableAPIHandler.get_instance.create_variables(variable_instances)
168
- end
169
- def update_variables(variable_instances)
170
- Handler::VariableAPIHandler.get_instance.update_variables(variable_instances)
171
- end
172
- end
173
- end
174
- end
@@ -1,129 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'oauth_utility'
4
- require_relative 'oauth_client'
5
- module ZCRMSDK
6
- module Persistence
7
- # THIS CLASS IS USED TO STORE, RETRIEVE, DELETE TOKENS IN DEFAULT DB
8
- class ZohoOAuthPersistenceHandler
9
- def initialize; end
10
-
11
- def self.get_instance
12
- ZohoOAuthPersistenceHandler.new
13
- end
14
-
15
- def save_oauth_tokens(oauth_tokens)
16
- delete_oauth_tokens(oauth_tokens.user_identifier)
17
- con = Mysql2::Client.new(host: $OAUTH_CONFIG_PROPERTIES['db_address'], username: $OAUTH_CONFIG_PROPERTIES['db_username'], password: $OAUTH_CONFIG_PROPERTIES['db_password'], database: 'zohooauth', port: $OAUTH_CONFIG_PROPERTIES['db_port'])
18
- con.query("insert into oauthtokens(useridentifier,accesstoken,refreshtoken,expirytime) values('#{oauth_tokens.user_identifier}','#{oauth_tokens.access_token}','#{oauth_tokens.refresh_token}',#{oauth_tokens.expiry_time})")
19
- con.close
20
- rescue Mysql2::Error => e
21
- Utility::SDKLogger.add_log(e.error, OAuthUtility::ZohoOAuthConstants::ERROR, e)
22
- ensure
23
- con.close
24
- end
25
-
26
- def get_oauth_tokens(user_identifier)
27
- con = Mysql2::Client.new(host: $OAUTH_CONFIG_PROPERTIES['db_address'], username: $OAUTH_CONFIG_PROPERTIES['db_username'], password: $OAUTH_CONFIG_PROPERTIES['db_password'], database: 'zohooauth', port: $OAUTH_CONFIG_PROPERTIES['db_port'])
28
- query = "select * from oauthtokens where useridentifier='#{user_identifier}'"
29
- rs = con.query(query)
30
- oauth_tokens = nil
31
- rs.each do |row|
32
- oauth_tokens = OAuthClient::ZohoOAuthTokens.get_instance(row['refreshtoken'], row['accesstoken'], row['expirytime'], user_identifier)
33
- con.close
34
- return oauth_tokens
35
- end
36
- raise OAuthUtility::ZohoOAuthException.get_instance('get_oauth_tokens', 'no such email id - ' + user_identifier + ' present in the DB', 'Exception occured while fetching accesstoken from Grant Token', OAuthUtility::ZohoOAuthConstants::ERROR)
37
- rescue Mysql2::Error => e
38
- Utility::SDKLogger.add_log(e.error, OAuthUtility::ZohoOAuthConstants::ERROR, e)
39
- ensure
40
- con.close
41
- end
42
-
43
- def delete_oauth_tokens(user_identifier)
44
- con = Mysql2::Client.new(host: $OAUTH_CONFIG_PROPERTIES['db_address'], username: $OAUTH_CONFIG_PROPERTIES['db_username'], password: $OAUTH_CONFIG_PROPERTIES['db_password'], database: 'zohooauth', port: $OAUTH_CONFIG_PROPERTIES['db_port'])
45
- delete_query = "delete from oauthtokens where useridentifier='#{user_identifier}'"
46
- con.query(delete_query)
47
- con.close
48
- rescue Mysql2::Error => e
49
- Utility::SDKLogger.add_log(e.error, OAuthUtility::ZohoOAuthConstants::ERROR, e)
50
- ensure
51
- con.close
52
- end
53
- end
54
- # THIS CLASS IS USED TO STORE, RETRIEVE, DELETE TOKENS IN FILE
55
- class ZohoOAuthFilePersistenceHandler
56
- def initialize; end
57
-
58
- def self.get_instance
59
- ZohoOAuthFilePersistenceHandler.new
60
- end
61
-
62
- def save_oauth_tokens(oauth_tokens)
63
- unless File.exist?($OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt')
64
- file_obj = File.new($OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt', 'w')
65
- file_obj.close
66
- end
67
- delete_oauth_tokens(oauth_tokens.user_identifier)
68
- arr = []
69
- path = $OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt'
70
- file_obj = File.open(path, 'r')
71
- serialized = file_obj.read
72
- file_obj.close
73
- arr = Marshal.load(serialized) unless serialized.nil? || serialized.empty?
74
- arr.push(oauth_tokens)
75
- tokens = Marshal.dump(arr)
76
- file_obj = File.open(path, "w:#{tokens.encoding.to_s}")
77
- file_obj.write(tokens)
78
- file_obj.close
79
- end
80
-
81
- def get_oauth_tokens(user_identifier)
82
- if !File.exist?($OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt')
83
- raise OAuthUtility::ZohoOAuthException.get_instance('get_oauth_tokens', 'file does not exist!generate the access token!', 'Error occured while getting access token', OAuthUtility::ZohoOAuthConstants::ERROR)
84
- end
85
-
86
- path = $OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt'
87
- file_obj = File.open(path, 'r')
88
- serialized = file_obj.read
89
- file_obj.close
90
- if serialized.empty? || serialized.nil?
91
- raise OAuthUtility::ZohoOAuthException.get_instance('get_oauth_tokens', 'no tokens found!generate the access token!', 'Error occured while getting access token', OAuthUtility::ZohoOAuthConstants::ERROR)
92
- end
93
-
94
- deserialized = Marshal.load(serialized)
95
- deserialized.each do |token|
96
- return token if token.user_identifier == user_identifier
97
- end
98
- raise OAuthUtility::ZohoOAuthException.get_instance('get_oauth_tokens', 'no such' + user_identifier.to_s + 'present in the File', 'Exception occured while fetching accesstoken from Grant Token', OAuthUtility::ZohoOAuthConstants::ERROR)
99
- end
100
-
101
- def delete_oauth_tokens(user_identifier)
102
- path = $OAUTH_CONFIG_PROPERTIES[OAuthUtility::ZohoOAuthConstants::TOKEN_PERSISTENCE_PATH].dup + '/zcrm_oauthtokens.txt'
103
- file_obj = File.open(path, 'r')
104
- serialized = file_obj.read
105
- file_obj.close
106
-
107
- return if serialized.empty? || serialized.nil?
108
-
109
- found = false
110
- i = 0
111
- deserialized = Marshal.load(serialized)
112
- deserialized.each do |token|
113
- if token.user_identifier == user_identifier
114
- found = true
115
- break
116
- end
117
- i += 1
118
- end
119
- if found
120
- deserialized.delete_at(i)
121
- tokens = Marshal.dump(deserialized)
122
- file_obj = File.open(path, "w:#{tokens.encoding.to_s}")
123
- file_obj.write(tokens)
124
- file_obj.close
125
- end
126
- end
127
- end
128
- end
129
- end
@@ -1,83 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'utility'
4
- require_relative 'response'
5
- module ZCRMSDK
6
- module Request
7
- # THIS CLASS IS USED TO AUTHENTICATE AND CONSTRUCT API REQUEST
8
- class APIRequest
9
- def initialize(api_handler_ins)
10
- construct_api_url
11
- @url += api_handler_ins.request_url_path
12
- @url = 'https://' + @url unless @url.start_with?('http')
13
- @request_body = api_handler_ins.request_body
14
- @request_headers = api_handler_ins.request_headers
15
- @request_params = api_handler_ins.request_params
16
- @request_method = api_handler_ins.request_method
17
- @request_api_key = api_handler_ins.request_api_key
18
- end
19
-
20
- def self.get_instance(api_handler_ins)
21
- APIRequest.new(api_handler_ins)
22
- end
23
-
24
- def construct_api_url
25
- hit_sandbox = ZCRMSDK::Utility::ZCRMConfigUtil.get_config_value(ZCRMSDK::Utility::APIConstants::SANDBOX)
26
- url = ZCRMSDK::Utility::ZCRMConfigUtil.get_api_base_url
27
- if hit_sandbox == 'true'
28
- url = url.sub('www.', 'sandbox.')
29
- end
30
- @url = url + '/crm/' + ZCRMSDK::Utility::ZCRMConfigUtil.get_api_version + '/'
31
- end
32
-
33
- def authenticate_request
34
- access_token = ZCRMSDK::Utility::ZCRMConfigUtil.get_instance.get_access_token
35
- if @request_headers.nil?
36
- @request_headers = { ZCRMSDK::Utility::APIConstants::AUTHORIZATION => ZCRMSDK::Utility::APIConstants::OAUTH_HEADER_PREFIX.dup + access_token }
37
- else
38
- @request_headers[ZCRMSDK::Utility::APIConstants::AUTHORIZATION] = ZCRMSDK::Utility::APIConstants::OAUTH_HEADER_PREFIX.dup + access_token
39
- end
40
- @request_headers['User-Agent'] = 'ZohoCRM Ruby SDK'
41
- end
42
-
43
- def get_api_response
44
- authenticate_request
45
- connector = ZCRMSDK::Utility::ZohoHTTPConnector.get_instance(@url, @request_params, @request_headers, @request_body.to_json, @request_method, @request_api_key, false)
46
- response = connector.trigger_request
47
- Response::APIResponse.get_instance(response, response.code.to_i, @url, @request_api_key)
48
- end
49
-
50
- def get_bulk_api_response
51
- authenticate_request
52
- connector = ZCRMSDK::Utility::ZohoHTTPConnector.get_instance(@url, @request_params, @request_headers, @request_body.to_json, @request_method, @request_api_key, true)
53
- response = connector.trigger_request
54
- Response::BulkAPIResponse.get_instance(response, response.code.to_i, @url, @request_api_key)
55
- end
56
-
57
- def upload_file(file_path)
58
- authenticate_request
59
- form_data = [['file', File.open(file_path)]]
60
- connector = ZCRMSDK::Utility::ZohoHTTPConnector.get_instance(@url, @request_params, @request_headers, @request_body, @request_method, @request_api_key, false, form_data)
61
- response = connector.trigger_request
62
- Response::APIResponse.get_instance(response, response.code.to_i, @url, @request_api_key)
63
- end
64
-
65
- def upload_link_as_attachment(link_url)
66
- authenticate_request
67
- form_data = [['attachmentUrl', link_url]]
68
- connector = ZCRMSDK::Utility::ZohoHTTPConnector.get_instance(@url, @request_params, @request_headers, @request_body, @request_method, @request_api_key, false, form_data)
69
- response = connector.trigger_request
70
- Response::APIResponse.get_instance(response, response.code.to_i, @url, @request_api_key)
71
- end
72
-
73
- def download_file
74
- authenticate_request
75
- connector = ZCRMSDK::Utility::ZohoHTTPConnector.get_instance(@url, @request_params, @request_headers, @request_body, @request_method, @request_api_key, false)
76
- response = connector.trigger_request
77
- file_response = Response::FileAPIResponse.get_instance(response, response.code.to_i, @url)
78
- file_response.set_file_content
79
- file_response
80
- end
81
- end
82
- end
83
- end
@@ -1,216 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'utility'
4
- require 'json'
5
- module ZCRMSDK
6
- module Response
7
- # THIS CLASS IS USED TO STORE DETAILS ABOUT THE API RESPONSE , PROCESS JSON AND HANDLE FAULTY RESPONSES
8
- class CommonAPIResponse
9
- attr_accessor :response_json, :response_headers, :response, :status_code, :api_key, :url, :data, :status, :code, :message, :details
10
- def initialize(response, status_code, url, api_key = nil)
11
- @response_json = nil
12
- @response_headers = nil
13
- @response = response
14
- @status_code = status_code
15
- @api_key = api_key
16
- @url = url
17
- @data = nil
18
- @status = nil
19
- @code = nil
20
- @message = nil
21
- @details = nil
22
- set_response_json
23
- process_response
24
- end
25
-
26
- def self.get_instance(response, status_code, url, api_key = nil)
27
- CommonAPIResponse.new(response, status_code, url, api_key)
28
- end
29
-
30
- def set_response_json
31
- if (@status_code != Utility::APIConstants::RESPONSECODE_NO_CONTENT) && (@status_code != Utility::APIConstants::RESPONSECODE_NOT_MODIFIED)
32
- @response_json = JSON.parse(@response.body)
33
- else
34
- @response_json = {}
35
- @response_headers = {}
36
- return
37
- end
38
- @response_headers = @response.to_hash
39
- end
40
-
41
- def process_response
42
- if Utility::APIConstants::FAULTY_RESPONSE_CODES.include?(@status_code)
43
- handle_faulty_responses
44
- elsif (@status_code == Utility::APIConstants::RESPONSECODE_ACCEPTED) || (@status_code == Utility::APIConstants::RESPONSECODE_OK) || (@status_code == Utility::APIConstants::RESPONSECODE_CREATED)
45
- process_response_data
46
- end
47
- end
48
-
49
- def handle_faulty_responses
50
- nil
51
- end
52
-
53
- def process_response_data
54
- nil
55
- end
56
- end
57
- # THIS CLASS IS USED TO HANDLE API RESPONSE
58
- class APIResponse < CommonAPIResponse
59
- def initialize(response, status_code, url, api_key)
60
- super
61
- end
62
-
63
- def self.get_instance(response, status_code, url, api_key)
64
- APIResponse.new(response, status_code, url, api_key)
65
- end
66
-
67
- def handle_faulty_responses
68
- if @status_code == Utility::APIConstants::RESPONSECODE_NO_CONTENT
69
- error_msg = Utility::APIConstants::NO_CONTENT
70
- exception = Utility::ZCRMException.get_instance(@url, @status_code, error_msg, Utility::APIConstants::NO_CONTENT, nil, error_msg)
71
- else
72
- response_json = @response_json
73
- exception = Utility::ZCRMException.get_instance(@url, @status_code, response_json[Utility::APIConstants::MESSAGE], response_json[Utility::APIConstants::CODE], response_json[Utility::APIConstants::DETAILS], response_json[Utility::APIConstants::MESSAGE])
74
- end
75
- raise exception
76
- end
77
-
78
- def process_response_data
79
- resp_json = @response_json
80
- if resp_json.include?(api_key)
81
- resp_json = @response_json[api_key]
82
- resp_json = resp_json[0] if resp_json.instance_of?(Array)
83
- end
84
- if resp_json.include?(Utility::APIConstants::STATUS) && (resp_json[Utility::APIConstants::STATUS] == Utility::APIConstants::STATUS_ERROR)
85
- exception = Utility::ZCRMException.get_instance(@url, @status_code, resp_json[Utility::APIConstants::MESSAGE], resp_json[Utility::APIConstants::CODE], resp_json[Utility::APIConstants::DETAILS], resp_json[Utility::APIConstants::STATUS])
86
- raise exception
87
- elsif resp_json.include?(Utility::APIConstants::STATUS) && (resp_json[Utility::APIConstants::STATUS] == Utility::APIConstants::STATUS_SUCCESS)
88
- @status = resp_json[Utility::APIConstants::STATUS]
89
- @code = resp_json[Utility::APIConstants::CODE]
90
- @message = resp_json[Utility::APIConstants::MESSAGE]
91
- @details = resp_json[Utility::APIConstants::DETAILS]
92
- end
93
- end
94
- end
95
- # THIS CLASS IS USED TO BULK API RESPONSE
96
- class BulkAPIResponse < CommonAPIResponse
97
- attr_accessor :bulk_entity_response, :info
98
- def initialize(response, status_code, url, api_key)
99
- @bulk_entity_response = []
100
- super
101
- if @response_json.include?(Utility::APIConstants::INFO)
102
- @info = ResponseInfo.get_instance(@response_json[Utility::APIConstants::INFO])
103
- end
104
- end
105
-
106
- def self.get_instance(response, status_code, url, api_key)
107
- BulkAPIResponse.new(response, status_code, url, api_key)
108
- end
109
-
110
- def handle_faulty_responses
111
- if @status_code == Utility::APIConstants::RESPONSECODE_NO_CONTENT
112
- error_msg = Utility::APIConstants::NO_CONTENT
113
- exception = Utility::ZCRMException.get_instance(@url, @status_code, error_msg, Utility::APIConstants::NO_CONTENT, nil, error_msg)
114
- else
115
- response_json = @response_json
116
- exception = Utility::ZCRMException.get_instance(@url, @status_code, response_json[Utility::APIConstants::MESSAGE], response_json[Utility::APIConstants::CODE], response_json[Utility::APIConstants::DETAILS], response_json[Utility::APIConstants::MESSAGE])
117
- end
118
- raise exception
119
- end
120
-
121
- def process_response_data
122
- responses_json = @response_json
123
- if responses_json.include?(@api_key)
124
- records_data = @response_json[api_key]
125
- records_data.each do |record_data|
126
- if !record_data.nil? && record_data.key?(Utility::APIConstants::STATUS)
127
- @bulk_entity_response.push(EntityResponse.get_instance(record_data))
128
- end
129
- end
130
- end
131
- end
132
- end
133
- # THIS CLASS IS USED TO HANDLE FILE API RESPONSE
134
- class FileAPIResponse
135
- attr_accessor :filename, :response_json, :response_headers, :response, :status_code, :url, :data, :status, :code, :message, :details
136
- def initialize(response, status_code, url)
137
- @response_json = nil
138
- @response_headers = nil
139
- @response = response
140
- @status_code = status_code
141
- @url = url
142
- @data = nil
143
- @status = nil
144
- @code = nil
145
- @message = nil
146
- @details = nil
147
- @filename = nil
148
- end
149
-
150
- def self.get_instance(response, status_code, url)
151
- FileAPIResponse.new(response, status_code, url)
152
- end
153
-
154
- def set_file_content
155
- if @status_code == Utility::APIConstants::RESPONSECODE_NO_CONTENT
156
- error_msg = Utility::APIConstants::NO_CONTENT
157
- exception = Utility::ZCRMException.get_instance(@url, @status_code, error_msg, Utility::APIConstants::NO_CONTENT, nil, error_msg)
158
- raise exception
159
- end
160
- if Utility::APIConstants::FAULTY_RESPONSE_CODES.include?(@status_code)
161
- content = JSON.parse(@response.body)
162
- exception = Utility::ZCRMException.get_instance(@url, @status_code, content[Utility::APIConstants::MESSAGE], content[Utility::APIConstants::CODE], content[Utility::APIConstants::DETAILS], content[Utility::APIConstants::MESSAGE])
163
- raise exception
164
- elsif @status_code == Utility::APIConstants::RESPONSECODE_OK
165
- @response_headers = @response.to_hash
166
- @status = Utility::APIConstants::STATUS_SUCCESS
167
- @filename = @response_headers['content-disposition'][0]
168
- @filename = @filename[@filename.rindex("'") + 1..@filename.length]
169
- @response = @response.body
170
- end
171
- @response_headers = @response.to_hash if @response_headers.nil?
172
- end
173
- end
174
- # THIS CLASS IS USED TO HANDLE ENTITY API RESPONSE
175
- class EntityResponse
176
- attr_accessor :response_json, :code, :message, :status, :details, :data, :upsert_action, :upsert_duplicate_field
177
- def initialize(entity_response)
178
- @response_json = entity_response
179
- @code = entity_response[Utility::APIConstants::CODE]
180
- @message = entity_response[Utility::APIConstants::MESSAGE]
181
- @status = entity_response[Utility::APIConstants::STATUS]
182
- @details = nil
183
- @data = nil
184
- @upsert_action = nil
185
- @upsert_duplicate_field = nil
186
- if entity_response.key?(Utility::APIConstants::DETAILS)
187
- @details = entity_response[Utility::APIConstants::DETAILS]
188
- end
189
- if entity_response.key?(Utility::APIConstants::ACTION)
190
- @upsert_action = entity_response[Utility::APIConstants::ACTION]
191
- end
192
- if entity_response.key?(Utility::APIConstants::DUPLICATE_FIELD)
193
- @upsert_duplicate_field = entity_response[Utility::APIConstants::DUPLICATE_FIELD]
194
- end
195
- end
196
-
197
- def self.get_instance(entity_response)
198
- EntityResponse.new(entity_response)
199
- end
200
- end
201
- # THIS CLASS IS USED TO STORE RESPONSE INFO
202
- class ResponseInfo
203
- attr_reader :is_more_records, :page, :per_page, :count
204
- def initialize(response_info_json)
205
- @is_more_records = (response_info_json['more_records']) == true
206
- @page = (response_info_json['page']).to_i
207
- @per_page = (response_info_json['per_page']).to_i
208
- @count = (response_info_json['count']).to_i
209
- end
210
-
211
- def self.get_instance(response_info_json)
212
- ResponseInfo.new(response_info_json)
213
- end
214
- end
215
- end
216
- end