xero-ruby 3.5.0 → 3.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/lib/xero-ruby/api_client.rb +1 -1
  3. data/lib/xero-ruby/models/accounting/account.rb +34 -34
  4. data/lib/xero-ruby/models/accounting/account_type.rb +22 -22
  5. data/lib/xero-ruby/models/accounting/action.rb +2 -2
  6. data/lib/xero-ruby/models/accounting/address.rb +2 -2
  7. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +3 -3
  8. data/lib/xero-ruby/models/accounting/bank_transaction.rb +11 -11
  9. data/lib/xero-ruby/models/accounting/batch_payment.rb +4 -4
  10. data/lib/xero-ruby/models/accounting/branding_theme.rb +1 -1
  11. data/lib/xero-ruby/models/accounting/budget.rb +2 -2
  12. data/lib/xero-ruby/models/accounting/contact.rb +9 -9
  13. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -2
  14. data/lib/xero-ruby/models/accounting/country_code.rb +240 -240
  15. data/lib/xero-ruby/models/accounting/credit_note.rb +8 -8
  16. data/lib/xero-ruby/models/accounting/currency_code.rb +166 -166
  17. data/lib/xero-ruby/models/accounting/employee.rb +4 -4
  18. data/lib/xero-ruby/models/accounting/expense_claim.rb +5 -5
  19. data/lib/xero-ruby/models/accounting/external_link.rb +5 -5
  20. data/lib/xero-ruby/models/accounting/invoice.rb +14 -14
  21. data/lib/xero-ruby/models/accounting/journal.rb +25 -25
  22. data/lib/xero-ruby/models/accounting/line_amount_types.rb +3 -3
  23. data/lib/xero-ruby/models/accounting/linked_transaction.rb +8 -8
  24. data/lib/xero-ruby/models/accounting/manual_journal.rb +5 -5
  25. data/lib/xero-ruby/models/accounting/organisation.rb +70 -70
  26. data/lib/xero-ruby/models/accounting/overpayment.rb +6 -6
  27. data/lib/xero-ruby/models/accounting/payment.rb +10 -10
  28. data/lib/xero-ruby/models/accounting/payment_term_type.rb +4 -4
  29. data/lib/xero-ruby/models/accounting/phone.rb +5 -5
  30. data/lib/xero-ruby/models/accounting/prepayment.rb +7 -7
  31. data/lib/xero-ruby/models/accounting/purchase_order.rb +5 -5
  32. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +3 -3
  33. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +6 -6
  34. data/lib/xero-ruby/models/accounting/receipt.rb +5 -5
  35. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +5 -5
  36. data/lib/xero-ruby/models/accounting/report.rb +1 -1
  37. data/lib/xero-ruby/models/accounting/row_type.rb +4 -4
  38. data/lib/xero-ruby/models/accounting/schedule.rb +8 -8
  39. data/lib/xero-ruby/models/accounting/tax_rate.rb +78 -78
  40. data/lib/xero-ruby/models/accounting/tax_type.rb +59 -59
  41. data/lib/xero-ruby/models/accounting/time_zone.rb +109 -109
  42. data/lib/xero-ruby/models/accounting/tracking_category.rb +3 -3
  43. data/lib/xero-ruby/models/accounting/tracking_option.rb +3 -3
  44. data/lib/xero-ruby/models/accounting/user.rb +7 -7
  45. data/lib/xero-ruby/models/app_store/plan.rb +6 -5
  46. data/lib/xero-ruby/models/app_store/product.rb +2 -2
  47. data/lib/xero-ruby/models/app_store/subscription.rb +37 -0
  48. data/lib/xero-ruby/models/app_store/subscription_item.rb +53 -1
  49. data/lib/xero-ruby/models/assets/asset_status.rb +3 -3
  50. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +3 -3
  51. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +11 -11
  52. data/lib/xero-ruby/models/files/object_group.rb +12 -11
  53. data/lib/xero-ruby/models/files/object_type.rb +56 -55
  54. data/lib/xero-ruby/models/finance/problem_type.rb +5 -5
  55. data/lib/xero-ruby/models/payroll_au/account_type.rb +23 -23
  56. data/lib/xero-ruby/models/payroll_au/allowance_category.rb +41 -0
  57. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +10 -7
  58. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +6 -6
  59. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +3 -3
  60. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +3 -3
  61. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +14 -4
  62. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +3 -3
  63. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +12 -12
  64. data/lib/xero-ruby/models/payroll_au/employee.rb +11 -11
  65. data/lib/xero-ruby/models/payroll_au/employee_status.rb +2 -2
  66. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +5 -5
  67. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +2 -2
  68. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +2 -2
  69. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +5 -5
  70. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +2 -2
  71. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +4 -4
  72. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +6 -6
  73. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +2 -2
  74. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +7 -7
  75. data/lib/xero-ruby/models/payroll_au/rate_type.rb +3 -3
  76. data/lib/xero-ruby/models/payroll_au/residency_status.rb +3 -3
  77. data/lib/xero-ruby/models/payroll_au/state.rb +8 -8
  78. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +2 -2
  79. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +3 -3
  80. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +4 -4
  81. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +4 -4
  82. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +5 -5
  83. data/lib/xero-ruby/models/payroll_nz/account.rb +4 -4
  84. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +2 -2
  85. data/lib/xero-ruby/models/payroll_nz/benefit.rb +5 -5
  86. data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +7 -7
  87. data/lib/xero-ruby/models/payroll_nz/deduction.rb +4 -4
  88. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +18 -18
  89. data/lib/xero-ruby/models/payroll_nz/employee.rb +2 -2
  90. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +4 -4
  91. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +6 -6
  92. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +8 -8
  93. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +5 -5
  94. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +2 -2
  95. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +5 -5
  96. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +3 -3
  97. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +3 -3
  98. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +8 -8
  99. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +5 -5
  100. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +11 -11
  101. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +19 -19
  102. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +2 -2
  103. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +4 -4
  104. data/lib/xero-ruby/models/payroll_uk/account.rb +7 -7
  105. data/lib/xero-ruby/models/payroll_uk/benefit.rb +4 -4
  106. data/lib/xero-ruby/models/payroll_uk/deduction.rb +12 -12
  107. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +26 -26
  108. data/lib/xero-ruby/models/payroll_uk/employee.rb +2 -2
  109. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +4 -4
  110. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +6 -6
  111. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +8 -8
  112. data/lib/xero-ruby/models/payroll_uk/employment.rb +8 -8
  113. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +2 -2
  114. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +11 -11
  115. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +6 -6
  116. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +3 -3
  117. data/lib/xero-ruby/models/payroll_uk/payslip.rb +3 -3
  118. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +5 -5
  119. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +14 -14
  120. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +3 -3
  121. data/lib/xero-ruby/models/projects/charge_type.rb +3 -3
  122. data/lib/xero-ruby/models/projects/currency_code.rb +164 -164
  123. data/lib/xero-ruby/models/projects/project_status.rb +2 -2
  124. data/lib/xero-ruby/models/projects/task.rb +3 -3
  125. data/lib/xero-ruby/models/projects/time_entry.rb +3 -3
  126. data/lib/xero-ruby/version.rb +6 -6
  127. data/lib/xero-ruby.rb +1 -0
  128. metadata +3 -2
@@ -14,65 +14,65 @@ require 'date'
14
14
 
15
15
  module XeroRuby::Accounting
16
16
  class TaxType
17
- OUTPUT = "OUTPUT".freeze
18
- INPUT = "INPUT".freeze
19
- CAPEXINPUT = "CAPEXINPUT".freeze
20
- EXEMPTEXPORT = "EXEMPTEXPORT".freeze
21
- EXEMPTEXPENSES = "EXEMPTEXPENSES".freeze
22
- EXEMPTCAPITAL = "EXEMPTCAPITAL".freeze
23
- EXEMPTOUTPUT = "EXEMPTOUTPUT".freeze
24
- INPUTTAXED = "INPUTTAXED".freeze
25
- BASEXCLUDED = "BASEXCLUDED".freeze
26
- GSTONCAPIMPORTS = "GSTONCAPIMPORTS".freeze
27
- GSTONIMPORTS = "GSTONIMPORTS".freeze
28
- NONE = "NONE".freeze
29
- INPUT2 = "INPUT2".freeze
30
- ZERORATED = "ZERORATED".freeze
31
- OUTPUT2 = "OUTPUT2".freeze
32
- CAPEXINPUT2 = "CAPEXINPUT2".freeze
33
- CAPEXOUTPUT = "CAPEXOUTPUT".freeze
34
- CAPEXOUTPUT2 = "CAPEXOUTPUT2".freeze
35
- CAPEXSRINPUT = "CAPEXSRINPUT".freeze
36
- CAPEXSROUTPUT = "CAPEXSROUTPUT".freeze
37
- ECACQUISITIONS = "ECACQUISITIONS".freeze
38
- ECZRINPUT = "ECZRINPUT".freeze
39
- ECZROUTPUT = "ECZROUTPUT".freeze
40
- ECZROUTPUTSERVICES = "ECZROUTPUTSERVICES".freeze
41
- EXEMPTINPUT = "EXEMPTINPUT".freeze
42
- REVERSECHARGES = "REVERSECHARGES".freeze
43
- RRINPUT = "RRINPUT".freeze
44
- RROUTPUT = "RROUTPUT".freeze
45
- SRINPUT = "SRINPUT".freeze
46
- SROUTPUT = "SROUTPUT".freeze
47
- ZERORATEDINPUT = "ZERORATEDINPUT".freeze
48
- ZERORATEDOUTPUT = "ZERORATEDOUTPUT".freeze
49
- BLINPUT = "BLINPUT".freeze
50
- DSOUTPUT = "DSOUTPUT".freeze
51
- EPINPUT = "EPINPUT".freeze
52
- ES33_OUTPUT = "ES33OUTPUT".freeze
53
- ESN33_OUTPUT = "ESN33OUTPUT".freeze
54
- IGDSINPUT2 = "IGDSINPUT2".freeze
55
- IMINPUT2 = "IMINPUT2".freeze
56
- MEINPUT = "MEINPUT".freeze
57
- NRINPUT = "NRINPUT".freeze
58
- OPINPUT = "OPINPUT".freeze
59
- OSOUTPUT = "OSOUTPUT".freeze
60
- TXESSINPUT = "TXESSINPUT".freeze
61
- TXN33_INPUT = "TXN33INPUT".freeze
62
- TXPETINPUT = "TXPETINPUT".freeze
63
- TXREINPUT = "TXREINPUT".freeze
64
- INPUT3 = "INPUT3".freeze
65
- INPUT4 = "INPUT4".freeze
66
- OUTPUT3 = "OUTPUT3".freeze
67
- OUTPUT4 = "OUTPUT4".freeze
68
- SROUTPUT2 = "SROUTPUT2".freeze
69
- TXCA = "TXCA".freeze
70
- SRCAS = "SRCAS".freeze
71
- BLINPUT2 = "BLINPUT2".freeze
72
- DRCHARGESUPPLY20 = "DRCHARGESUPPLY20".freeze
73
- DRCHARGE20 = "DRCHARGE20".freeze
74
- DRCHARGESUPPLY5 = "DRCHARGESUPPLY5".freeze
75
- DRCHARGE5 = "DRCHARGE5".freeze
17
+ OUTPUT ||= "OUTPUT".freeze
18
+ INPUT ||= "INPUT".freeze
19
+ CAPEXINPUT ||= "CAPEXINPUT".freeze
20
+ EXEMPTEXPORT ||= "EXEMPTEXPORT".freeze
21
+ EXEMPTEXPENSES ||= "EXEMPTEXPENSES".freeze
22
+ EXEMPTCAPITAL ||= "EXEMPTCAPITAL".freeze
23
+ EXEMPTOUTPUT ||= "EXEMPTOUTPUT".freeze
24
+ INPUTTAXED ||= "INPUTTAXED".freeze
25
+ BASEXCLUDED ||= "BASEXCLUDED".freeze
26
+ GSTONCAPIMPORTS ||= "GSTONCAPIMPORTS".freeze
27
+ GSTONIMPORTS ||= "GSTONIMPORTS".freeze
28
+ NONE ||= "NONE".freeze
29
+ INPUT2 ||= "INPUT2".freeze
30
+ ZERORATED ||= "ZERORATED".freeze
31
+ OUTPUT2 ||= "OUTPUT2".freeze
32
+ CAPEXINPUT2 ||= "CAPEXINPUT2".freeze
33
+ CAPEXOUTPUT ||= "CAPEXOUTPUT".freeze
34
+ CAPEXOUTPUT2 ||= "CAPEXOUTPUT2".freeze
35
+ CAPEXSRINPUT ||= "CAPEXSRINPUT".freeze
36
+ CAPEXSROUTPUT ||= "CAPEXSROUTPUT".freeze
37
+ ECACQUISITIONS ||= "ECACQUISITIONS".freeze
38
+ ECZRINPUT ||= "ECZRINPUT".freeze
39
+ ECZROUTPUT ||= "ECZROUTPUT".freeze
40
+ ECZROUTPUTSERVICES ||= "ECZROUTPUTSERVICES".freeze
41
+ EXEMPTINPUT ||= "EXEMPTINPUT".freeze
42
+ REVERSECHARGES ||= "REVERSECHARGES".freeze
43
+ RRINPUT ||= "RRINPUT".freeze
44
+ RROUTPUT ||= "RROUTPUT".freeze
45
+ SRINPUT ||= "SRINPUT".freeze
46
+ SROUTPUT ||= "SROUTPUT".freeze
47
+ ZERORATEDINPUT ||= "ZERORATEDINPUT".freeze
48
+ ZERORATEDOUTPUT ||= "ZERORATEDOUTPUT".freeze
49
+ BLINPUT ||= "BLINPUT".freeze
50
+ DSOUTPUT ||= "DSOUTPUT".freeze
51
+ EPINPUT ||= "EPINPUT".freeze
52
+ ES33_OUTPUT ||= "ES33OUTPUT".freeze
53
+ ESN33_OUTPUT ||= "ESN33OUTPUT".freeze
54
+ IGDSINPUT2 ||= "IGDSINPUT2".freeze
55
+ IMINPUT2 ||= "IMINPUT2".freeze
56
+ MEINPUT ||= "MEINPUT".freeze
57
+ NRINPUT ||= "NRINPUT".freeze
58
+ OPINPUT ||= "OPINPUT".freeze
59
+ OSOUTPUT ||= "OSOUTPUT".freeze
60
+ TXESSINPUT ||= "TXESSINPUT".freeze
61
+ TXN33_INPUT ||= "TXN33INPUT".freeze
62
+ TXPETINPUT ||= "TXPETINPUT".freeze
63
+ TXREINPUT ||= "TXREINPUT".freeze
64
+ INPUT3 ||= "INPUT3".freeze
65
+ INPUT4 ||= "INPUT4".freeze
66
+ OUTPUT3 ||= "OUTPUT3".freeze
67
+ OUTPUT4 ||= "OUTPUT4".freeze
68
+ SROUTPUT2 ||= "SROUTPUT2".freeze
69
+ TXCA ||= "TXCA".freeze
70
+ SRCAS ||= "SRCAS".freeze
71
+ BLINPUT2 ||= "BLINPUT2".freeze
72
+ DRCHARGESUPPLY20 ||= "DRCHARGESUPPLY20".freeze
73
+ DRCHARGE20 ||= "DRCHARGE20".freeze
74
+ DRCHARGESUPPLY5 ||= "DRCHARGESUPPLY5".freeze
75
+ DRCHARGE5 ||= "DRCHARGE5".freeze
76
76
 
77
77
  # Builds the enum from string
78
78
  # @param [String] The enum value in the form of the string
@@ -14,115 +14,115 @@ require 'date'
14
14
 
15
15
  module XeroRuby::Accounting
16
16
  class TimeZone
17
- MOROCCOSTANDARDTIME = "MOROCCOSTANDARDTIME".freeze
18
- UTC = "UTC".freeze
19
- GMTSTANDARDTIME = "GMTSTANDARDTIME".freeze
20
- GREENWICHSTANDARDTIME = "GREENWICHSTANDARDTIME".freeze
21
- WEUROPESTANDARDTIME = "WEUROPESTANDARDTIME".freeze
22
- CENTRALEUROPESTANDARDTIME = "CENTRALEUROPESTANDARDTIME".freeze
23
- ROMANCESTANDARDTIME = "ROMANCESTANDARDTIME".freeze
24
- CENTRALEUROPEANSTANDARDTIME = "CENTRALEUROPEANSTANDARDTIME".freeze
25
- WCENTRALAFRICASTANDARDTIME = "WCENTRALAFRICASTANDARDTIME".freeze
26
- NAMIBIASTANDARDTIME = "NAMIBIASTANDARDTIME".freeze
27
- JORDANSTANDARDTIME = "JORDANSTANDARDTIME".freeze
28
- GTBSTANDARDTIME = "GTBSTANDARDTIME".freeze
29
- MIDDLEEASTSTANDARDTIME = "MIDDLEEASTSTANDARDTIME".freeze
30
- EGYPTSTANDARDTIME = "EGYPTSTANDARDTIME".freeze
31
- SYRIASTANDARDTIME = "SYRIASTANDARDTIME".freeze
32
- EEUROPESTANDARDTIME = "EEUROPESTANDARDTIME".freeze
33
- SOUTHAFRICASTANDARDTIME = "SOUTHAFRICASTANDARDTIME".freeze
34
- FLESTANDARDTIME = "FLESTANDARDTIME".freeze
35
- TURKEYSTANDARDTIME = "TURKEYSTANDARDTIME".freeze
36
- ISRAELSTANDARDTIME = "ISRAELSTANDARDTIME".freeze
37
- KALININGRADSTANDARDTIME = "KALININGRADSTANDARDTIME".freeze
38
- LIBYASTANDARDTIME = "LIBYASTANDARDTIME".freeze
39
- ARABICSTANDARDTIME = "ARABICSTANDARDTIME".freeze
40
- ARABSTANDARDTIME = "ARABSTANDARDTIME".freeze
41
- BELARUSSTANDARDTIME = "BELARUSSTANDARDTIME".freeze
42
- RUSSIANSTANDARDTIME = "RUSSIANSTANDARDTIME".freeze
43
- EAFRICASTANDARDTIME = "EAFRICASTANDARDTIME".freeze
44
- IRANSTANDARDTIME = "IRANSTANDARDTIME".freeze
45
- ARABIANSTANDARDTIME = "ARABIANSTANDARDTIME".freeze
46
- AZERBAIJANSTANDARDTIME = "AZERBAIJANSTANDARDTIME".freeze
47
- RUSSIATIMEZONE3 = "RUSSIATIMEZONE3".freeze
48
- MAURITIUSSTANDARDTIME = "MAURITIUSSTANDARDTIME".freeze
49
- GEORGIANSTANDARDTIME = "GEORGIANSTANDARDTIME".freeze
50
- CAUCASUSSTANDARDTIME = "CAUCASUSSTANDARDTIME".freeze
51
- AFGHANISTANSTANDARDTIME = "AFGHANISTANSTANDARDTIME".freeze
52
- WESTASIASTANDARDTIME = "WESTASIASTANDARDTIME".freeze
53
- EKATERINBURGSTANDARDTIME = "EKATERINBURGSTANDARDTIME".freeze
54
- PAKISTANSTANDARDTIME = "PAKISTANSTANDARDTIME".freeze
55
- INDIASTANDARDTIME = "INDIASTANDARDTIME".freeze
56
- SRILANKASTANDARDTIME = "SRILANKASTANDARDTIME".freeze
57
- NEPALSTANDARDTIME = "NEPALSTANDARDTIME".freeze
58
- CENTRALASIASTANDARDTIME = "CENTRALASIASTANDARDTIME".freeze
59
- BANGLADESHSTANDARDTIME = "BANGLADESHSTANDARDTIME".freeze
60
- NCENTRALASIASTANDARDTIME = "NCENTRALASIASTANDARDTIME".freeze
61
- MYANMARSTANDARDTIME = "MYANMARSTANDARDTIME".freeze
62
- SEASIASTANDARDTIME = "SEASIASTANDARDTIME".freeze
63
- NORTHASIASTANDARDTIME = "NORTHASIASTANDARDTIME".freeze
64
- CHINASTANDARDTIME = "CHINASTANDARDTIME".freeze
65
- NORTHASIAEASTSTANDARDTIME = "NORTHASIAEASTSTANDARDTIME".freeze
66
- SINGAPORESTANDARDTIME = "SINGAPORESTANDARDTIME".freeze
67
- WAUSTRALIASTANDARDTIME = "WAUSTRALIASTANDARDTIME".freeze
68
- TAIPEISTANDARDTIME = "TAIPEISTANDARDTIME".freeze
69
- ULAANBAATARSTANDARDTIME = "ULAANBAATARSTANDARDTIME".freeze
70
- TOKYOSTANDARDTIME = "TOKYOSTANDARDTIME".freeze
71
- KOREASTANDARDTIME = "KOREASTANDARDTIME".freeze
72
- YAKUTSKSTANDARDTIME = "YAKUTSKSTANDARDTIME".freeze
73
- CENAUSTRALIASTANDARDTIME = "CENAUSTRALIASTANDARDTIME".freeze
74
- AUSCENTRALSTANDARDTIME = "AUSCENTRALSTANDARDTIME".freeze
75
- EAUSTRALIASTANDARDTIME = "EAUSTRALIASTANDARDTIME".freeze
76
- AUSEASTERNSTANDARDTIME = "AUSEASTERNSTANDARDTIME".freeze
77
- WESTPACIFICSTANDARDTIME = "WESTPACIFICSTANDARDTIME".freeze
78
- TASMANIASTANDARDTIME = "TASMANIASTANDARDTIME".freeze
79
- MAGADANSTANDARDTIME = "MAGADANSTANDARDTIME".freeze
80
- VLADIVOSTOKSTANDARDTIME = "VLADIVOSTOKSTANDARDTIME".freeze
81
- RUSSIATIMEZONE10 = "RUSSIATIMEZONE10".freeze
82
- CENTRALPACIFICSTANDARDTIME = "CENTRALPACIFICSTANDARDTIME".freeze
83
- RUSSIATIMEZONE11 = "RUSSIATIMEZONE11".freeze
84
- NEWZEALANDSTANDARDTIME = "NEWZEALANDSTANDARDTIME".freeze
85
- UTC12 = "UTC+12".freeze
86
- UTC13 = "UTC+13".freeze
87
- FIJISTANDARDTIME = "FIJISTANDARDTIME".freeze
88
- KAMCHATKASTANDARDTIME = "KAMCHATKASTANDARDTIME".freeze
89
- TONGASTANDARDTIME = "TONGASTANDARDTIME".freeze
90
- SAMOASTANDARDTIME = "SAMOASTANDARDTIME".freeze
91
- LINEISLANDSSTANDARDTIME = "LINEISLANDSSTANDARDTIME".freeze
92
- AZORESSTANDARDTIME = "AZORESSTANDARDTIME".freeze
93
- CAPEVERDESTANDARDTIME = "CAPEVERDESTANDARDTIME".freeze
94
- UTC02 = "UTC02".freeze
95
- MIDATLANTICSTANDARDTIME = "MIDATLANTICSTANDARDTIME".freeze
96
- ESOUTHAMERICASTANDARDTIME = "ESOUTHAMERICASTANDARDTIME".freeze
97
- ARGENTINASTANDARDTIME = "ARGENTINASTANDARDTIME".freeze
98
- SAEASTERNSTANDARDTIME = "SAEASTERNSTANDARDTIME".freeze
99
- GREENLANDSTANDARDTIME = "GREENLANDSTANDARDTIME".freeze
100
- MONTEVIDEOSTANDARDTIME = "MONTEVIDEOSTANDARDTIME".freeze
101
- BAHIASTANDARDTIME = "BAHIASTANDARDTIME".freeze
102
- NEWFOUNDLANDSTANDARDTIME = "NEWFOUNDLANDSTANDARDTIME".freeze
103
- PARAGUAYSTANDARDTIME = "PARAGUAYSTANDARDTIME".freeze
104
- ATLANTICSTANDARDTIME = "ATLANTICSTANDARDTIME".freeze
105
- CENTRALBRAZILIANSTANDARDTIME = "CENTRALBRAZILIANSTANDARDTIME".freeze
106
- SAWESTERNSTANDARDTIME = "SAWESTERNSTANDARDTIME".freeze
107
- PACIFICSASTANDARDTIME = "PACIFICSASTANDARDTIME".freeze
108
- VENEZUELASTANDARDTIME = "VENEZUELASTANDARDTIME".freeze
109
- SAPACIFICSTANDARDTIME = "SAPACIFICSTANDARDTIME".freeze
110
- EASTERNSTANDARDTIME = "EASTERNSTANDARDTIME".freeze
111
- USEASTERNSTANDARDTIME = "USEASTERNSTANDARDTIME".freeze
112
- CENTRALAMERICASTANDARDTIME = "CENTRALAMERICASTANDARDTIME".freeze
113
- CENTRALSTANDARDTIME = "CENTRALSTANDARDTIME".freeze
114
- CENTRALSTANDARDTIME_MEXICO = "CENTRALSTANDARDTIME(MEXICO)".freeze
115
- CANADACENTRALSTANDARDTIME = "CANADACENTRALSTANDARDTIME".freeze
116
- USMOUNTAINSTANDARDTIME = "USMOUNTAINSTANDARDTIME".freeze
117
- MOUNTAINSTANDARDTIME_MEXICO = "MOUNTAINSTANDARDTIME(MEXICO)".freeze
118
- MOUNTAINSTANDARDTIME = "MOUNTAINSTANDARDTIME".freeze
119
- PACIFICSTANDARDTIME_MEXICO = "PACIFICSTANDARDTIME(MEXICO)".freeze
120
- PACIFICSTANDARDTIME = "PACIFICSTANDARDTIME".freeze
121
- ALASKANSTANDARDTIME = "ALASKANSTANDARDTIME".freeze
122
- HAWAIIANSTANDARDTIME = "HAWAIIANSTANDARDTIME".freeze
123
- UTC11 = "UTC11".freeze
124
- DATELINESTANDARDTIME = "DATELINESTANDARDTIME".freeze
125
- EASTERISLANDSTANDARDTIME = "EASTERISLANDSTANDARDTIME".freeze
17
+ MOROCCOSTANDARDTIME ||= "MOROCCOSTANDARDTIME".freeze
18
+ UTC ||= "UTC".freeze
19
+ GMTSTANDARDTIME ||= "GMTSTANDARDTIME".freeze
20
+ GREENWICHSTANDARDTIME ||= "GREENWICHSTANDARDTIME".freeze
21
+ WEUROPESTANDARDTIME ||= "WEUROPESTANDARDTIME".freeze
22
+ CENTRALEUROPESTANDARDTIME ||= "CENTRALEUROPESTANDARDTIME".freeze
23
+ ROMANCESTANDARDTIME ||= "ROMANCESTANDARDTIME".freeze
24
+ CENTRALEUROPEANSTANDARDTIME ||= "CENTRALEUROPEANSTANDARDTIME".freeze
25
+ WCENTRALAFRICASTANDARDTIME ||= "WCENTRALAFRICASTANDARDTIME".freeze
26
+ NAMIBIASTANDARDTIME ||= "NAMIBIASTANDARDTIME".freeze
27
+ JORDANSTANDARDTIME ||= "JORDANSTANDARDTIME".freeze
28
+ GTBSTANDARDTIME ||= "GTBSTANDARDTIME".freeze
29
+ MIDDLEEASTSTANDARDTIME ||= "MIDDLEEASTSTANDARDTIME".freeze
30
+ EGYPTSTANDARDTIME ||= "EGYPTSTANDARDTIME".freeze
31
+ SYRIASTANDARDTIME ||= "SYRIASTANDARDTIME".freeze
32
+ EEUROPESTANDARDTIME ||= "EEUROPESTANDARDTIME".freeze
33
+ SOUTHAFRICASTANDARDTIME ||= "SOUTHAFRICASTANDARDTIME".freeze
34
+ FLESTANDARDTIME ||= "FLESTANDARDTIME".freeze
35
+ TURKEYSTANDARDTIME ||= "TURKEYSTANDARDTIME".freeze
36
+ ISRAELSTANDARDTIME ||= "ISRAELSTANDARDTIME".freeze
37
+ KALININGRADSTANDARDTIME ||= "KALININGRADSTANDARDTIME".freeze
38
+ LIBYASTANDARDTIME ||= "LIBYASTANDARDTIME".freeze
39
+ ARABICSTANDARDTIME ||= "ARABICSTANDARDTIME".freeze
40
+ ARABSTANDARDTIME ||= "ARABSTANDARDTIME".freeze
41
+ BELARUSSTANDARDTIME ||= "BELARUSSTANDARDTIME".freeze
42
+ RUSSIANSTANDARDTIME ||= "RUSSIANSTANDARDTIME".freeze
43
+ EAFRICASTANDARDTIME ||= "EAFRICASTANDARDTIME".freeze
44
+ IRANSTANDARDTIME ||= "IRANSTANDARDTIME".freeze
45
+ ARABIANSTANDARDTIME ||= "ARABIANSTANDARDTIME".freeze
46
+ AZERBAIJANSTANDARDTIME ||= "AZERBAIJANSTANDARDTIME".freeze
47
+ RUSSIATIMEZONE3 ||= "RUSSIATIMEZONE3".freeze
48
+ MAURITIUSSTANDARDTIME ||= "MAURITIUSSTANDARDTIME".freeze
49
+ GEORGIANSTANDARDTIME ||= "GEORGIANSTANDARDTIME".freeze
50
+ CAUCASUSSTANDARDTIME ||= "CAUCASUSSTANDARDTIME".freeze
51
+ AFGHANISTANSTANDARDTIME ||= "AFGHANISTANSTANDARDTIME".freeze
52
+ WESTASIASTANDARDTIME ||= "WESTASIASTANDARDTIME".freeze
53
+ EKATERINBURGSTANDARDTIME ||= "EKATERINBURGSTANDARDTIME".freeze
54
+ PAKISTANSTANDARDTIME ||= "PAKISTANSTANDARDTIME".freeze
55
+ INDIASTANDARDTIME ||= "INDIASTANDARDTIME".freeze
56
+ SRILANKASTANDARDTIME ||= "SRILANKASTANDARDTIME".freeze
57
+ NEPALSTANDARDTIME ||= "NEPALSTANDARDTIME".freeze
58
+ CENTRALASIASTANDARDTIME ||= "CENTRALASIASTANDARDTIME".freeze
59
+ BANGLADESHSTANDARDTIME ||= "BANGLADESHSTANDARDTIME".freeze
60
+ NCENTRALASIASTANDARDTIME ||= "NCENTRALASIASTANDARDTIME".freeze
61
+ MYANMARSTANDARDTIME ||= "MYANMARSTANDARDTIME".freeze
62
+ SEASIASTANDARDTIME ||= "SEASIASTANDARDTIME".freeze
63
+ NORTHASIASTANDARDTIME ||= "NORTHASIASTANDARDTIME".freeze
64
+ CHINASTANDARDTIME ||= "CHINASTANDARDTIME".freeze
65
+ NORTHASIAEASTSTANDARDTIME ||= "NORTHASIAEASTSTANDARDTIME".freeze
66
+ SINGAPORESTANDARDTIME ||= "SINGAPORESTANDARDTIME".freeze
67
+ WAUSTRALIASTANDARDTIME ||= "WAUSTRALIASTANDARDTIME".freeze
68
+ TAIPEISTANDARDTIME ||= "TAIPEISTANDARDTIME".freeze
69
+ ULAANBAATARSTANDARDTIME ||= "ULAANBAATARSTANDARDTIME".freeze
70
+ TOKYOSTANDARDTIME ||= "TOKYOSTANDARDTIME".freeze
71
+ KOREASTANDARDTIME ||= "KOREASTANDARDTIME".freeze
72
+ YAKUTSKSTANDARDTIME ||= "YAKUTSKSTANDARDTIME".freeze
73
+ CENAUSTRALIASTANDARDTIME ||= "CENAUSTRALIASTANDARDTIME".freeze
74
+ AUSCENTRALSTANDARDTIME ||= "AUSCENTRALSTANDARDTIME".freeze
75
+ EAUSTRALIASTANDARDTIME ||= "EAUSTRALIASTANDARDTIME".freeze
76
+ AUSEASTERNSTANDARDTIME ||= "AUSEASTERNSTANDARDTIME".freeze
77
+ WESTPACIFICSTANDARDTIME ||= "WESTPACIFICSTANDARDTIME".freeze
78
+ TASMANIASTANDARDTIME ||= "TASMANIASTANDARDTIME".freeze
79
+ MAGADANSTANDARDTIME ||= "MAGADANSTANDARDTIME".freeze
80
+ VLADIVOSTOKSTANDARDTIME ||= "VLADIVOSTOKSTANDARDTIME".freeze
81
+ RUSSIATIMEZONE10 ||= "RUSSIATIMEZONE10".freeze
82
+ CENTRALPACIFICSTANDARDTIME ||= "CENTRALPACIFICSTANDARDTIME".freeze
83
+ RUSSIATIMEZONE11 ||= "RUSSIATIMEZONE11".freeze
84
+ NEWZEALANDSTANDARDTIME ||= "NEWZEALANDSTANDARDTIME".freeze
85
+ UTC12 ||= "UTC+12".freeze
86
+ UTC13 ||= "UTC+13".freeze
87
+ FIJISTANDARDTIME ||= "FIJISTANDARDTIME".freeze
88
+ KAMCHATKASTANDARDTIME ||= "KAMCHATKASTANDARDTIME".freeze
89
+ TONGASTANDARDTIME ||= "TONGASTANDARDTIME".freeze
90
+ SAMOASTANDARDTIME ||= "SAMOASTANDARDTIME".freeze
91
+ LINEISLANDSSTANDARDTIME ||= "LINEISLANDSSTANDARDTIME".freeze
92
+ AZORESSTANDARDTIME ||= "AZORESSTANDARDTIME".freeze
93
+ CAPEVERDESTANDARDTIME ||= "CAPEVERDESTANDARDTIME".freeze
94
+ UTC02 ||= "UTC02".freeze
95
+ MIDATLANTICSTANDARDTIME ||= "MIDATLANTICSTANDARDTIME".freeze
96
+ ESOUTHAMERICASTANDARDTIME ||= "ESOUTHAMERICASTANDARDTIME".freeze
97
+ ARGENTINASTANDARDTIME ||= "ARGENTINASTANDARDTIME".freeze
98
+ SAEASTERNSTANDARDTIME ||= "SAEASTERNSTANDARDTIME".freeze
99
+ GREENLANDSTANDARDTIME ||= "GREENLANDSTANDARDTIME".freeze
100
+ MONTEVIDEOSTANDARDTIME ||= "MONTEVIDEOSTANDARDTIME".freeze
101
+ BAHIASTANDARDTIME ||= "BAHIASTANDARDTIME".freeze
102
+ NEWFOUNDLANDSTANDARDTIME ||= "NEWFOUNDLANDSTANDARDTIME".freeze
103
+ PARAGUAYSTANDARDTIME ||= "PARAGUAYSTANDARDTIME".freeze
104
+ ATLANTICSTANDARDTIME ||= "ATLANTICSTANDARDTIME".freeze
105
+ CENTRALBRAZILIANSTANDARDTIME ||= "CENTRALBRAZILIANSTANDARDTIME".freeze
106
+ SAWESTERNSTANDARDTIME ||= "SAWESTERNSTANDARDTIME".freeze
107
+ PACIFICSASTANDARDTIME ||= "PACIFICSASTANDARDTIME".freeze
108
+ VENEZUELASTANDARDTIME ||= "VENEZUELASTANDARDTIME".freeze
109
+ SAPACIFICSTANDARDTIME ||= "SAPACIFICSTANDARDTIME".freeze
110
+ EASTERNSTANDARDTIME ||= "EASTERNSTANDARDTIME".freeze
111
+ USEASTERNSTANDARDTIME ||= "USEASTERNSTANDARDTIME".freeze
112
+ CENTRALAMERICASTANDARDTIME ||= "CENTRALAMERICASTANDARDTIME".freeze
113
+ CENTRALSTANDARDTIME ||= "CENTRALSTANDARDTIME".freeze
114
+ CENTRALSTANDARDTIME_MEXICO ||= "CENTRALSTANDARDTIME(MEXICO)".freeze
115
+ CANADACENTRALSTANDARDTIME ||= "CANADACENTRALSTANDARDTIME".freeze
116
+ USMOUNTAINSTANDARDTIME ||= "USMOUNTAINSTANDARDTIME".freeze
117
+ MOUNTAINSTANDARDTIME_MEXICO ||= "MOUNTAINSTANDARDTIME(MEXICO)".freeze
118
+ MOUNTAINSTANDARDTIME ||= "MOUNTAINSTANDARDTIME".freeze
119
+ PACIFICSTANDARDTIME_MEXICO ||= "PACIFICSTANDARDTIME(MEXICO)".freeze
120
+ PACIFICSTANDARDTIME ||= "PACIFICSTANDARDTIME".freeze
121
+ ALASKANSTANDARDTIME ||= "ALASKANSTANDARDTIME".freeze
122
+ HAWAIIANSTANDARDTIME ||= "HAWAIIANSTANDARDTIME".freeze
123
+ UTC11 ||= "UTC11".freeze
124
+ DATELINESTANDARDTIME ||= "DATELINESTANDARDTIME".freeze
125
+ EASTERISLANDSTANDARDTIME ||= "EASTERISLANDSTANDARDTIME".freeze
126
126
 
127
127
  # Builds the enum from string
128
128
  # @param [String] The enum value in the form of the string
@@ -30,9 +30,9 @@ module XeroRuby::Accounting
30
30
 
31
31
  # The status of a tracking category
32
32
  attr_accessor :status
33
- ACTIVE = "ACTIVE".freeze
34
- ARCHIVED = "ARCHIVED".freeze
35
- DELETED = "DELETED".freeze
33
+ ACTIVE ||= "ACTIVE".freeze
34
+ ARCHIVED ||= "ARCHIVED".freeze
35
+ DELETED ||= "DELETED".freeze
36
36
 
37
37
  # See Tracking Options
38
38
  attr_accessor :options
@@ -24,9 +24,9 @@ module XeroRuby::Accounting
24
24
 
25
25
  # The status of a tracking option
26
26
  attr_accessor :status
27
- ACTIVE = "ACTIVE".freeze
28
- ARCHIVED = "ARCHIVED".freeze
29
- DELETED = "DELETED".freeze
27
+ ACTIVE ||= "ACTIVE".freeze
28
+ ARCHIVED ||= "ARCHIVED".freeze
29
+ DELETED ||= "DELETED".freeze
30
30
 
31
31
  # Filter by a tracking category e.g. 297c2dc5-cc47-4afd-8ec8-74990b8761e9
32
32
  attr_accessor :tracking_category_id
@@ -36,13 +36,13 @@ module XeroRuby::Accounting
36
36
 
37
37
  # User role that defines permissions in Xero and via API (READONLY, INVOICEONLY, STANDARD, FINANCIALADVISER, etc)
38
38
  attr_accessor :organisation_role
39
- READONLY = "READONLY".freeze
40
- INVOICEONLY = "INVOICEONLY".freeze
41
- STANDARD = "STANDARD".freeze
42
- FINANCIALADVISER = "FINANCIALADVISER".freeze
43
- MANAGEDCLIENT = "MANAGEDCLIENT".freeze
44
- CASHBOOKCLIENT = "CASHBOOKCLIENT".freeze
45
- UNKNOWN = "UNKNOWN".freeze
39
+ READONLY ||= "READONLY".freeze
40
+ INVOICEONLY ||= "INVOICEONLY".freeze
41
+ STANDARD ||= "STANDARD".freeze
42
+ FINANCIALADVISER ||= "FINANCIALADVISER".freeze
43
+ MANAGEDCLIENT ||= "MANAGEDCLIENT".freeze
44
+ CASHBOOKCLIENT ||= "CASHBOOKCLIENT".freeze
45
+ UNKNOWN ||= "UNKNOWN".freeze
46
46
 
47
47
  class EnumAttributeValidator
48
48
  attr_reader :datatype
@@ -22,10 +22,11 @@ module XeroRuby::AppStore
22
22
  # The name of the plan. It is used in the invoice line item description.
23
23
  attr_accessor :name
24
24
 
25
- # Status of the plan. Available statuses are ACTIVE, PENDING_ACTIVATION.
25
+ # Status of the plan. Available statuses are ACTIVE, CANCELED, and PENDING_ACTIVATION.
26
26
  attr_accessor :status
27
- ACTIVE = "ACTIVE".freeze
28
- PENDING_ACTIVATION = "PENDING_ACTIVATION".freeze
27
+ ACTIVE ||= "ACTIVE".freeze
28
+ CANCELED ||= "CANCELED".freeze
29
+ PENDING_ACTIVATION ||= "PENDING_ACTIVATION".freeze
29
30
 
30
31
  # List of the subscription items belonging to the plan. It does not include cancelled subscription items.
31
32
  attr_accessor :subscription_items
@@ -135,7 +136,7 @@ module XeroRuby::AppStore
135
136
  return false if @id.nil?
136
137
  return false if @name.nil?
137
138
  return false if @status.nil?
138
- status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "PENDING_ACTIVATION"])
139
+ status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PENDING_ACTIVATION"])
139
140
  return false unless status_validator.valid?(@status)
140
141
  return false if @subscription_items.nil?
141
142
  true
@@ -144,7 +145,7 @@ module XeroRuby::AppStore
144
145
  # Custom attribute writer method checking allowed values (enum).
145
146
  # @param [Object] status Object to be assigned
146
147
  def status=(status)
147
- validator = EnumAttributeValidator.new('String', ["ACTIVE", "PENDING_ACTIVATION"])
148
+ validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PENDING_ACTIVATION"])
148
149
  unless validator.valid?(status)
149
150
  fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
150
151
  end
@@ -24,8 +24,8 @@ module XeroRuby::AppStore
24
24
 
25
25
  # The pricing model of the product: * FIXED: Customers are charged a fixed amount for each billing period * PER_SEAT: Customers are charged based on the number of units they purchase
26
26
  attr_accessor :type
27
- FIXED = "FIXED".freeze
28
- PER_SEAT = "PER_SEAT".freeze
27
+ FIXED ||= "FIXED".freeze
28
+ PER_SEAT ||= "PER_SEAT".freeze
29
29
 
30
30
  # The unit of the per seat product. e.g. \"user\", \"organisation\", \"SMS\", etc
31
31
  attr_accessor :seat_unit
@@ -36,10 +36,35 @@ module XeroRuby::AppStore
36
36
 
37
37
  # Status of the subscription. Available statuses are ACTIVE, CANCELED, and PAST_DUE.
38
38
  attr_accessor :status
39
+ ACTIVE ||= "ACTIVE".freeze
40
+ CANCELED ||= "CANCELED".freeze
41
+ PAST_DUE ||= "PAST_DUE".freeze
39
42
 
40
43
  # Boolean used to indicate if the subscription is in test mode
41
44
  attr_accessor :test_mode
42
45
 
46
+ class EnumAttributeValidator
47
+ attr_reader :datatype
48
+ attr_reader :allowable_values
49
+
50
+ def initialize(datatype, allowable_values)
51
+ @allowable_values = allowable_values.map do |value|
52
+ case datatype.to_s
53
+ when /Integer/i
54
+ value.to_i
55
+ when /Float/i
56
+ value.to_f
57
+ else
58
+ value
59
+ end
60
+ end
61
+ end
62
+
63
+ def valid?(value)
64
+ !value || allowable_values.include?(value)
65
+ end
66
+ end
67
+
43
68
  # Attribute mapping from ruby-style variable name to JSON key.
44
69
  def self.attribute_map
45
70
  {
@@ -158,9 +183,21 @@ module XeroRuby::AppStore
158
183
  return false if @plans.nil?
159
184
  return false if @start_date.nil?
160
185
  return false if @status.nil?
186
+ status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PAST_DUE"])
187
+ return false unless status_validator.valid?(@status)
161
188
  true
162
189
  end
163
190
 
191
+ # Custom attribute writer method checking allowed values (enum).
192
+ # @param [Object] status Object to be assigned
193
+ def status=(status)
194
+ validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PAST_DUE"])
195
+ unless validator.valid?(status)
196
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
197
+ end
198
+ @status = status
199
+ end
200
+
164
201
  # Checks equality by comparing each attribute.
165
202
  # @param [Object] Object to be compared
166
203
  def ==(o)
@@ -31,9 +31,37 @@ module XeroRuby::AppStore
31
31
  # Date the subscription started, or will start. Note: this could be in the future for downgrades or reduced number of seats that haven't taken effect yet.
32
32
  attr_accessor :start_date
33
33
 
34
+ # Status of the subscription item. Available statuses are ACTIVE, CANCELED, and PENDING_ACTIVATION.
35
+ attr_accessor :status
36
+ ACTIVE ||= "ACTIVE".freeze
37
+ CANCELED ||= "CANCELED".freeze
38
+ PENDING_ACTIVATION ||= "PENDING_ACTIVATION".freeze
39
+
34
40
  # If the subscription is a test subscription
35
41
  attr_accessor :test_mode
36
42
 
43
+ class EnumAttributeValidator
44
+ attr_reader :datatype
45
+ attr_reader :allowable_values
46
+
47
+ def initialize(datatype, allowable_values)
48
+ @allowable_values = allowable_values.map do |value|
49
+ case datatype.to_s
50
+ when /Integer/i
51
+ value.to_i
52
+ when /Float/i
53
+ value.to_f
54
+ else
55
+ value
56
+ end
57
+ end
58
+ end
59
+
60
+ def valid?(value)
61
+ !value || allowable_values.include?(value)
62
+ end
63
+ end
64
+
37
65
  # Attribute mapping from ruby-style variable name to JSON key.
38
66
  def self.attribute_map
39
67
  {
@@ -42,6 +70,7 @@ module XeroRuby::AppStore
42
70
  :'price' => :'price',
43
71
  :'product' => :'product',
44
72
  :'start_date' => :'startDate',
73
+ :'status' => :'status',
45
74
  :'test_mode' => :'testMode'
46
75
  }
47
76
  end
@@ -54,6 +83,7 @@ module XeroRuby::AppStore
54
83
  :'price' => :'Price',
55
84
  :'product' => :'Product',
56
85
  :'start_date' => :'DateTime',
86
+ :'status' => :'String',
57
87
  :'test_mode' => :'Boolean'
58
88
  }
59
89
  end
@@ -93,6 +123,10 @@ module XeroRuby::AppStore
93
123
  self.start_date = attributes[:'start_date']
94
124
  end
95
125
 
126
+ if attributes.key?(:'status')
127
+ self.status = attributes[:'status']
128
+ end
129
+
96
130
  if attributes.key?(:'test_mode')
97
131
  self.test_mode = attributes[:'test_mode']
98
132
  end
@@ -118,6 +152,10 @@ module XeroRuby::AppStore
118
152
  invalid_properties.push('invalid value for "start_date", start_date cannot be nil.')
119
153
  end
120
154
 
155
+ if @status.nil?
156
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
157
+ end
158
+
121
159
  invalid_properties
122
160
  end
123
161
 
@@ -128,9 +166,22 @@ module XeroRuby::AppStore
128
166
  return false if @price.nil?
129
167
  return false if @product.nil?
130
168
  return false if @start_date.nil?
169
+ return false if @status.nil?
170
+ status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PENDING_ACTIVATION"])
171
+ return false unless status_validator.valid?(@status)
131
172
  true
132
173
  end
133
174
 
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] status Object to be assigned
177
+ def status=(status)
178
+ validator = EnumAttributeValidator.new('String', ["ACTIVE", "CANCELED", "PENDING_ACTIVATION"])
179
+ unless validator.valid?(status)
180
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
181
+ end
182
+ @status = status
183
+ end
184
+
134
185
  # Checks equality by comparing each attribute.
135
186
  # @param [Object] Object to be compared
136
187
  def ==(o)
@@ -141,6 +192,7 @@ module XeroRuby::AppStore
141
192
  price == o.price &&
142
193
  product == o.product &&
143
194
  start_date == o.start_date &&
195
+ status == o.status &&
144
196
  test_mode == o.test_mode
145
197
  end
146
198
 
@@ -153,7 +205,7 @@ module XeroRuby::AppStore
153
205
  # Calculates hash code according to all attributes.
154
206
  # @return [Integer] Hash code
155
207
  def hash
156
- [end_date, id, price, product, start_date, test_mode].hash
208
+ [end_date, id, price, product, start_date, status, test_mode].hash
157
209
  end
158
210
 
159
211
  # Builds the object from hash
@@ -14,9 +14,9 @@ require 'date'
14
14
 
15
15
  module XeroRuby::Assets
16
16
  class AssetStatus
17
- DRAFT = "Draft".freeze
18
- REGISTERED = "Registered".freeze
19
- DISPOSED = "Disposed".freeze
17
+ DRAFT ||= "Draft".freeze
18
+ REGISTERED ||= "Registered".freeze
19
+ DISPOSED ||= "Disposed".freeze
20
20
 
21
21
  # Builds the enum from string
22
22
  # @param [String] The enum value in the form of the string