ev-recharge-sdk 1.4.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +91 -25
  4. data/bin/console +15 -0
  5. data/lib/shell_ev/api_helper.rb +2 -2
  6. data/lib/shell_ev/client.rb +15 -4
  7. data/lib/shell_ev/configuration.rb +88 -15
  8. data/lib/shell_ev/controllers/base_controller.rb +3 -9
  9. data/lib/shell_ev/controllers/charging_controller.rb +19 -18
  10. data/lib/shell_ev/controllers/locations_controller.rb +48 -50
  11. data/lib/shell_ev/controllers/o_auth_authorization_controller.rb +5 -5
  12. data/lib/shell_ev/exceptions/api_exception.rb +2 -2
  13. data/lib/shell_ev/exceptions/bad_request_exception.rb +7 -5
  14. data/lib/shell_ev/exceptions/internal_server_error_exception.rb +7 -5
  15. data/lib/shell_ev/exceptions/not_found_exception.rb +7 -5
  16. data/lib/shell_ev/exceptions/o_auth_provider_exception.rb +7 -5
  17. data/lib/shell_ev/exceptions/serviceunavailable_exception.rb +7 -5
  18. data/lib/shell_ev/exceptions/too_many_requests_exception.rb +7 -5
  19. data/lib/shell_ev/exceptions/unauthorized_exception.rb +7 -5
  20. data/lib/shell_ev/exceptions/v2_charge_session_retrieve404_error_exception.rb +67 -0
  21. data/lib/shell_ev/exceptions/v2_charge_session_start404_error_exception.rb +67 -0
  22. data/lib/shell_ev/exceptions/v2_charge_session_stop404_error_exception.rb +67 -0
  23. data/lib/shell_ev/http/auth/o_auth2.rb +18 -3
  24. data/lib/shell_ev/http/http_call_back.rb +2 -2
  25. data/lib/shell_ev/http/http_method_enum.rb +2 -2
  26. data/lib/shell_ev/http/http_request.rb +2 -2
  27. data/lib/shell_ev/http/http_response.rb +2 -2
  28. data/lib/shell_ev/http/proxy_settings.rb +22 -0
  29. data/lib/shell_ev/models/accessibility_status_enum.rb +17 -2
  30. data/lib/shell_ev/models/{accessibility.rb → accessibility_v2.rb} +7 -16
  31. data/lib/shell_ev/models/active_response200_json.rb +2 -2
  32. data/lib/shell_ev/models/active_response200_json_status_enum.rb +15 -2
  33. data/lib/shell_ev/models/address.rb +2 -2
  34. data/lib/shell_ev/models/bad_request_err_msg.rb +2 -2
  35. data/lib/shell_ev/models/base_model.rb +2 -2
  36. data/lib/shell_ev/models/charge_error.rb +2 -2
  37. data/lib/shell_ev/models/charge_retrieve_state.rb +2 -2
  38. data/lib/shell_ev/models/chargesession_start_body.rb +2 -2
  39. data/lib/shell_ev/models/connector_types_enum.rb +100 -0
  40. data/lib/shell_ev/models/connector_v2.rb +95 -0
  41. data/lib/shell_ev/models/connector_vo_connector_type_enum.rb +31 -2
  42. data/lib/shell_ev/models/connector_vo_updated_by_enum.rb +17 -2
  43. data/lib/shell_ev/models/coordinates.rb +2 -2
  44. data/lib/shell_ev/models/coordinates1.rb +81 -0
  45. data/lib/shell_ev/models/data_active.rb +2 -2
  46. data/lib/shell_ev/models/data_retrieve.rb +2 -2
  47. data/lib/shell_ev/models/day_of_week_enum.rb +56 -0
  48. data/lib/shell_ev/models/electrical_properties_power_type_enum.rb +16 -2
  49. data/lib/shell_ev/models/{electrical_properties.rb → electrical_properties_v2.rb} +8 -8
  50. data/lib/shell_ev/models/evse_status_enum.rb +44 -0
  51. data/lib/shell_ev/models/{evse_vo.rb → evse_v2.rb} +33 -43
  52. data/lib/shell_ev/models/evse_vo_authorization_methods_enum.rb +16 -2
  53. data/lib/shell_ev/models/evse_vo_status_enum.rb +17 -2
  54. data/lib/shell_ev/models/get_charge_session_retrieve_response200_json.rb +2 -2
  55. data/lib/shell_ev/models/get_charge_session_retrieve_response200_json_status_enum.rb +15 -2
  56. data/lib/shell_ev/models/get_ev_locations_authorization_methods_enum.rb +16 -2
  57. data/lib/shell_ev/models/get_ev_locations_connector_types_enum.rb +31 -2
  58. data/lib/shell_ev/models/get_ev_locations_evse_status_enum.rb +17 -2
  59. data/lib/shell_ev/models/inline_response202.rb +4 -6
  60. data/lib/shell_ev/models/inline_response2021.rb +2 -2
  61. data/lib/shell_ev/models/inline_response2021_status_enum.rb +15 -2
  62. data/lib/shell_ev/models/inline_response202_data.rb +2 -2
  63. data/lib/shell_ev/models/inline_response202_status_enum.rb +15 -2
  64. data/lib/shell_ev/models/internal_error_object.rb +2 -2
  65. data/lib/shell_ev/models/{location_respone_object.rb → location_respone_object_v2.rb} +46 -34
  66. data/lib/shell_ev/models/locations_markers_authorization_methods_enum.rb +16 -2
  67. data/lib/shell_ev/models/locations_markers_connector_types_enum.rb +31 -2
  68. data/lib/shell_ev/models/locations_markers_evse_status_enum.rb +17 -2
  69. data/lib/shell_ev/models/multi_location_marker.rb +5 -5
  70. data/lib/shell_ev/models/multi_location_marker_v2.rb +126 -0
  71. data/lib/shell_ev/models/nearby_locations_authorization_methods_enum.rb +16 -2
  72. data/lib/shell_ev/models/nearby_locations_connector_types_enum.rb +31 -2
  73. data/lib/shell_ev/models/nearby_locations_evse_status_enum.rb +17 -2
  74. data/lib/shell_ev/models/not_found_err_msg.rb +2 -2
  75. data/lib/shell_ev/models/o_auth_provider_error_enum.rb +19 -2
  76. data/lib/shell_ev/models/o_auth_token.rb +2 -2
  77. data/lib/shell_ev/models/opening_hours_object.rb +3 -3
  78. data/lib/shell_ev/models/opening_hours_object_week_day_enum.rb +20 -2
  79. data/lib/shell_ev/models/power_range.rb +68 -0
  80. data/lib/shell_ev/models/price_component.rb +86 -0
  81. data/lib/shell_ev/models/ratelimit_err_msg.rb +2 -2
  82. data/lib/shell_ev/models/{response.rb → response_v2.rb} +9 -9
  83. data/lib/shell_ev/models/restrictions.rb +183 -0
  84. data/lib/shell_ev/models/search_by_id_connector.rb +115 -0
  85. data/lib/shell_ev/models/search_by_id_evse.rb +145 -0
  86. data/lib/shell_ev/models/search_by_id_location_respone.rb +196 -0
  87. data/lib/shell_ev/models/search_by_id_response.rb +91 -0
  88. data/lib/shell_ev/models/serviceunavailable_err_msg.rb +2 -2
  89. data/lib/shell_ev/models/single_location_marker.rb +8 -6
  90. data/lib/shell_ev/models/single_location_marker_authorization_methods_items_enum.rb +16 -2
  91. data/lib/shell_ev/models/single_location_marker_response.rb +2 -2
  92. data/lib/shell_ev/models/single_location_marker_response_v2.rb +94 -0
  93. data/lib/shell_ev/models/single_location_marker_status_enum.rb +17 -2
  94. data/lib/shell_ev/models/single_location_marker_v2.rb +157 -0
  95. data/lib/shell_ev/models/tariff.rb +3 -3
  96. data/lib/shell_ev/models/tariff_alt_text.rb +68 -0
  97. data/lib/shell_ev/models/tariff_element.rb +80 -0
  98. data/lib/shell_ev/models/tariff_type_enum.rb +44 -0
  99. data/lib/shell_ev/models/tariff_v2.rb +226 -0
  100. data/lib/shell_ev/models/tariff_vo_updated_by_enum.rb +17 -2
  101. data/lib/shell_ev/models/type_enum.rb +44 -0
  102. data/lib/shell_ev/models/unauthorized_err_msg.rb +2 -2
  103. data/lib/shell_ev/utilities/date_time_helper.rb +2 -2
  104. data/lib/shell_ev/utilities/file_wrapper.rb +2 -2
  105. data/lib/shell_ev/utilities/union_type_lookup.rb +19 -2
  106. data/lib/shell_ev.rb +34 -10
  107. data/test/controllers/controller_test_base.rb +5 -10
  108. data/test/controllers/test_charging_controller.rb +7 -11
  109. data/test/controllers/test_locations_controller.rb +8 -11
  110. data/test/http_response_catcher.rb +3 -3
  111. metadata +38 -15
  112. data/lib/shell_ev/models/connector_vo.rb +0 -149
  113. data/lib/shell_ev/models/tariff_vo.rb +0 -124
@@ -1,124 +0,0 @@
1
- # shell_ev
2
- #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
5
-
6
- module ShellEv
7
- # Tariff details for charging on this Connector
8
- class TariffVO < BaseModel
9
- SKIP = Object.new
10
- private_constant :SKIP
11
-
12
- # Tariff to start a charging session
13
- # @return [Float]
14
- attr_accessor :start_fee
15
-
16
- # Tariff per minute of charging time
17
- # @return [Float]
18
- attr_accessor :per_minute
19
-
20
- # Tariff per kWh of energy consumed
21
- # @return [Float]
22
- attr_accessor :per_k_wh
23
-
24
- # ISO 4217 Currency Code of the local currency.
25
- # @return [String]
26
- attr_accessor :currency
27
-
28
- # ISO8601-compliant UTC datetime of the last update of the Tariff
29
- # @return [String]
30
- attr_accessor :updated
31
-
32
- # ISO8601-compliant UTC datetime of the last update of the Tariff
33
- # @return [TariffVOUpdatedByEnum]
34
- attr_accessor :updated_by
35
-
36
- # Tariff structure that this tariff belongs to, typically Default unless
37
- # specific tariff is defined for provider
38
- # @return [String]
39
- attr_accessor :structure
40
-
41
- # A mapping from model property names to API property names.
42
- def self.names
43
- @_hash = {} if @_hash.nil?
44
- @_hash['start_fee'] = 'startFee'
45
- @_hash['per_minute'] = 'perMinute'
46
- @_hash['per_k_wh'] = 'perKWh'
47
- @_hash['currency'] = 'currency'
48
- @_hash['updated'] = 'updated'
49
- @_hash['updated_by'] = 'updatedBy'
50
- @_hash['structure'] = 'structure'
51
- @_hash
52
- end
53
-
54
- # An array for optional fields
55
- def self.optionals
56
- %w[
57
- start_fee
58
- per_minute
59
- per_k_wh
60
- currency
61
- updated
62
- updated_by
63
- structure
64
- ]
65
- end
66
-
67
- # An array for nullable fields
68
- def self.nullables
69
- []
70
- end
71
-
72
- def initialize(start_fee = SKIP, per_minute = SKIP, per_k_wh = SKIP,
73
- currency = SKIP, updated = SKIP, updated_by = SKIP,
74
- structure = SKIP)
75
- @start_fee = start_fee unless start_fee == SKIP
76
- @per_minute = per_minute unless per_minute == SKIP
77
- @per_k_wh = per_k_wh unless per_k_wh == SKIP
78
- @currency = currency unless currency == SKIP
79
- @updated = updated unless updated == SKIP
80
- @updated_by = updated_by unless updated_by == SKIP
81
- @structure = structure unless structure == SKIP
82
- end
83
-
84
- # Creates an instance of the object from a hash.
85
- def self.from_hash(hash)
86
- return nil unless hash
87
-
88
- # Extract variables from the hash.
89
- start_fee = hash.key?('startFee') ? hash['startFee'] : SKIP
90
- per_minute = hash.key?('perMinute') ? hash['perMinute'] : SKIP
91
- per_k_wh = hash.key?('perKWh') ? hash['perKWh'] : SKIP
92
- currency = hash.key?('currency') ? hash['currency'] : SKIP
93
- updated = hash.key?('updated') ? hash['updated'] : SKIP
94
- updated_by = hash.key?('updatedBy') ? hash['updatedBy'] : SKIP
95
- structure = hash.key?('structure') ? hash['structure'] : SKIP
96
-
97
- # Create object from extracted values.
98
- TariffVO.new(start_fee,
99
- per_minute,
100
- per_k_wh,
101
- currency,
102
- updated,
103
- updated_by,
104
- structure)
105
- end
106
-
107
- # Provides a human-readable string representation of the object.
108
- def to_s
109
- class_name = self.class.name.split('::').last
110
- "<#{class_name} start_fee: #{@start_fee}, per_minute: #{@per_minute}, per_k_wh:"\
111
- " #{@per_k_wh}, currency: #{@currency}, updated: #{@updated}, updated_by: #{@updated_by},"\
112
- " structure: #{@structure}>"
113
- end
114
-
115
- # Provides a debugging-friendly string with detailed object information.
116
- def inspect
117
- class_name = self.class.name.split('::').last
118
- "<#{class_name} start_fee: #{@start_fee.inspect}, per_minute: #{@per_minute.inspect},"\
119
- " per_k_wh: #{@per_k_wh.inspect}, currency: #{@currency.inspect}, updated:"\
120
- " #{@updated.inspect}, updated_by: #{@updated_by.inspect}, structure:"\
121
- " #{@structure.inspect}>"
122
- end
123
- end
124
- end