merge_ruby_client 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/environment.rb +3 -3
- data/lib/merge_ruby_client/accounting/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/accounting/client.rb +0 -7
- data/lib/merge_ruby_client/accounting/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/accounting/payments/client.rb +4 -0
- data/lib/merge_ruby_client/accounting/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/types/account.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_attachment.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_period.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/accounting_phone_number.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/address.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/accounting/types/balance_sheet.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/cash_flow_statement.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/company_info.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/contact.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/credit_note.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +5 -13
- data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/accounting/types/expense.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/expense_line.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/income_statement.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/invoice.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/journal_entry.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/journal_line.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/patched_payment_request.rb +14 -1
- data/lib/merge_ruby_client/accounting/types/payment.rb +18 -5
- data/lib/merge_ruby_client/accounting/types/payment_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/payment_request.rb +14 -1
- data/lib/merge_ruby_client/accounting/types/payment_type_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/purchase_order.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/purchase_order_line_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/accounting/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/accounting/types/report_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/tax_rate.rb +12 -10
- data/lib/merge_ruby_client/accounting/types/tax_rate_company.rb +2 -1
- data/lib/merge_ruby_client/accounting/types/tracking_category.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/transaction.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/transaction_line_item.rb +6 -6
- data/lib/merge_ruby_client/accounting/types/vendor_credit.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +4 -4
- data/lib/merge_ruby_client/ats/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/ats/client.rb +0 -7
- data/lib/merge_ruby_client/ats/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_postings/client.rb +16 -4
- data/lib/merge_ruby_client/ats/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/ats/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/ats/types/activity.rb +4 -4
- data/lib/merge_ruby_client/ats/types/application.rb +4 -4
- data/lib/merge_ruby_client/ats/types/attachment.rb +4 -4
- data/lib/merge_ruby_client/ats/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/ats/types/candidate.rb +4 -4
- data/lib/merge_ruby_client/ats/types/department.rb +4 -4
- data/lib/merge_ruby_client/ats/types/eeoc.rb +4 -4
- data/lib/merge_ruby_client/ats/types/email_address.rb +4 -4
- data/lib/merge_ruby_client/ats/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/ats/types/job.rb +4 -4
- data/lib/merge_ruby_client/ats/types/job_interview_stage.rb +4 -4
- data/lib/merge_ruby_client/ats/types/job_posting.rb +4 -4
- data/lib/merge_ruby_client/ats/types/offer.rb +4 -4
- data/lib/merge_ruby_client/ats/types/office.rb +4 -4
- data/lib/merge_ruby_client/ats/types/phone_number.rb +4 -4
- data/lib/merge_ruby_client/ats/types/reject_reason.rb +4 -4
- data/lib/merge_ruby_client/ats/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/ats/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/ats/types/remote_user.rb +4 -4
- data/lib/merge_ruby_client/ats/types/scheduled_interview.rb +4 -4
- data/lib/merge_ruby_client/ats/types/scorecard.rb +4 -4
- data/lib/merge_ruby_client/ats/types/screening_question.rb +4 -4
- data/lib/merge_ruby_client/ats/types/screening_question_option.rb +4 -4
- data/lib/merge_ruby_client/ats/types/tag.rb +4 -4
- data/lib/merge_ruby_client/ats/types/url.rb +4 -4
- data/lib/merge_ruby_client/crm/accounts/client.rb +4 -0
- data/lib/merge_ruby_client/crm/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/crm/client.rb +0 -7
- data/lib/merge_ruby_client/crm/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/crm/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/crm/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/crm/types/account.rb +4 -4
- data/lib/merge_ruby_client/crm/types/account_request.rb +13 -1
- data/lib/merge_ruby_client/crm/types/address.rb +4 -4
- data/lib/merge_ruby_client/crm/types/association.rb +6 -6
- data/lib/merge_ruby_client/crm/types/association_association_type.rb +1 -0
- data/lib/merge_ruby_client/crm/types/association_sub_type.rb +4 -4
- data/lib/merge_ruby_client/crm/types/association_type.rb +8 -6
- data/lib/merge_ruby_client/crm/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/crm/types/contact.rb +4 -4
- data/lib/merge_ruby_client/crm/types/custom_object.rb +8 -8
- data/lib/merge_ruby_client/crm/types/custom_object_class.rb +10 -8
- data/lib/merge_ruby_client/crm/types/email_address.rb +4 -4
- data/lib/merge_ruby_client/crm/types/engagement.rb +4 -4
- data/lib/merge_ruby_client/crm/types/engagement_type.rb +4 -4
- data/lib/merge_ruby_client/crm/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/crm/types/lead.rb +4 -4
- data/lib/merge_ruby_client/crm/types/note.rb +4 -4
- data/lib/merge_ruby_client/crm/types/opportunity.rb +4 -4
- data/lib/merge_ruby_client/crm/types/patched_account_request.rb +13 -1
- data/lib/merge_ruby_client/crm/types/phone_number.rb +4 -4
- data/lib/merge_ruby_client/crm/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/crm/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/crm/types/remote_field_class_for_custom_object_class.rb +4 -4
- data/lib/merge_ruby_client/crm/types/stage.rb +4 -4
- data/lib/merge_ruby_client/crm/types/task.rb +4 -4
- data/lib/merge_ruby_client/crm/types/user.rb +4 -4
- data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/filestorage/client.rb +0 -7
- data/lib/merge_ruby_client/filestorage/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/filestorage/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/filestorage/types/drive.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/filestorage/types/file.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/folder.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/group.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/permission.rb +4 -4
- data/lib/merge_ruby_client/filestorage/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/filestorage/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/filestorage/types/user.rb +4 -4
- data/lib/merge_ruby_client/hris/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/hris/client.rb +0 -7
- data/lib/merge_ruby_client/hris/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/hris/groups/client.rb +10 -2
- data/lib/merge_ruby_client/hris/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/hris/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/hris/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/hris/types/bank_info.rb +4 -4
- data/lib/merge_ruby_client/hris/types/benefit.rb +4 -4
- data/lib/merge_ruby_client/hris/types/company.rb +4 -4
- data/lib/merge_ruby_client/hris/types/deduction.rb +4 -4
- data/lib/merge_ruby_client/hris/types/dependent.rb +4 -4
- data/lib/merge_ruby_client/hris/types/earning.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employee.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employee_payroll_run.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employer_benefit.rb +4 -4
- data/lib/merge_ruby_client/hris/types/employment.rb +4 -4
- data/lib/merge_ruby_client/hris/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/hris/types/group.rb +19 -5
- data/lib/merge_ruby_client/hris/types/location.rb +4 -4
- data/lib/merge_ruby_client/hris/types/pay_group.rb +4 -4
- data/lib/merge_ruby_client/hris/types/payroll_run.rb +4 -4
- data/lib/merge_ruby_client/hris/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/hris/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/hris/types/tax.rb +4 -4
- data/lib/merge_ruby_client/hris/types/team.rb +4 -4
- data/lib/merge_ruby_client/hris/types/time_off.rb +4 -4
- data/lib/merge_ruby_client/hris/types/time_off_balance.rb +4 -4
- data/lib/merge_ruby_client/hris/types/timesheet_entry.rb +4 -4
- data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +4 -2
- data/lib/merge_ruby_client/ticketing/client.rb +0 -7
- data/lib/merge_ruby_client/ticketing/contacts/client.rb +127 -0
- data/lib/merge_ruby_client/ticketing/field_mapping/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/link_token/client.rb +10 -6
- data/lib/merge_ruby_client/ticketing/scopes/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/types/account.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/attachment.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +6 -0
- data/lib/merge_ruby_client/ticketing/types/collection.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/comment.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/contact.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/contact_request.rb +125 -0
- data/lib/merge_ruby_client/ticketing/types/contact_request_account.rb +56 -0
- data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +6 -0
- data/lib/merge_ruby_client/ticketing/types/project.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/remote_field_api.rb +16 -2
- data/lib/merge_ruby_client/ticketing/types/remote_field_api_coverage.rb +54 -0
- data/lib/merge_ruby_client/ticketing/types/role.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/tag.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/team.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/ticket.rb +4 -4
- data/lib/merge_ruby_client/ticketing/types/ticketing_contact_response.rb +101 -0
- data/lib/merge_ruby_client/ticketing/types/user.rb +4 -4
- data/lib/merge_ruby_client.rb +7 -7
- data/lib/requests.rb +12 -2
- data/lib/types_export.rb +162 -200
- metadata +12 -56
- data/lib/merge_ruby_client/accounting/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/accounting/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/accounting/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/accounting/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/accounting/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/accounting/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/accounting/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/ats/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/ats/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/ats/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/ats/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/ats/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/ats/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/ats/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/crm/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/crm/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/crm/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/crm/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/crm/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/crm/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/crm/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/filestorage/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/filestorage/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/filestorage/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/filestorage/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/filestorage/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/filestorage/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/filestorage/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/hris/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/hris/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/hris/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/hris/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/hris/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/hris/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/hris/types/paginated_condition_schema_list.rb +0 -80
- data/lib/merge_ruby_client/ticketing/selective_sync/client.rb +0 -218
- data/lib/merge_ruby_client/ticketing/types/condition_schema.rb +0 -136
- data/lib/merge_ruby_client/ticketing/types/condition_type_enum.rb +0 -22
- data/lib/merge_ruby_client/ticketing/types/linked_account_condition.rb +0 -104
- data/lib/merge_ruby_client/ticketing/types/linked_account_condition_request.rb +0 -87
- data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration.rb +0 -65
- data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration_request.rb +0 -63
- data/lib/merge_ruby_client/ticketing/types/operator_schema.rb +0 -68
- data/lib/merge_ruby_client/ticketing/types/paginated_condition_schema_list.rb +0 -80
data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration_request.rb
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "linked_account_condition_request"
|
|
4
|
-
require "ostruct"
|
|
5
|
-
require "json"
|
|
6
|
-
|
|
7
|
-
module Merge
|
|
8
|
-
module Filestorage
|
|
9
|
-
class LinkedAccountSelectiveSyncConfigurationRequest
|
|
10
|
-
# @return [Array<Merge::Filestorage::LinkedAccountConditionRequest>] The conditions belonging to a selective sync.
|
|
11
|
-
attr_reader :linked_account_conditions
|
|
12
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
13
|
-
attr_reader :additional_properties
|
|
14
|
-
# @return [Object]
|
|
15
|
-
attr_reader :_field_set
|
|
16
|
-
protected :_field_set
|
|
17
|
-
|
|
18
|
-
OMIT = Object.new
|
|
19
|
-
|
|
20
|
-
# @param linked_account_conditions [Array<Merge::Filestorage::LinkedAccountConditionRequest>] The conditions belonging to a selective sync.
|
|
21
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
22
|
-
# @return [Merge::Filestorage::LinkedAccountSelectiveSyncConfigurationRequest]
|
|
23
|
-
def initialize(linked_account_conditions:, additional_properties: nil)
|
|
24
|
-
@linked_account_conditions = linked_account_conditions
|
|
25
|
-
@additional_properties = additional_properties
|
|
26
|
-
@_field_set = { "linked_account_conditions": linked_account_conditions }
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
# Deserialize a JSON object to an instance of
|
|
30
|
-
# LinkedAccountSelectiveSyncConfigurationRequest
|
|
31
|
-
#
|
|
32
|
-
# @param json_object [String]
|
|
33
|
-
# @return [Merge::Filestorage::LinkedAccountSelectiveSyncConfigurationRequest]
|
|
34
|
-
def self.from_json(json_object:)
|
|
35
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
36
|
-
parsed_json = JSON.parse(json_object)
|
|
37
|
-
linked_account_conditions = parsed_json["linked_account_conditions"]&.map do |v|
|
|
38
|
-
v = v.to_json
|
|
39
|
-
Merge::Filestorage::LinkedAccountConditionRequest.from_json(json_object: v)
|
|
40
|
-
end
|
|
41
|
-
new(linked_account_conditions: linked_account_conditions, additional_properties: struct)
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# Serialize an instance of LinkedAccountSelectiveSyncConfigurationRequest to a
|
|
45
|
-
# JSON object
|
|
46
|
-
#
|
|
47
|
-
# @return [String]
|
|
48
|
-
def to_json(*_args)
|
|
49
|
-
@_field_set&.to_json
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
53
|
-
# hash and check each fields type against the current object's property
|
|
54
|
-
# definitions.
|
|
55
|
-
#
|
|
56
|
-
# @param obj [Object]
|
|
57
|
-
# @return [Void]
|
|
58
|
-
def self.validate_raw(obj:)
|
|
59
|
-
obj.linked_account_conditions.is_a?(Array) != false || raise("Passed value for field obj.linked_account_conditions is not the expected type, validation failed.")
|
|
60
|
-
end
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
end
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require "ostruct"
|
|
4
|
-
require "json"
|
|
5
|
-
|
|
6
|
-
module Merge
|
|
7
|
-
module Filestorage
|
|
8
|
-
class OperatorSchema
|
|
9
|
-
# @return [String] The operator for which an operator schema is defined.
|
|
10
|
-
attr_reader :operator
|
|
11
|
-
# @return [Boolean] Whether the operator can be repeated multiple times.
|
|
12
|
-
attr_reader :is_unique
|
|
13
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
14
|
-
attr_reader :additional_properties
|
|
15
|
-
# @return [Object]
|
|
16
|
-
attr_reader :_field_set
|
|
17
|
-
protected :_field_set
|
|
18
|
-
|
|
19
|
-
OMIT = Object.new
|
|
20
|
-
|
|
21
|
-
# @param operator [String] The operator for which an operator schema is defined.
|
|
22
|
-
# @param is_unique [Boolean] Whether the operator can be repeated multiple times.
|
|
23
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
24
|
-
# @return [Merge::Filestorage::OperatorSchema]
|
|
25
|
-
def initialize(operator: OMIT, is_unique: OMIT, additional_properties: nil)
|
|
26
|
-
@operator = operator if operator != OMIT
|
|
27
|
-
@is_unique = is_unique if is_unique != OMIT
|
|
28
|
-
@additional_properties = additional_properties
|
|
29
|
-
@_field_set = { "operator": operator, "is_unique": is_unique }.reject do |_k, v|
|
|
30
|
-
v == OMIT
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# Deserialize a JSON object to an instance of OperatorSchema
|
|
35
|
-
#
|
|
36
|
-
# @param json_object [String]
|
|
37
|
-
# @return [Merge::Filestorage::OperatorSchema]
|
|
38
|
-
def self.from_json(json_object:)
|
|
39
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
40
|
-
operator = struct["operator"]
|
|
41
|
-
is_unique = struct["is_unique"]
|
|
42
|
-
new(
|
|
43
|
-
operator: operator,
|
|
44
|
-
is_unique: is_unique,
|
|
45
|
-
additional_properties: struct
|
|
46
|
-
)
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
# Serialize an instance of OperatorSchema to a JSON object
|
|
50
|
-
#
|
|
51
|
-
# @return [String]
|
|
52
|
-
def to_json(*_args)
|
|
53
|
-
@_field_set&.to_json
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
57
|
-
# hash and check each fields type against the current object's property
|
|
58
|
-
# definitions.
|
|
59
|
-
#
|
|
60
|
-
# @param obj [Object]
|
|
61
|
-
# @return [Void]
|
|
62
|
-
def self.validate_raw(obj:)
|
|
63
|
-
obj.operator&.is_a?(String) != false || raise("Passed value for field obj.operator is not the expected type, validation failed.")
|
|
64
|
-
obj.is_unique&.is_a?(Boolean) != false || raise("Passed value for field obj.is_unique is not the expected type, validation failed.")
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
end
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "condition_schema"
|
|
4
|
-
require "ostruct"
|
|
5
|
-
require "json"
|
|
6
|
-
|
|
7
|
-
module Merge
|
|
8
|
-
module Filestorage
|
|
9
|
-
class PaginatedConditionSchemaList
|
|
10
|
-
# @return [String]
|
|
11
|
-
attr_reader :next_
|
|
12
|
-
# @return [String]
|
|
13
|
-
attr_reader :previous
|
|
14
|
-
# @return [Array<Merge::Filestorage::ConditionSchema>]
|
|
15
|
-
attr_reader :results
|
|
16
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
17
|
-
attr_reader :additional_properties
|
|
18
|
-
# @return [Object]
|
|
19
|
-
attr_reader :_field_set
|
|
20
|
-
protected :_field_set
|
|
21
|
-
|
|
22
|
-
OMIT = Object.new
|
|
23
|
-
|
|
24
|
-
# @param next_ [String]
|
|
25
|
-
# @param previous [String]
|
|
26
|
-
# @param results [Array<Merge::Filestorage::ConditionSchema>]
|
|
27
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
28
|
-
# @return [Merge::Filestorage::PaginatedConditionSchemaList]
|
|
29
|
-
def initialize(next_: OMIT, previous: OMIT, results: OMIT, additional_properties: nil)
|
|
30
|
-
@next_ = next_ if next_ != OMIT
|
|
31
|
-
@previous = previous if previous != OMIT
|
|
32
|
-
@results = results if results != OMIT
|
|
33
|
-
@additional_properties = additional_properties
|
|
34
|
-
@_field_set = { "next": next_, "previous": previous, "results": results }.reject do |_k, v|
|
|
35
|
-
v == OMIT
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
# Deserialize a JSON object to an instance of PaginatedConditionSchemaList
|
|
40
|
-
#
|
|
41
|
-
# @param json_object [String]
|
|
42
|
-
# @return [Merge::Filestorage::PaginatedConditionSchemaList]
|
|
43
|
-
def self.from_json(json_object:)
|
|
44
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
45
|
-
parsed_json = JSON.parse(json_object)
|
|
46
|
-
next_ = struct["next"]
|
|
47
|
-
previous = struct["previous"]
|
|
48
|
-
results = parsed_json["results"]&.map do |v|
|
|
49
|
-
v = v.to_json
|
|
50
|
-
Merge::Filestorage::ConditionSchema.from_json(json_object: v)
|
|
51
|
-
end
|
|
52
|
-
new(
|
|
53
|
-
next_: next_,
|
|
54
|
-
previous: previous,
|
|
55
|
-
results: results,
|
|
56
|
-
additional_properties: struct
|
|
57
|
-
)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# Serialize an instance of PaginatedConditionSchemaList to a JSON object
|
|
61
|
-
#
|
|
62
|
-
# @return [String]
|
|
63
|
-
def to_json(*_args)
|
|
64
|
-
@_field_set&.to_json
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
68
|
-
# hash and check each fields type against the current object's property
|
|
69
|
-
# definitions.
|
|
70
|
-
#
|
|
71
|
-
# @param obj [Object]
|
|
72
|
-
# @return [Void]
|
|
73
|
-
def self.validate_raw(obj:)
|
|
74
|
-
obj.next_&.is_a?(String) != false || raise("Passed value for field obj.next_ is not the expected type, validation failed.")
|
|
75
|
-
obj.previous&.is_a?(String) != false || raise("Passed value for field obj.previous is not the expected type, validation failed.")
|
|
76
|
-
obj.results&.is_a?(Array) != false || raise("Passed value for field obj.results is not the expected type, validation failed.")
|
|
77
|
-
end
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
end
|
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "../../../requests"
|
|
4
|
-
require_relative "../types/linked_account_selective_sync_configuration"
|
|
5
|
-
require "json"
|
|
6
|
-
require_relative "../types/linked_account_selective_sync_configuration_request"
|
|
7
|
-
require_relative "../types/paginated_condition_schema_list"
|
|
8
|
-
require "async"
|
|
9
|
-
|
|
10
|
-
module Merge
|
|
11
|
-
module Hris
|
|
12
|
-
class SelectiveSyncClient
|
|
13
|
-
# @return [Merge::RequestClient]
|
|
14
|
-
attr_reader :request_client
|
|
15
|
-
|
|
16
|
-
# @param request_client [Merge::RequestClient]
|
|
17
|
-
# @return [Merge::Hris::SelectiveSyncClient]
|
|
18
|
-
def initialize(request_client:)
|
|
19
|
-
@request_client = request_client
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
# Get a linked account's selective syncs.
|
|
23
|
-
#
|
|
24
|
-
# @param request_options [Merge::RequestOptions]
|
|
25
|
-
# @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
|
|
26
|
-
# @example
|
|
27
|
-
# api = Merge::Client.new(
|
|
28
|
-
# environment: Environment::PRODUCTION,
|
|
29
|
-
# base_url: "https://api.example.com",
|
|
30
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
31
|
-
# )
|
|
32
|
-
# api.hris.configurations_list
|
|
33
|
-
def configurations_list(request_options: nil)
|
|
34
|
-
response = @request_client.conn.get do |req|
|
|
35
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
36
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
37
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
38
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
39
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
|
|
40
|
-
end
|
|
41
|
-
parsed_json = JSON.parse(response.body)
|
|
42
|
-
parsed_json&.map do |v|
|
|
43
|
-
v = v.to_json
|
|
44
|
-
Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
# Replace a linked account's selective syncs.
|
|
49
|
-
#
|
|
50
|
-
# @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Hris::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
|
|
51
|
-
# * :linked_account_conditions (Array<Merge::Hris::LinkedAccountConditionRequest>)
|
|
52
|
-
# @param request_options [Merge::RequestOptions]
|
|
53
|
-
# @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
|
|
54
|
-
# @example
|
|
55
|
-
# api = Merge::Client.new(
|
|
56
|
-
# environment: Environment::PRODUCTION,
|
|
57
|
-
# base_url: "https://api.example.com",
|
|
58
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
59
|
-
# )
|
|
60
|
-
# api.hris.configurations_update(sync_configurations: [{ linked_account_conditions: }])
|
|
61
|
-
def configurations_update(sync_configurations:, request_options: nil)
|
|
62
|
-
response = @request_client.conn.put do |req|
|
|
63
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
64
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
65
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
66
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
67
|
-
req.body = {
|
|
68
|
-
**(request_options&.additional_body_parameters || {}),
|
|
69
|
-
sync_configurations: sync_configurations
|
|
70
|
-
}.compact
|
|
71
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
|
|
72
|
-
end
|
|
73
|
-
parsed_json = JSON.parse(response.body)
|
|
74
|
-
parsed_json&.map do |v|
|
|
75
|
-
v = v.to_json
|
|
76
|
-
Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
77
|
-
end
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
# Get metadata for the conditions available to a linked account.
|
|
81
|
-
#
|
|
82
|
-
# @param common_model [String]
|
|
83
|
-
# @param cursor [String] The pagination cursor value.
|
|
84
|
-
# @param page_size [Integer] Number of results to return per page.
|
|
85
|
-
# @param request_options [Merge::RequestOptions]
|
|
86
|
-
# @return [Merge::Hris::PaginatedConditionSchemaList]
|
|
87
|
-
# @example
|
|
88
|
-
# api = Merge::Client.new(
|
|
89
|
-
# environment: Environment::PRODUCTION,
|
|
90
|
-
# base_url: "https://api.example.com",
|
|
91
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
92
|
-
# )
|
|
93
|
-
# api.hris.meta_list
|
|
94
|
-
def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
|
|
95
|
-
response = @request_client.conn.get do |req|
|
|
96
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
97
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
98
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
99
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
100
|
-
req.params = {
|
|
101
|
-
**(request_options&.additional_query_parameters || {}),
|
|
102
|
-
"common_model": common_model,
|
|
103
|
-
"cursor": cursor,
|
|
104
|
-
"page_size": page_size
|
|
105
|
-
}.compact
|
|
106
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/meta"
|
|
107
|
-
end
|
|
108
|
-
Merge::Hris::PaginatedConditionSchemaList.from_json(json_object: response.body)
|
|
109
|
-
end
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
class AsyncSelectiveSyncClient
|
|
113
|
-
# @return [Merge::AsyncRequestClient]
|
|
114
|
-
attr_reader :request_client
|
|
115
|
-
|
|
116
|
-
# @param request_client [Merge::AsyncRequestClient]
|
|
117
|
-
# @return [Merge::Hris::AsyncSelectiveSyncClient]
|
|
118
|
-
def initialize(request_client:)
|
|
119
|
-
@request_client = request_client
|
|
120
|
-
end
|
|
121
|
-
|
|
122
|
-
# Get a linked account's selective syncs.
|
|
123
|
-
#
|
|
124
|
-
# @param request_options [Merge::RequestOptions]
|
|
125
|
-
# @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
|
|
126
|
-
# @example
|
|
127
|
-
# api = Merge::Client.new(
|
|
128
|
-
# environment: Environment::PRODUCTION,
|
|
129
|
-
# base_url: "https://api.example.com",
|
|
130
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
131
|
-
# )
|
|
132
|
-
# api.hris.configurations_list
|
|
133
|
-
def configurations_list(request_options: nil)
|
|
134
|
-
Async do
|
|
135
|
-
response = @request_client.conn.get do |req|
|
|
136
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
137
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
138
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
139
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
140
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
|
|
141
|
-
end
|
|
142
|
-
parsed_json = JSON.parse(response.body)
|
|
143
|
-
parsed_json&.map do |v|
|
|
144
|
-
v = v.to_json
|
|
145
|
-
Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
146
|
-
end
|
|
147
|
-
end
|
|
148
|
-
end
|
|
149
|
-
|
|
150
|
-
# Replace a linked account's selective syncs.
|
|
151
|
-
#
|
|
152
|
-
# @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Hris::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
|
|
153
|
-
# * :linked_account_conditions (Array<Merge::Hris::LinkedAccountConditionRequest>)
|
|
154
|
-
# @param request_options [Merge::RequestOptions]
|
|
155
|
-
# @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
|
|
156
|
-
# @example
|
|
157
|
-
# api = Merge::Client.new(
|
|
158
|
-
# environment: Environment::PRODUCTION,
|
|
159
|
-
# base_url: "https://api.example.com",
|
|
160
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
161
|
-
# )
|
|
162
|
-
# api.hris.configurations_update(sync_configurations: [{ linked_account_conditions: }])
|
|
163
|
-
def configurations_update(sync_configurations:, request_options: nil)
|
|
164
|
-
Async do
|
|
165
|
-
response = @request_client.conn.put do |req|
|
|
166
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
167
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
168
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
169
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
170
|
-
req.body = {
|
|
171
|
-
**(request_options&.additional_body_parameters || {}),
|
|
172
|
-
sync_configurations: sync_configurations
|
|
173
|
-
}.compact
|
|
174
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
|
|
175
|
-
end
|
|
176
|
-
parsed_json = JSON.parse(response.body)
|
|
177
|
-
parsed_json&.map do |v|
|
|
178
|
-
v = v.to_json
|
|
179
|
-
Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
|
|
180
|
-
end
|
|
181
|
-
end
|
|
182
|
-
end
|
|
183
|
-
|
|
184
|
-
# Get metadata for the conditions available to a linked account.
|
|
185
|
-
#
|
|
186
|
-
# @param common_model [String]
|
|
187
|
-
# @param cursor [String] The pagination cursor value.
|
|
188
|
-
# @param page_size [Integer] Number of results to return per page.
|
|
189
|
-
# @param request_options [Merge::RequestOptions]
|
|
190
|
-
# @return [Merge::Hris::PaginatedConditionSchemaList]
|
|
191
|
-
# @example
|
|
192
|
-
# api = Merge::Client.new(
|
|
193
|
-
# environment: Environment::PRODUCTION,
|
|
194
|
-
# base_url: "https://api.example.com",
|
|
195
|
-
# api_key: "YOUR_AUTH_TOKEN"
|
|
196
|
-
# )
|
|
197
|
-
# api.hris.meta_list
|
|
198
|
-
def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
|
|
199
|
-
Async do
|
|
200
|
-
response = @request_client.conn.get do |req|
|
|
201
|
-
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
202
|
-
req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
|
|
203
|
-
req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
|
|
204
|
-
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
|
205
|
-
req.params = {
|
|
206
|
-
**(request_options&.additional_query_parameters || {}),
|
|
207
|
-
"common_model": common_model,
|
|
208
|
-
"cursor": cursor,
|
|
209
|
-
"page_size": page_size
|
|
210
|
-
}.compact
|
|
211
|
-
req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/meta"
|
|
212
|
-
end
|
|
213
|
-
Merge::Hris::PaginatedConditionSchemaList.from_json(json_object: response.body)
|
|
214
|
-
end
|
|
215
|
-
end
|
|
216
|
-
end
|
|
217
|
-
end
|
|
218
|
-
end
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative "condition_type_enum"
|
|
4
|
-
require_relative "operator_schema"
|
|
5
|
-
require "ostruct"
|
|
6
|
-
require "json"
|
|
7
|
-
|
|
8
|
-
module Merge
|
|
9
|
-
module Hris
|
|
10
|
-
class ConditionSchema
|
|
11
|
-
# @return [String] The ID of the condition schema. This ID is used when updating selective syncs
|
|
12
|
-
# for a linked account.
|
|
13
|
-
attr_reader :id
|
|
14
|
-
# @return [String] The common model for which a condition schema is defined.
|
|
15
|
-
attr_reader :common_model
|
|
16
|
-
# @return [String]
|
|
17
|
-
attr_reader :native_name
|
|
18
|
-
# @return [String]
|
|
19
|
-
attr_reader :field_name
|
|
20
|
-
# @return [Boolean] Whether this condition can only be applied once. If false, the condition can be
|
|
21
|
-
# AND'd together multiple times.
|
|
22
|
-
attr_reader :is_unique
|
|
23
|
-
# @return [Merge::Hris::ConditionTypeEnum] The type of value(s) that can be set for this condition.
|
|
24
|
-
# - `BOOLEAN` - BOOLEAN
|
|
25
|
-
# - `DATE` - DATE
|
|
26
|
-
# - `DATE_TIME` - DATE_TIME
|
|
27
|
-
# - `INTEGER` - INTEGER
|
|
28
|
-
# - `FLOAT` - FLOAT
|
|
29
|
-
# - `STRING` - STRING
|
|
30
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
31
|
-
attr_reader :condition_type
|
|
32
|
-
# @return [Array<Merge::Hris::OperatorSchema>] The schemas for the operators that can be used on a condition.
|
|
33
|
-
attr_reader :operators
|
|
34
|
-
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
|
35
|
-
attr_reader :additional_properties
|
|
36
|
-
# @return [Object]
|
|
37
|
-
attr_reader :_field_set
|
|
38
|
-
protected :_field_set
|
|
39
|
-
|
|
40
|
-
OMIT = Object.new
|
|
41
|
-
|
|
42
|
-
# @param id [String] The ID of the condition schema. This ID is used when updating selective syncs
|
|
43
|
-
# for a linked account.
|
|
44
|
-
# @param common_model [String] The common model for which a condition schema is defined.
|
|
45
|
-
# @param native_name [String]
|
|
46
|
-
# @param field_name [String]
|
|
47
|
-
# @param is_unique [Boolean] Whether this condition can only be applied once. If false, the condition can be
|
|
48
|
-
# AND'd together multiple times.
|
|
49
|
-
# @param condition_type [Merge::Hris::ConditionTypeEnum] The type of value(s) that can be set for this condition.
|
|
50
|
-
# - `BOOLEAN` - BOOLEAN
|
|
51
|
-
# - `DATE` - DATE
|
|
52
|
-
# - `DATE_TIME` - DATE_TIME
|
|
53
|
-
# - `INTEGER` - INTEGER
|
|
54
|
-
# - `FLOAT` - FLOAT
|
|
55
|
-
# - `STRING` - STRING
|
|
56
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
57
|
-
# @param operators [Array<Merge::Hris::OperatorSchema>] The schemas for the operators that can be used on a condition.
|
|
58
|
-
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
59
|
-
# @return [Merge::Hris::ConditionSchema]
|
|
60
|
-
def initialize(id:, condition_type:, operators:, common_model: OMIT, native_name: OMIT, field_name: OMIT,
|
|
61
|
-
is_unique: OMIT, additional_properties: nil)
|
|
62
|
-
@id = id
|
|
63
|
-
@common_model = common_model if common_model != OMIT
|
|
64
|
-
@native_name = native_name if native_name != OMIT
|
|
65
|
-
@field_name = field_name if field_name != OMIT
|
|
66
|
-
@is_unique = is_unique if is_unique != OMIT
|
|
67
|
-
@condition_type = condition_type
|
|
68
|
-
@operators = operators
|
|
69
|
-
@additional_properties = additional_properties
|
|
70
|
-
@_field_set = {
|
|
71
|
-
"id": id,
|
|
72
|
-
"common_model": common_model,
|
|
73
|
-
"native_name": native_name,
|
|
74
|
-
"field_name": field_name,
|
|
75
|
-
"is_unique": is_unique,
|
|
76
|
-
"condition_type": condition_type,
|
|
77
|
-
"operators": operators
|
|
78
|
-
}.reject do |_k, v|
|
|
79
|
-
v == OMIT
|
|
80
|
-
end
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# Deserialize a JSON object to an instance of ConditionSchema
|
|
84
|
-
#
|
|
85
|
-
# @param json_object [String]
|
|
86
|
-
# @return [Merge::Hris::ConditionSchema]
|
|
87
|
-
def self.from_json(json_object:)
|
|
88
|
-
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
89
|
-
parsed_json = JSON.parse(json_object)
|
|
90
|
-
id = struct["id"]
|
|
91
|
-
common_model = struct["common_model"]
|
|
92
|
-
native_name = struct["native_name"]
|
|
93
|
-
field_name = struct["field_name"]
|
|
94
|
-
is_unique = struct["is_unique"]
|
|
95
|
-
condition_type = struct["condition_type"]
|
|
96
|
-
operators = parsed_json["operators"]&.map do |v|
|
|
97
|
-
v = v.to_json
|
|
98
|
-
Merge::Hris::OperatorSchema.from_json(json_object: v)
|
|
99
|
-
end
|
|
100
|
-
new(
|
|
101
|
-
id: id,
|
|
102
|
-
common_model: common_model,
|
|
103
|
-
native_name: native_name,
|
|
104
|
-
field_name: field_name,
|
|
105
|
-
is_unique: is_unique,
|
|
106
|
-
condition_type: condition_type,
|
|
107
|
-
operators: operators,
|
|
108
|
-
additional_properties: struct
|
|
109
|
-
)
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
# Serialize an instance of ConditionSchema to a JSON object
|
|
113
|
-
#
|
|
114
|
-
# @return [String]
|
|
115
|
-
def to_json(*_args)
|
|
116
|
-
@_field_set&.to_json
|
|
117
|
-
end
|
|
118
|
-
|
|
119
|
-
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
120
|
-
# hash and check each fields type against the current object's property
|
|
121
|
-
# definitions.
|
|
122
|
-
#
|
|
123
|
-
# @param obj [Object]
|
|
124
|
-
# @return [Void]
|
|
125
|
-
def self.validate_raw(obj:)
|
|
126
|
-
obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
|
|
127
|
-
obj.common_model&.is_a?(String) != false || raise("Passed value for field obj.common_model is not the expected type, validation failed.")
|
|
128
|
-
obj.native_name&.is_a?(String) != false || raise("Passed value for field obj.native_name is not the expected type, validation failed.")
|
|
129
|
-
obj.field_name&.is_a?(String) != false || raise("Passed value for field obj.field_name is not the expected type, validation failed.")
|
|
130
|
-
obj.is_unique&.is_a?(Boolean) != false || raise("Passed value for field obj.is_unique is not the expected type, validation failed.")
|
|
131
|
-
obj.condition_type.is_a?(Merge::Hris::ConditionTypeEnum) != false || raise("Passed value for field obj.condition_type is not the expected type, validation failed.")
|
|
132
|
-
obj.operators.is_a?(Array) != false || raise("Passed value for field obj.operators is not the expected type, validation failed.")
|
|
133
|
-
end
|
|
134
|
-
end
|
|
135
|
-
end
|
|
136
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module Merge
|
|
4
|
-
module Hris
|
|
5
|
-
# - `BOOLEAN` - BOOLEAN
|
|
6
|
-
# - `DATE` - DATE
|
|
7
|
-
# - `DATE_TIME` - DATE_TIME
|
|
8
|
-
# - `INTEGER` - INTEGER
|
|
9
|
-
# - `FLOAT` - FLOAT
|
|
10
|
-
# - `STRING` - STRING
|
|
11
|
-
# - `LIST_OF_STRINGS` - LIST_OF_STRINGS
|
|
12
|
-
class ConditionTypeEnum
|
|
13
|
-
BOOLEAN = "BOOLEAN"
|
|
14
|
-
DATE = "DATE"
|
|
15
|
-
DATE_TIME = "DATE_TIME"
|
|
16
|
-
INTEGER = "INTEGER"
|
|
17
|
-
FLOAT = "FLOAT"
|
|
18
|
-
STRING = "STRING"
|
|
19
|
-
LIST_OF_STRINGS = "LIST_OF_STRINGS"
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|