ZCRMSDK 1.0.5 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/src/ZCRMSDK.rb +362 -0
- data/src/com/zoho/api/authenticator/oauth_token.rb +217 -0
- data/src/com/zoho/api/authenticator/store/db_store.rb +149 -0
- data/src/com/zoho/api/authenticator/store/file_store.rb +165 -0
- data/src/com/zoho/api/authenticator/store/token_store.rb +26 -0
- data/src/com/zoho/api/authenticator/token.rb +10 -0
- data/src/com/zoho/api/logger/sdk_logger.rb +69 -0
- data/src/com/zoho/crm/api/attachments/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/attachments/action_response.rb +10 -0
- data/src/com/zoho/crm/api/attachments/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/attachments/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/attachments/attachment.rb +367 -0
- data/src/com/zoho/crm/api/attachments/attachments_operations.rb +196 -0
- data/src/com/zoho/crm/api/attachments/file_body_wrapper.rb +64 -0
- data/src/com/zoho/crm/api/attachments/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/attachments/response_wrapper.rb +83 -0
- data/src/com/zoho/crm/api/attachments/success_response.rb +121 -0
- data/src/com/zoho/crm/api/blue_print/action_response.rb +10 -0
- data/src/com/zoho/crm/api/blue_print/api_exception.rb +123 -0
- data/src/com/zoho/crm/api/blue_print/blue_print.rb +119 -0
- data/src/com/zoho/crm/api/blue_print/blue_print_operations.rb +67 -0
- data/src/com/zoho/crm/api/blue_print/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/blue_print/next_transition.rb +80 -0
- data/src/com/zoho/crm/api/blue_print/process_info.rb +251 -0
- data/src/com/zoho/crm/api/blue_print/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/blue_print/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/blue_print/success_response.rb +121 -0
- data/src/com/zoho/crm/api/blue_print/transition.rb +253 -0
- data/src/com/zoho/crm/api/blue_print/validation_error.rb +80 -0
- data/src/com/zoho/crm/api/bulk_read/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/bulk_read/action_response.rb +10 -0
- data/src/com/zoho/crm/api/bulk_read/action_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/bulk_read/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/bulk_read/bulk_read_operations.rb +74 -0
- data/src/com/zoho/crm/api/bulk_read/call_back.rb +81 -0
- data/src/com/zoho/crm/api/bulk_read/criteria.rb +135 -0
- data/src/com/zoho/crm/api/bulk_read/file_body_wrapper.rb +64 -0
- data/src/com/zoho/crm/api/bulk_read/job_detail.rb +196 -0
- data/src/com/zoho/crm/api/bulk_read/query.rb +137 -0
- data/src/com/zoho/crm/api/bulk_read/request_wrapper.rb +100 -0
- data/src/com/zoho/crm/api/bulk_read/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/bulk_read/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/bulk_read/result.rb +137 -0
- data/src/com/zoho/crm/api/bulk_read/success_response.rb +121 -0
- data/src/com/zoho/crm/api/bulk_write/action_response.rb +10 -0
- data/src/com/zoho/crm/api/bulk_write/api_exception.rb +239 -0
- data/src/com/zoho/crm/api/bulk_write/bulk_write_operations.rb +112 -0
- data/src/com/zoho/crm/api/bulk_write/bulk_write_response.rb +216 -0
- data/src/com/zoho/crm/api/bulk_write/call_back.rb +81 -0
- data/src/com/zoho/crm/api/bulk_write/field_mapping.rb +156 -0
- data/src/com/zoho/crm/api/bulk_write/file.rb +157 -0
- data/src/com/zoho/crm/api/bulk_write/file_body_wrapper.rb +64 -0
- data/src/com/zoho/crm/api/bulk_write/request_wrapper.rb +119 -0
- data/src/com/zoho/crm/api/bulk_write/resource.rb +195 -0
- data/src/com/zoho/crm/api/bulk_write/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/bulk_write/response_wrapper.rb +10 -0
- data/src/com/zoho/crm/api/bulk_write/result.rb +61 -0
- data/src/com/zoho/crm/api/bulk_write/success_response.rb +121 -0
- data/src/com/zoho/crm/api/contact_roles/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/contact_roles/action_response.rb +10 -0
- data/src/com/zoho/crm/api/contact_roles/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/contact_roles/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/contact_roles/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/contact_roles/contact_role.rb +99 -0
- data/src/com/zoho/crm/api/contact_roles/contact_roles_operations.rb +161 -0
- data/src/com/zoho/crm/api/contact_roles/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/contact_roles/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/contact_roles/success_response.rb +121 -0
- data/src/com/zoho/crm/api/currencies/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/currencies/action_response.rb +10 -0
- data/src/com/zoho/crm/api/currencies/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/currencies/api_exception.rb +127 -0
- data/src/com/zoho/crm/api/currencies/base_currency_action_handler.rb +10 -0
- data/src/com/zoho/crm/api/currencies/base_currency_action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/currencies/base_currency_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/currencies/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/currencies/currencies_operations.rb +156 -0
- data/src/com/zoho/crm/api/currencies/currency.rb +290 -0
- data/src/com/zoho/crm/api/currencies/format.rb +100 -0
- data/src/com/zoho/crm/api/currencies/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/currencies/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/currencies/success_response.rb +121 -0
- data/src/com/zoho/crm/api/custom_views/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/custom_views/criteria.rb +135 -0
- data/src/com/zoho/crm/api/custom_views/custom_view.rb +327 -0
- data/src/com/zoho/crm/api/custom_views/custom_views_operations.rb +75 -0
- data/src/com/zoho/crm/api/custom_views/info.rb +156 -0
- data/src/com/zoho/crm/api/custom_views/range.rb +80 -0
- data/src/com/zoho/crm/api/custom_views/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/custom_views/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/custom_views/shared_details.rb +118 -0
- data/src/com/zoho/crm/api/custom_views/translation.rb +118 -0
- data/src/com/zoho/crm/api/dc/au_datacenter.rb +18 -0
- data/src/com/zoho/crm/api/dc/cn_datacenter.rb +18 -0
- data/src/com/zoho/crm/api/dc/datacenter.rb +20 -0
- data/src/com/zoho/crm/api/dc/eu_datacenter.rb +18 -0
- data/src/com/zoho/crm/api/dc/in_datacenter.rb +18 -0
- data/src/com/zoho/crm/api/dc/us_datacenter.rb +18 -0
- data/src/com/zoho/crm/api/exception/sdk_exception.rb +47 -0
- data/src/com/zoho/crm/api/fields/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/fields/association_details.rb +80 -0
- data/src/com/zoho/crm/api/fields/auto_number.rb +99 -0
- data/src/com/zoho/crm/api/fields/crypt.rb +156 -0
- data/src/com/zoho/crm/api/fields/currency.rb +80 -0
- data/src/com/zoho/crm/api/fields/field.rb +956 -0
- data/src/com/zoho/crm/api/fields/fields_operations.rb +71 -0
- data/src/com/zoho/crm/api/fields/formula.rb +80 -0
- data/src/com/zoho/crm/api/fields/lookup_field.rb +80 -0
- data/src/com/zoho/crm/api/fields/module.rb +157 -0
- data/src/com/zoho/crm/api/fields/multi_select_lookup.rb +156 -0
- data/src/com/zoho/crm/api/fields/pick_list_value.rb +175 -0
- data/src/com/zoho/crm/api/fields/private.rb +99 -0
- data/src/com/zoho/crm/api/fields/related_details.rb +137 -0
- data/src/com/zoho/crm/api/fields/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/fields/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/fields/tool_tip.rb +80 -0
- data/src/com/zoho/crm/api/fields/unique.rb +61 -0
- data/src/com/zoho/crm/api/fields/view_type.rb +118 -0
- data/src/com/zoho/crm/api/files/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/files/action_response.rb +10 -0
- data/src/com/zoho/crm/api/files/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/files/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/files/body_wrapper.rb +62 -0
- data/src/com/zoho/crm/api/files/file_body_wrapper.rb +64 -0
- data/src/com/zoho/crm/api/files/file_operations.rb +75 -0
- data/src/com/zoho/crm/api/files/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/files/success_response.rb +121 -0
- data/src/com/zoho/crm/api/header.rb +10 -0
- data/src/com/zoho/crm/api/header_map.rb +55 -0
- data/src/com/zoho/crm/api/initializer.rb +192 -0
- data/src/com/zoho/crm/api/layouts/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/layouts/layout.rb +272 -0
- data/src/com/zoho/crm/api/layouts/layouts_operations.rb +61 -0
- data/src/com/zoho/crm/api/layouts/properties.rb +100 -0
- data/src/com/zoho/crm/api/layouts/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/layouts/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/layouts/section.rb +233 -0
- data/src/com/zoho/crm/api/modules/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/modules/action_response.rb +10 -0
- data/src/com/zoho/crm/api/modules/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/modules/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/modules/argument.rb +80 -0
- data/src/com/zoho/crm/api/modules/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/modules/module.rb +882 -0
- data/src/com/zoho/crm/api/modules/modules_operations.rb +111 -0
- data/src/com/zoho/crm/api/modules/related_list_properties.rb +99 -0
- data/src/com/zoho/crm/api/modules/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/modules/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/modules/success_response.rb +121 -0
- data/src/com/zoho/crm/api/modules/territory.rb +99 -0
- data/src/com/zoho/crm/api/notes/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/notes/action_response.rb +10 -0
- data/src/com/zoho/crm/api/notes/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/notes/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/notes/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/notes/info.rb +118 -0
- data/src/com/zoho/crm/api/notes/note.rb +349 -0
- data/src/com/zoho/crm/api/notes/notes_operations.rb +219 -0
- data/src/com/zoho/crm/api/notes/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/notes/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/notes/success_response.rb +121 -0
- data/src/com/zoho/crm/api/notification/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/notification/action_response.rb +10 -0
- data/src/com/zoho/crm/api/notification/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/notification/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/notification/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/notification/info.rb +118 -0
- data/src/com/zoho/crm/api/notification/notification.rb +251 -0
- data/src/com/zoho/crm/api/notification/notification_operations.rb +164 -0
- data/src/com/zoho/crm/api/notification/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/notification/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/notification/success_response.rb +121 -0
- data/src/com/zoho/crm/api/org/action_response.rb +10 -0
- data/src/com/zoho/crm/api/org/api_exception.rb +123 -0
- data/src/com/zoho/crm/api/org/file_body_wrapper.rb +62 -0
- data/src/com/zoho/crm/api/org/license_details.rb +156 -0
- data/src/com/zoho/crm/api/org/org.rb +631 -0
- data/src/com/zoho/crm/api/org/org_operations.rb +49 -0
- data/src/com/zoho/crm/api/org/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/org/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/org/success_response.rb +121 -0
- data/src/com/zoho/crm/api/param.rb +10 -0
- data/src/com/zoho/crm/api/parameter_map.rb +54 -0
- data/src/com/zoho/crm/api/profiles/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/profiles/category.rb +99 -0
- data/src/com/zoho/crm/api/profiles/permission_detail.rb +137 -0
- data/src/com/zoho/crm/api/profiles/profile.rb +290 -0
- data/src/com/zoho/crm/api/profiles/profiles_operations.rb +61 -0
- data/src/com/zoho/crm/api/profiles/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/profiles/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/profiles/section.rb +80 -0
- data/src/com/zoho/crm/api/query/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/query/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/query/query_operations.rb +35 -0
- data/src/com/zoho/crm/api/query/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/query/response_wrapper.rb +84 -0
- data/src/com/zoho/crm/api/record/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/action_response.rb +10 -0
- data/src/com/zoho/crm/api/record/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/record/api_exception.rb +143 -0
- data/src/com/zoho/crm/api/record/body_wrapper.rb +156 -0
- data/src/com/zoho/crm/api/record/carry_over_tags.rb +99 -0
- data/src/com/zoho/crm/api/record/comment.rb +118 -0
- data/src/com/zoho/crm/api/record/consent.rb +185 -0
- data/src/com/zoho/crm/api/record/convert_action_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/convert_action_response.rb +10 -0
- data/src/com/zoho/crm/api/record/convert_action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/record/convert_body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/record/criteria.rb +135 -0
- data/src/com/zoho/crm/api/record/deleted_record.rb +157 -0
- data/src/com/zoho/crm/api/record/deleted_records_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/deleted_records_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/record/download_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/field.rb +2109 -0
- data/src/com/zoho/crm/api/record/file_body_wrapper.rb +66 -0
- data/src/com/zoho/crm/api/record/file_details.rb +327 -0
- data/src/com/zoho/crm/api/record/file_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/info.rb +118 -0
- data/src/com/zoho/crm/api/record/inventory_line_items.rb +235 -0
- data/src/com/zoho/crm/api/record/lead_converter.rb +194 -0
- data/src/com/zoho/crm/api/record/line_item_product.rb +65 -0
- data/src/com/zoho/crm/api/record/line_tax.rb +118 -0
- data/src/com/zoho/crm/api/record/mass_update.rb +140 -0
- data/src/com/zoho/crm/api/record/mass_update_action_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/mass_update_action_response.rb +10 -0
- data/src/com/zoho/crm/api/record/mass_update_action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/record/mass_update_body_wrapper.rb +156 -0
- data/src/com/zoho/crm/api/record/mass_update_response.rb +10 -0
- data/src/com/zoho/crm/api/record/mass_update_response_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/mass_update_response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/record/mass_update_success_response.rb +121 -0
- data/src/com/zoho/crm/api/record/options.rb +10 -0
- data/src/com/zoho/crm/api/record/participants.rb +116 -0
- data/src/com/zoho/crm/api/record/pricing_details.rb +65 -0
- data/src/com/zoho/crm/api/record/record.rb +192 -0
- data/src/com/zoho/crm/api/record/record_operations.rb +677 -0
- data/src/com/zoho/crm/api/record/recurring_activity.rb +61 -0
- data/src/com/zoho/crm/api/record/remind_at.rb +61 -0
- data/src/com/zoho/crm/api/record/reminder.rb +80 -0
- data/src/com/zoho/crm/api/record/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/record/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/record/success_response.rb +161 -0
- data/src/com/zoho/crm/api/record/successful_convert.rb +101 -0
- data/src/com/zoho/crm/api/record/territory.rb +80 -0
- data/src/com/zoho/crm/api/related_lists/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/related_lists/related_list.rb +251 -0
- data/src/com/zoho/crm/api/related_lists/related_lists_operations.rb +61 -0
- data/src/com/zoho/crm/api/related_lists/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/related_lists/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/related_records/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/related_records/action_response.rb +10 -0
- data/src/com/zoho/crm/api/related_records/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/related_records/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/related_records/body_wrapper.rb +62 -0
- data/src/com/zoho/crm/api/related_records/file_body_wrapper.rb +64 -0
- data/src/com/zoho/crm/api/related_records/related_records_operations.rb +235 -0
- data/src/com/zoho/crm/api/related_records/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/related_records/response_wrapper.rb +84 -0
- data/src/com/zoho/crm/api/related_records/success_response.rb +121 -0
- data/src/com/zoho/crm/api/request_proxy.rb +16 -0
- data/src/com/zoho/crm/api/roles/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/roles/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/roles/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/roles/role.rb +195 -0
- data/src/com/zoho/crm/api/roles/roles_operations.rb +47 -0
- data/src/com/zoho/crm/api/sdk_config.rb +78 -0
- data/src/com/zoho/crm/api/share_records/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/share_records/action_response.rb +10 -0
- data/src/com/zoho/crm/api/share_records/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/share_records/api_exception.rb +129 -0
- data/src/com/zoho/crm/api/share_records/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/share_records/delete_action_handler.rb +10 -0
- data/src/com/zoho/crm/api/share_records/delete_action_response.rb +10 -0
- data/src/com/zoho/crm/api/share_records/delete_action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/share_records/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/share_records/response_wrapper.rb +83 -0
- data/src/com/zoho/crm/api/share_records/share_record.rb +157 -0
- data/src/com/zoho/crm/api/share_records/share_records_operations.rb +128 -0
- data/src/com/zoho/crm/api/share_records/shared_through.rb +100 -0
- data/src/com/zoho/crm/api/share_records/success_response.rb +123 -0
- data/src/com/zoho/crm/api/tags/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/tags/action_response.rb +10 -0
- data/src/com/zoho/crm/api/tags/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/tags/api_exception.rb +131 -0
- data/src/com/zoho/crm/api/tags/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/tags/conflict_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/tags/count_handler.rb +10 -0
- data/src/com/zoho/crm/api/tags/count_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/tags/info.rb +80 -0
- data/src/com/zoho/crm/api/tags/merge_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/tags/record_action_handler.rb +10 -0
- data/src/com/zoho/crm/api/tags/record_action_response.rb +10 -0
- data/src/com/zoho/crm/api/tags/record_action_wrapper.rb +120 -0
- data/src/com/zoho/crm/api/tags/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/tags/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/tags/success_response.rb +123 -0
- data/src/com/zoho/crm/api/tags/tag.rb +157 -0
- data/src/com/zoho/crm/api/tags/tags_operations.rb +387 -0
- data/src/com/zoho/crm/api/taxes/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/taxes/action_response.rb +10 -0
- data/src/com/zoho/crm/api/taxes/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/taxes/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/taxes/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/taxes/preference.rb +80 -0
- data/src/com/zoho/crm/api/taxes/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/taxes/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/taxes/success_response.rb +121 -0
- data/src/com/zoho/crm/api/taxes/tax.rb +137 -0
- data/src/com/zoho/crm/api/taxes/taxes_operations.rb +136 -0
- data/src/com/zoho/crm/api/territories/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/territories/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/territories/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/territories/territories_operations.rb +47 -0
- data/src/com/zoho/crm/api/territories/territory.rb +234 -0
- data/src/com/zoho/crm/api/user_signature.rb +27 -0
- data/src/com/zoho/crm/api/users/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/users/action_response.rb +10 -0
- data/src/com/zoho/crm/api/users/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/users/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/users/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/users/customize_info.rb +156 -0
- data/src/com/zoho/crm/api/users/info.rb +118 -0
- data/src/com/zoho/crm/api/users/request_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/users/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/users/response_wrapper.rb +82 -0
- data/src/com/zoho/crm/api/users/shift.rb +80 -0
- data/src/com/zoho/crm/api/users/success_response.rb +121 -0
- data/src/com/zoho/crm/api/users/tab_theme.rb +80 -0
- data/src/com/zoho/crm/api/users/territory.rb +99 -0
- data/src/com/zoho/crm/api/users/theme.rb +156 -0
- data/src/com/zoho/crm/api/users/user.rb +696 -0
- data/src/com/zoho/crm/api/users/users_operations.rb +181 -0
- data/src/com/zoho/crm/api/util/api_http_connector.rb +111 -0
- data/src/com/zoho/crm/api/util/api_response.rb +16 -0
- data/src/com/zoho/crm/api/util/choice.rb +9 -0
- data/src/com/zoho/crm/api/util/common_api_handler.rb +235 -0
- data/src/com/zoho/crm/api/util/constants.rb +536 -0
- data/src/com/zoho/crm/api/util/converter.rb +213 -0
- data/src/com/zoho/crm/api/util/data_type_converter.rb +162 -0
- data/src/com/zoho/crm/api/util/downloader.rb +83 -0
- data/src/com/zoho/crm/api/util/form_data_converter.rb +167 -0
- data/src/com/zoho/crm/api/util/header_param_validator.rb +55 -0
- data/src/com/zoho/crm/api/util/json_converter.rb +726 -0
- data/src/com/zoho/crm/api/util/model.rb +5 -0
- data/src/com/zoho/crm/api/util/module_fields_handler.rb +78 -0
- data/src/com/zoho/crm/api/util/stream_wrapper.rb +37 -0
- data/src/com/zoho/crm/api/util/utility.rb +727 -0
- data/src/com/zoho/crm/api/variable_groups/api_exception.rb +121 -0
- data/src/com/zoho/crm/api/variable_groups/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/variable_groups/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/variable_groups/variable_group.rb +137 -0
- data/src/com/zoho/crm/api/variable_groups/variable_groups_operations.rb +66 -0
- data/src/com/zoho/crm/api/variables/action_handler.rb +10 -0
- data/src/com/zoho/crm/api/variables/action_response.rb +10 -0
- data/src/com/zoho/crm/api/variables/action_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/variables/api_exception.rb +125 -0
- data/src/com/zoho/crm/api/variables/body_wrapper.rb +61 -0
- data/src/com/zoho/crm/api/variables/response_handler.rb +10 -0
- data/src/com/zoho/crm/api/variables/response_wrapper.rb +63 -0
- data/src/com/zoho/crm/api/variables/success_response.rb +121 -0
- data/src/com/zoho/crm/api/variables/variable.rb +173 -0
- data/src/com/zoho/crm/api/variables/variables_operations.rb +241 -0
- data/src/resources/JSONDetails.json +1 -0
- data/src/version.rb +3 -0
- metadata +393 -42
- data/lib/ZCRMSDK.rb +0 -14
- data/lib/ZCRMSDK/handler.rb +0 -3299
- data/lib/ZCRMSDK/oauth_client.rb +0 -257
- data/lib/ZCRMSDK/oauth_utility.rb +0 -161
- data/lib/ZCRMSDK/operations.rb +0 -1091
- data/lib/ZCRMSDK/org.rb +0 -174
- data/lib/ZCRMSDK/persistence.rb +0 -129
- data/lib/ZCRMSDK/request.rb +0 -83
- data/lib/ZCRMSDK/response.rb +0 -216
- data/lib/ZCRMSDK/restclient.rb +0 -65
- data/lib/ZCRMSDK/utility.rb +0 -310
- data/lib/ZCRMSDK/version.rb +0 -5
@@ -0,0 +1,181 @@
|
|
1
|
+
require_relative '../header'
|
2
|
+
require_relative '../header_map'
|
3
|
+
require_relative '../param'
|
4
|
+
require_relative '../parameter_map'
|
5
|
+
require_relative '../exception/sdk_exception'
|
6
|
+
require_relative '../util/api_response'
|
7
|
+
require_relative '../util/common_api_handler'
|
8
|
+
require_relative '../util/constants'
|
9
|
+
|
10
|
+
module Users
|
11
|
+
class UsersOperations
|
12
|
+
|
13
|
+
# Creates an instance of UsersOperations
|
14
|
+
def initialize
|
15
|
+
end
|
16
|
+
|
17
|
+
# The method to get users
|
18
|
+
# @param param_instance [ParameterMap] An instance of ParameterMap
|
19
|
+
# @param header_instance [HeaderMap] An instance of HeaderMap
|
20
|
+
# @return An instance of APIResponse
|
21
|
+
# @raise SDKException
|
22
|
+
def get_users(param_instance=nil, header_instance=nil)
|
23
|
+
if param_instance!=nil and !param_instance.is_a? ParameterMap
|
24
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: param_instance EXPECTED TYPE: ParameterMap', nil, nil)
|
25
|
+
end
|
26
|
+
if header_instance!=nil and !header_instance.is_a? HeaderMap
|
27
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: header_instance EXPECTED TYPE: HeaderMap', nil, nil)
|
28
|
+
end
|
29
|
+
handler_instance = Handler::CommonAPIHandler.new
|
30
|
+
api_path = ''
|
31
|
+
api_path = api_path + '/crm/v2/users'
|
32
|
+
handler_instance.api_path = api_path
|
33
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_GET
|
34
|
+
handler_instance.category_method = 'READ'
|
35
|
+
handler_instance.param = param_instance
|
36
|
+
handler_instance.header = header_instance
|
37
|
+
require_relative 'response_handler'
|
38
|
+
handler_instance.api_call(ResponseHandler.name, 'application/json')
|
39
|
+
end
|
40
|
+
|
41
|
+
# The method to create user
|
42
|
+
# @param request [RequestWrapper] An instance of RequestWrapper
|
43
|
+
# @return An instance of APIResponse
|
44
|
+
# @raise SDKException
|
45
|
+
def create_user(request)
|
46
|
+
if request!=nil and !request.is_a? RequestWrapper
|
47
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: request EXPECTED TYPE: RequestWrapper', nil, nil)
|
48
|
+
end
|
49
|
+
handler_instance = Handler::CommonAPIHandler.new
|
50
|
+
api_path = ''
|
51
|
+
api_path = api_path + '/crm/v2/users'
|
52
|
+
handler_instance.api_path = api_path
|
53
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_POST
|
54
|
+
handler_instance.category_method = 'CREATE'
|
55
|
+
handler_instance.content_type = 'application/json'
|
56
|
+
handler_instance.request = request
|
57
|
+
handler_instance.mandatory_checker = true
|
58
|
+
require_relative 'action_handler'
|
59
|
+
handler_instance.api_call(ActionHandler.name, 'application/json')
|
60
|
+
end
|
61
|
+
|
62
|
+
# The method to update users
|
63
|
+
# @param request [BodyWrapper] An instance of BodyWrapper
|
64
|
+
# @return An instance of APIResponse
|
65
|
+
# @raise SDKException
|
66
|
+
def update_users(request)
|
67
|
+
if request!=nil and !request.is_a? BodyWrapper
|
68
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: request EXPECTED TYPE: BodyWrapper', nil, nil)
|
69
|
+
end
|
70
|
+
handler_instance = Handler::CommonAPIHandler.new
|
71
|
+
api_path = ''
|
72
|
+
api_path = api_path + '/crm/v2/users'
|
73
|
+
handler_instance.api_path = api_path
|
74
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_PUT
|
75
|
+
handler_instance.category_method = 'UPDATE'
|
76
|
+
handler_instance.content_type = 'application/json'
|
77
|
+
handler_instance.request = request
|
78
|
+
handler_instance.mandatory_checker = true
|
79
|
+
require_relative 'action_handler'
|
80
|
+
handler_instance.api_call(ActionHandler.name, 'application/json')
|
81
|
+
end
|
82
|
+
|
83
|
+
# The method to get user
|
84
|
+
# @param id [Integer] A Integer
|
85
|
+
# @param header_instance [HeaderMap] An instance of HeaderMap
|
86
|
+
# @return An instance of APIResponse
|
87
|
+
# @raise SDKException
|
88
|
+
def get_user(id, header_instance=nil)
|
89
|
+
if !id.is_a? Integer
|
90
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: id EXPECTED TYPE: Integer', nil, nil)
|
91
|
+
end
|
92
|
+
if header_instance!=nil and !header_instance.is_a? HeaderMap
|
93
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: header_instance EXPECTED TYPE: HeaderMap', nil, nil)
|
94
|
+
end
|
95
|
+
handler_instance = Handler::CommonAPIHandler.new
|
96
|
+
api_path = ''
|
97
|
+
api_path = api_path + '/crm/v2/users/'
|
98
|
+
api_path = api_path + id.to_s
|
99
|
+
handler_instance.api_path = api_path
|
100
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_GET
|
101
|
+
handler_instance.category_method = 'READ'
|
102
|
+
handler_instance.header = header_instance
|
103
|
+
require_relative 'response_handler'
|
104
|
+
handler_instance.api_call(ResponseHandler.name, 'application/json')
|
105
|
+
end
|
106
|
+
|
107
|
+
# The method to update user
|
108
|
+
# @param id [Integer] A Integer
|
109
|
+
# @param request [BodyWrapper] An instance of BodyWrapper
|
110
|
+
# @return An instance of APIResponse
|
111
|
+
# @raise SDKException
|
112
|
+
def update_user(id, request)
|
113
|
+
if !id.is_a? Integer
|
114
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: id EXPECTED TYPE: Integer', nil, nil)
|
115
|
+
end
|
116
|
+
if request!=nil and !request.is_a? BodyWrapper
|
117
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: request EXPECTED TYPE: BodyWrapper', nil, nil)
|
118
|
+
end
|
119
|
+
handler_instance = Handler::CommonAPIHandler.new
|
120
|
+
api_path = ''
|
121
|
+
api_path = api_path + '/crm/v2/users/'
|
122
|
+
api_path = api_path + id.to_s
|
123
|
+
handler_instance.api_path = api_path
|
124
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_PUT
|
125
|
+
handler_instance.category_method = 'UPDATE'
|
126
|
+
handler_instance.content_type = 'application/json'
|
127
|
+
handler_instance.request = request
|
128
|
+
require_relative 'action_handler'
|
129
|
+
handler_instance.api_call(ActionHandler.name, 'application/json')
|
130
|
+
end
|
131
|
+
|
132
|
+
# The method to delete user
|
133
|
+
# @param id [Integer] A Integer
|
134
|
+
# @return An instance of APIResponse
|
135
|
+
# @raise SDKException
|
136
|
+
def delete_user(id)
|
137
|
+
if !id.is_a? Integer
|
138
|
+
raise SDKException.new(Constants::DATA_TYPE_ERROR, 'KEY: id EXPECTED TYPE: Integer', nil, nil)
|
139
|
+
end
|
140
|
+
handler_instance = Handler::CommonAPIHandler.new
|
141
|
+
api_path = ''
|
142
|
+
api_path = api_path + '/crm/v2/users/'
|
143
|
+
api_path = api_path + id.to_s
|
144
|
+
handler_instance.api_path = api_path
|
145
|
+
handler_instance.http_method = Constants::REQUEST_METHOD_DELETE
|
146
|
+
handler_instance.category_method = Constants::REQUEST_METHOD_DELETE
|
147
|
+
require_relative 'action_handler'
|
148
|
+
handler_instance.api_call(ActionHandler.name, 'application/json')
|
149
|
+
end
|
150
|
+
|
151
|
+
class GetUsersParam
|
152
|
+
@@type = Param.new('type', 'com.zoho.crm.api.Users.GetUsersParam')
|
153
|
+
def self.type
|
154
|
+
@@type
|
155
|
+
end
|
156
|
+
@@page = Param.new('page', 'com.zoho.crm.api.Users.GetUsersParam')
|
157
|
+
def self.page
|
158
|
+
@@page
|
159
|
+
end
|
160
|
+
@@per_page = Param.new('per_page', 'com.zoho.crm.api.Users.GetUsersParam')
|
161
|
+
def self.per_page
|
162
|
+
@@per_page
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
class GetUsersHeader
|
167
|
+
@@If_modified_since = Header.new('If-Modified-Since', 'com.zoho.crm.api.Users.GetUsersHeader')
|
168
|
+
def self.If_modified_since
|
169
|
+
@@If_modified_since
|
170
|
+
end
|
171
|
+
end
|
172
|
+
|
173
|
+
class GetUserHeader
|
174
|
+
@@If_modified_since = Header.new('If-Modified-Since', 'com.zoho.crm.api.Users.GetUserHeader')
|
175
|
+
def self.If_modified_since
|
176
|
+
@@If_modified_since
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
end
|
181
|
+
end
|
@@ -0,0 +1,111 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
|
3
|
+
require_relative '../initializer'
|
4
|
+
require_relative '../../../api/logger/sdk_logger'
|
5
|
+
require_relative 'constants'
|
6
|
+
|
7
|
+
module Util
|
8
|
+
# This class is to make HTTP connections, trigger the requests and receive the response
|
9
|
+
class APIHTTPConnector
|
10
|
+
attr_accessor :url, :headers, :request_method, :parameters, :request_body, :content_type
|
11
|
+
|
12
|
+
def initialize
|
13
|
+
@url = nil
|
14
|
+
|
15
|
+
@headers = {}
|
16
|
+
|
17
|
+
@request_method = nil
|
18
|
+
|
19
|
+
@parameters = {}
|
20
|
+
|
21
|
+
@request_body = nil
|
22
|
+
|
23
|
+
@content_type = nil
|
24
|
+
end
|
25
|
+
|
26
|
+
def set_content_type_header
|
27
|
+
Constants::SET_TO_CONTENT_TYPE.each do |content_type|
|
28
|
+
if @url.include? content_type
|
29
|
+
@headers[Constants::CONTENT_TYPE] = @content_type
|
30
|
+
break
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
# This method makes a Zoho CRM Rest API request
|
36
|
+
# @param converterInstance A Converter class instance to call appendToRequest method.
|
37
|
+
# @return HttpResponse class instance or nil
|
38
|
+
# @raise Exception
|
39
|
+
def fire_request(converter_instance)
|
40
|
+
@parameters&.each do |param_key, value|
|
41
|
+
@parameters[param_key] = CGI.escape(value) if value.is_a? String
|
42
|
+
end
|
43
|
+
|
44
|
+
query_string = @parameters.to_a.map { |x| "#{x[0]}=#{x[1]}" }.join('&')
|
45
|
+
|
46
|
+
@url += '?' + query_string if !query_string.nil? && (query_string.strip != '')
|
47
|
+
|
48
|
+
url = URI(@url)
|
49
|
+
http = nil
|
50
|
+
initializer = Initializer.get_initializer
|
51
|
+
request_proxy = initializer.request_proxy
|
52
|
+
if request_proxy.nil?
|
53
|
+
http = Net::HTTP.new(url.host, url.port)
|
54
|
+
else
|
55
|
+
proxy_host = request_proxy.host
|
56
|
+
proxy_port = request_proxy.port
|
57
|
+
proxy_user = nil
|
58
|
+
proxy_password = nil
|
59
|
+
unless proxy_user.nil?
|
60
|
+
proxy_user = request_proxy.user_name
|
61
|
+
proxy_password = request_proxy.password
|
62
|
+
end
|
63
|
+
http = Net::HTTP.new(url.host, url.port, proxy_host, proxy_port, proxy_user, proxy_password)
|
64
|
+
SDKLog::SDKLogger.info(proxy_log(request_proxy))
|
65
|
+
end
|
66
|
+
|
67
|
+
http.use_ssl = true
|
68
|
+
http.open_timeout = initializer.sdk_config.open_timeout
|
69
|
+
http.read_timeout = initializer.sdk_config.read_timeout
|
70
|
+
http.write_timeout = initializer.sdk_config.write_timeout
|
71
|
+
http.keep_alive_timeout = initializer.sdk_config.keep_alive_timeout
|
72
|
+
|
73
|
+
if @request_method == Constants::REQUEST_METHOD_GET
|
74
|
+
req = Net::HTTP::Get.new(url.request_uri)
|
75
|
+
elsif @request_method == Constants::REQUEST_METHOD_POST
|
76
|
+
req = Net::HTTP::Post.new(url.request_uri)
|
77
|
+
elsif @request_method == Constants::REQUEST_METHOD_PUT
|
78
|
+
req = Net::HTTP::Put.new(url.request_uri)
|
79
|
+
elsif @request_method == Constants::REQUEST_METHOD_PATCH
|
80
|
+
req = Net::HTTP::Patch.new(url.request_uri)
|
81
|
+
elsif @request_method == Constants::REQUEST_METHOD_DELETE
|
82
|
+
req = Net::HTTP::Delete.new(url.request_uri)
|
83
|
+
end
|
84
|
+
|
85
|
+
set_content_type_header unless @content_type.nil?
|
86
|
+
|
87
|
+
@headers&.each { |key, value| req.add_field(key, value) }
|
88
|
+
|
89
|
+
converter_instance.append_to_request(req, @request_body) unless @request_body.nil?
|
90
|
+
|
91
|
+
SDKLog::SDKLogger.info(to_s)
|
92
|
+
|
93
|
+
response = http.request(req)
|
94
|
+
response
|
95
|
+
end
|
96
|
+
|
97
|
+
def to_s
|
98
|
+
req_headers = @headers.clone
|
99
|
+
req_headers [Constants::AUTHORIZATION] = Constants::CANT_DISCLOSE
|
100
|
+
@request_method + ' - ' + Constants::URL + ' = ' + @url + ', ' + Constants::HEADERS + ' = ' + req_headers.to_s + ', ' + Constants::PARAMS + ' = ' + @parameters.to_s
|
101
|
+
end
|
102
|
+
|
103
|
+
def proxy_log(request_proxy)
|
104
|
+
if request_proxy.user_name.nil?
|
105
|
+
'Proxy settings - Host : ' + request_proxy.host + ' , Port : ' + request_proxy.port.to_s
|
106
|
+
else
|
107
|
+
'Proxy settings - Host : ' + request_proxy.host + ' , Port : ' + request_proxy.port.to_s + ' , Proxy User : ' + request_proxy.user_name
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module Response
|
2
|
+
# This class is the common API response object.
|
3
|
+
class APIResponse
|
4
|
+
attr_reader :headers, :status_code, :data_object, :is_expected
|
5
|
+
# Creates an APIResponse class instance with the specified parameters.
|
6
|
+
# @param headers A Hash containing the API response headers.
|
7
|
+
# @param status_code A Integer containing the API response HTTP status code.
|
8
|
+
# @param object A Object containing the API response class instance.
|
9
|
+
def initialize(headers, status_code, object, is_expected)
|
10
|
+
@headers = headers
|
11
|
+
@status_code = status_code
|
12
|
+
@data_object = object
|
13
|
+
@is_expected = is_expected
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,235 @@
|
|
1
|
+
require 'uri'
|
2
|
+
|
3
|
+
require_relative 'json_converter'
|
4
|
+
require_relative 'form_data_converter'
|
5
|
+
require_relative 'data_type_converter'
|
6
|
+
require_relative 'downloader'
|
7
|
+
require_relative 'api_response'
|
8
|
+
require_relative 'api_http_connector'
|
9
|
+
require_relative '../initializer'
|
10
|
+
require_relative '../header'
|
11
|
+
require_relative '../param'
|
12
|
+
require_relative '../header_map'
|
13
|
+
require_relative '../parameter_map'
|
14
|
+
require_relative 'constants'
|
15
|
+
require_relative '../exception/sdk_exception'
|
16
|
+
require_relative '../../../api/logger/sdk_logger'
|
17
|
+
|
18
|
+
module Handler
|
19
|
+
# This class is to process the API request and its response.
|
20
|
+
# Construct the objects that are to be sent as parameters or in the request body with the API.
|
21
|
+
# The Request parameter, header and body objects are constructed here.
|
22
|
+
# Process the response JSON and converts it to relevant objects in the library.
|
23
|
+
class CommonAPIHandler
|
24
|
+
attr_accessor :api_path, :header, :param, :category_method, :request, :http_method, :module_api_name, :content_type, :mandatory_checker
|
25
|
+
|
26
|
+
def initialize
|
27
|
+
@api_path = nil
|
28
|
+
|
29
|
+
@header = HeaderMap.new
|
30
|
+
|
31
|
+
@param = ParameterMap.new
|
32
|
+
|
33
|
+
@mandatory_checker = false
|
34
|
+
|
35
|
+
@request = nil
|
36
|
+
|
37
|
+
@http_method = nil
|
38
|
+
|
39
|
+
@category_method = nil
|
40
|
+
|
41
|
+
@module_api_name = nil
|
42
|
+
|
43
|
+
@content_type = nil
|
44
|
+
end
|
45
|
+
|
46
|
+
# This method is used in constructing API request and response details. To make the Zoho CRM API calls.
|
47
|
+
# @param class_name [String] A Class containing the method return type.
|
48
|
+
# @param encode_type [String] A String containing the expected API response content type.
|
49
|
+
# @see Util::APIHTTPConnector
|
50
|
+
# @return A APIResponse representing the Zoho CRM API response instance or nil.
|
51
|
+
def api_call(class_name, encode_type)
|
52
|
+
if Initializer.get_initializer.nil?
|
53
|
+
raise SDKException.new(Constants::SDK_UNINITIALIZATION_ERROR, Constants::SDK_UNINITIALIZATION_MESSAGE, nil, nil)
|
54
|
+
end
|
55
|
+
|
56
|
+
connector = Util::APIHTTPConnector.new
|
57
|
+
|
58
|
+
begin
|
59
|
+
set_api_url(connector)
|
60
|
+
rescue SDKException => e
|
61
|
+
SDKLog::SDKLogger.severe(Constants::SET_API_URL_EXCEPTION, e)
|
62
|
+
raise e
|
63
|
+
rescue StandardError => e
|
64
|
+
ex = SDKException.new(nil, nil, nil, e)
|
65
|
+
SDKLog::SDKLogger.severe(Constants::SET_API_URL_EXCEPTION, ex)
|
66
|
+
raise ex
|
67
|
+
end
|
68
|
+
|
69
|
+
connector.request_method = @http_method
|
70
|
+
|
71
|
+
connector.content_type = @content_type
|
72
|
+
|
73
|
+
connector.headers = @header.header_hash if !@header.nil? && !@header.header_hash.empty?
|
74
|
+
|
75
|
+
connector.parameters = @param.param_hash if !@param.nil? && !@param.param_hash.empty?
|
76
|
+
|
77
|
+
begin
|
78
|
+
Initializer.get_initializer.token.authenticate(connector)
|
79
|
+
rescue SDKException => e
|
80
|
+
SDKLog::SDKLogger.severe(Constants::AUTHENTICATION_EXCEPTION, e)
|
81
|
+
raise e
|
82
|
+
rescue StandardError => e
|
83
|
+
ex = SDKException.new(nil, nil, nil, e)
|
84
|
+
SDKLog::SDKLogger.severe(Constants::AUTHENTICATION_EXCEPTION, ex)
|
85
|
+
raise ex
|
86
|
+
end
|
87
|
+
|
88
|
+
converter_instance = nil
|
89
|
+
|
90
|
+
if !@content_type.nil? && (Constants::IS_GENERATE_REQUEST_BODY.include? http_method)
|
91
|
+
request = nil
|
92
|
+
|
93
|
+
begin
|
94
|
+
converter_instance = get_converter_class_instance(@content_type.to_s.downcase)
|
95
|
+
request = converter_instance.form_request(@request, @request.class.name, nil, nil)
|
96
|
+
rescue SDKException => e
|
97
|
+
SDKLog::SDKLogger.severe(Constants::FORM_REQUEST_EXCEPTION, e)
|
98
|
+
raise e
|
99
|
+
rescue StandardError => e
|
100
|
+
ex = SDKException.new(nil, nil, nil, e)
|
101
|
+
SDKLog::SDKLogger.severe(Constants::FORM_REQUEST_EXCEPTION, ex)
|
102
|
+
raise ex
|
103
|
+
end
|
104
|
+
|
105
|
+
connector.request_body = request
|
106
|
+
end
|
107
|
+
|
108
|
+
begin
|
109
|
+
connector.headers[Constants::ZOHO_SDK] = RUBY_PLATFORM + ' Ruby/' + RUBY_VERSION + ':' + Constants::SDK_VERSION
|
110
|
+
|
111
|
+
response = connector.fire_request(converter_instance)
|
112
|
+
|
113
|
+
status_code = response.code.to_i
|
114
|
+
|
115
|
+
headers = response.each_header.to_h
|
116
|
+
|
117
|
+
is_model = false
|
118
|
+
|
119
|
+
return_object = nil
|
120
|
+
|
121
|
+
unless response.body.nil?
|
122
|
+
mime_type = headers[Constants::CONTENT_TYPE]
|
123
|
+
|
124
|
+
mime_type = mime_type.split(';')[0] if mime_type.include? ';'
|
125
|
+
converter_instance = get_converter_class_instance(mime_type.to_s.downcase)
|
126
|
+
|
127
|
+
return_object = converter_instance.get_wrapped_response(response, class_name)
|
128
|
+
end
|
129
|
+
|
130
|
+
unless return_object.nil?
|
131
|
+
|
132
|
+
is_model = true if (class_name == return_object.class.name) || is_expected_type(return_object, class_name)
|
133
|
+
end
|
134
|
+
Response::APIResponse.new(headers, status_code, return_object, is_model)
|
135
|
+
rescue SDKException => e
|
136
|
+
SDKLog::SDKLogger.severe(Constants::API_CALL_EXCEPTION, e)
|
137
|
+
raise e
|
138
|
+
rescue StandardError => e
|
139
|
+
ex = SDKException.new(nil, nil, nil, e)
|
140
|
+
SDKLog::SDKLogger.severe(Constants::API_CALL_EXCEPTION, ex)
|
141
|
+
raise ex
|
142
|
+
end
|
143
|
+
end
|
144
|
+
|
145
|
+
def is_expected_type(model, class_name)
|
146
|
+
ancestors = model.class.ancestors
|
147
|
+
ancestors.each do |ancestor|
|
148
|
+
return true if ancestor.name == class_name
|
149
|
+
end
|
150
|
+
false
|
151
|
+
end
|
152
|
+
|
153
|
+
# This method is to add an API request parameter.
|
154
|
+
# @param param [Param] A Param class instance.
|
155
|
+
# @param param_value [Object] An object containing the API request parameter value.
|
156
|
+
def add_param(param, param_value)
|
157
|
+
if param.is_a? Param
|
158
|
+
unless param_value.nil?
|
159
|
+
@param = ParameterMap.new if @param.nil?
|
160
|
+
|
161
|
+
@param.add(param, param_value)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
def param=(param_instance)
|
167
|
+
return if (param_instance==nil)
|
168
|
+
@param = ParameterMap.new if @param.nil?
|
169
|
+
@param.param_hash = @param.param_hash.merge(param_instance.param_hash)
|
170
|
+
end
|
171
|
+
|
172
|
+
def header=(header_instance)
|
173
|
+
return if (header_instance==nil)
|
174
|
+
@header = HeaderMap.new if @header.nil?
|
175
|
+
@header.header_hash = @header.header_hash.merge(header_instance.header_hash)
|
176
|
+
end
|
177
|
+
|
178
|
+
# This method is to add an API request header.
|
179
|
+
# @param header [Header] A Header class instance.
|
180
|
+
# @param param_value [Object] An object containing the API request parameter value.
|
181
|
+
def add_header(header, header_value)
|
182
|
+
if header.is_a? Header
|
183
|
+
unless header_value.nil?
|
184
|
+
|
185
|
+
@header = HeaderMap.new if @header.nil?
|
186
|
+
|
187
|
+
@header.add(header, header_value)
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
191
|
+
|
192
|
+
def set_api_url(connector)
|
193
|
+
api_path = ''
|
194
|
+
initializer = Initializer.get_initializer
|
195
|
+
if @api_path.to_s.include? Constants::HTTP
|
196
|
+
if @api_path.to_s.include? Constants::CONTENT_API_URL
|
197
|
+
api_path = initializer.environment.file_upload_url
|
198
|
+
begin
|
199
|
+
uri = URI.parse(@api_path)
|
200
|
+
|
201
|
+
api_path += uri.path
|
202
|
+
rescue URI::InvalidURIError => e
|
203
|
+
ex = SDKException.new(nil, nil, nil, e)
|
204
|
+
SDKLog::SDKLogger.severe(Constants::INVALID_URL_ERROR, ex)
|
205
|
+
|
206
|
+
raise ex
|
207
|
+
end
|
208
|
+
else
|
209
|
+
@api_path = @api_path.to_s.slice(1..@api_path.to_s.length) if @api_path.to_s.slice(0..0) == '/'
|
210
|
+
api_path += @api_path
|
211
|
+
end
|
212
|
+
else
|
213
|
+
api_path += initializer.environment.url
|
214
|
+
|
215
|
+
api_path += @api_path
|
216
|
+
end
|
217
|
+
connector.url = api_path
|
218
|
+
end
|
219
|
+
|
220
|
+
# This method is used to get a Converter class instance.
|
221
|
+
# @param encode_type [String] A String containing the expected API response content type.
|
222
|
+
def get_converter_class_instance(encode_type)
|
223
|
+
case encode_type
|
224
|
+
when 'application/json', 'text/plain' , 'application/ld+json'
|
225
|
+
Util::JSONConverter.new(self)
|
226
|
+
when 'application/xml', 'text/xml'
|
227
|
+
Util::XMLConverter.new(self)
|
228
|
+
when 'multipart/form-data'
|
229
|
+
Util::FormDataConverter.new(self)
|
230
|
+
when 'image/png','image/jpeg','image/gif','image/tiff','image/svg+xml','image/bmp','image/webp','text/csv','text/html','text/css','text/javascript','text/calendar','application/x-download','application/zip','application/pdf','application/java-archive','application/javascript','application/octet-stream','application/xhtml+xml','application/x-bzip','application/msword','application/vnd.openxmlformats-officedocument.wordprocessingml.document','application/gzip','application/x-httpd-php','application/vnd.ms-powerpoint','application/vnd.rar','application/x-sh','application/x-tar','application/vnd.ms-excel','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','application/x-7z-compressed','audio/mpeg','audio/x-ms-wma','audio/vnd.rn-realaudio','audio/x-wav','audio/3gpp','audio/3gpp2','video/mpeg','video/mp4','video/webm','video/3gpp','video/3gpp2','font/ttf'
|
231
|
+
Util::Downloader.new(self)
|
232
|
+
end
|
233
|
+
end
|
234
|
+
end
|
235
|
+
end
|