ev-recharge-sdk 1.3.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.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +91 -25
- data/bin/console +15 -0
- data/lib/shell_ev/api_helper.rb +2 -2
- data/lib/shell_ev/client.rb +15 -4
- data/lib/shell_ev/configuration.rb +88 -15
- data/lib/shell_ev/controllers/base_controller.rb +3 -9
- data/lib/shell_ev/controllers/charging_controller.rb +19 -18
- data/lib/shell_ev/controllers/locations_controller.rb +48 -50
- data/lib/shell_ev/controllers/o_auth_authorization_controller.rb +5 -5
- data/lib/shell_ev/exceptions/api_exception.rb +13 -2
- data/lib/shell_ev/exceptions/bad_request_exception.rb +20 -5
- data/lib/shell_ev/exceptions/internal_server_error_exception.rb +21 -5
- data/lib/shell_ev/exceptions/not_found_exception.rb +20 -5
- data/lib/shell_ev/exceptions/o_auth_provider_exception.rb +21 -5
- data/lib/shell_ev/exceptions/serviceunavailable_exception.rb +20 -5
- data/lib/shell_ev/exceptions/too_many_requests_exception.rb +20 -5
- data/lib/shell_ev/exceptions/unauthorized_exception.rb +20 -5
- data/lib/shell_ev/exceptions/v2_charge_session_retrieve404_error_exception.rb +67 -0
- data/lib/shell_ev/exceptions/v2_charge_session_start404_error_exception.rb +67 -0
- data/lib/shell_ev/exceptions/v2_charge_session_stop404_error_exception.rb +67 -0
- data/lib/shell_ev/http/auth/o_auth2.rb +18 -3
- data/lib/shell_ev/http/http_call_back.rb +2 -2
- data/lib/shell_ev/http/http_method_enum.rb +2 -2
- data/lib/shell_ev/http/http_request.rb +2 -2
- data/lib/shell_ev/http/http_response.rb +2 -2
- data/lib/shell_ev/http/proxy_settings.rb +22 -0
- data/lib/shell_ev/models/accessibility_status_enum.rb +17 -2
- data/lib/shell_ev/models/{accessibility.rb → accessibility_v2.rb} +17 -14
- data/lib/shell_ev/models/active_response200_json.rb +15 -2
- data/lib/shell_ev/models/active_response200_json_status_enum.rb +15 -2
- data/lib/shell_ev/models/address.rb +16 -2
- data/lib/shell_ev/models/bad_request_err_msg.rb +16 -2
- data/lib/shell_ev/models/base_model.rb +2 -2
- data/lib/shell_ev/models/charge_error.rb +14 -2
- data/lib/shell_ev/models/charge_retrieve_state.rb +14 -2
- data/lib/shell_ev/models/chargesession_start_body.rb +15 -2
- data/lib/shell_ev/models/connector_types_enum.rb +100 -0
- data/lib/shell_ev/models/connector_v2.rb +95 -0
- data/lib/shell_ev/models/connector_vo_connector_type_enum.rb +31 -2
- data/lib/shell_ev/models/connector_vo_updated_by_enum.rb +17 -2
- data/lib/shell_ev/models/coordinates.rb +14 -2
- data/lib/shell_ev/models/coordinates1.rb +81 -0
- data/lib/shell_ev/models/data_active.rb +19 -2
- data/lib/shell_ev/models/data_retrieve.rb +19 -2
- data/lib/shell_ev/models/day_of_week_enum.rb +56 -0
- data/lib/shell_ev/models/electrical_properties_power_type_enum.rb +16 -2
- data/lib/shell_ev/models/{electrical_properties.rb → electrical_properties_v2.rb} +22 -8
- data/lib/shell_ev/models/evse_status_enum.rb +44 -0
- data/lib/shell_ev/models/{evse_vo.rb → evse_v2.rb} +45 -38
- data/lib/shell_ev/models/evse_vo_authorization_methods_enum.rb +16 -2
- data/lib/shell_ev/models/evse_vo_status_enum.rb +17 -2
- data/lib/shell_ev/models/get_charge_session_retrieve_response200_json.rb +15 -2
- data/lib/shell_ev/models/get_charge_session_retrieve_response200_json_status_enum.rb +15 -2
- data/lib/shell_ev/models/get_ev_locations_authorization_methods_enum.rb +16 -2
- data/lib/shell_ev/models/get_ev_locations_connector_types_enum.rb +31 -2
- data/lib/shell_ev/models/get_ev_locations_evse_status_enum.rb +17 -2
- data/lib/shell_ev/models/inline_response202.rb +17 -6
- data/lib/shell_ev/models/inline_response2021.rb +14 -2
- data/lib/shell_ev/models/inline_response2021_status_enum.rb +15 -2
- data/lib/shell_ev/models/inline_response202_data.rb +14 -2
- data/lib/shell_ev/models/inline_response202_status_enum.rb +15 -2
- data/lib/shell_ev/models/internal_error_object.rb +15 -2
- data/lib/shell_ev/models/{location_respone_object.rb → location_respone_object_v2.rb} +61 -30
- data/lib/shell_ev/models/locations_markers_authorization_methods_enum.rb +16 -2
- data/lib/shell_ev/models/locations_markers_connector_types_enum.rb +31 -2
- data/lib/shell_ev/models/locations_markers_evse_status_enum.rb +17 -2
- data/lib/shell_ev/models/multi_location_marker.rb +22 -5
- data/lib/shell_ev/models/multi_location_marker_v2.rb +126 -0
- data/lib/shell_ev/models/nearby_locations_authorization_methods_enum.rb +16 -2
- data/lib/shell_ev/models/nearby_locations_connector_types_enum.rb +31 -2
- data/lib/shell_ev/models/nearby_locations_evse_status_enum.rb +17 -2
- data/lib/shell_ev/models/not_found_err_msg.rb +16 -2
- data/lib/shell_ev/models/o_auth_provider_error_enum.rb +19 -2
- data/lib/shell_ev/models/o_auth_token.rb +2 -2
- data/lib/shell_ev/models/opening_hours_object.rb +17 -3
- data/lib/shell_ev/models/opening_hours_object_week_day_enum.rb +20 -2
- data/lib/shell_ev/models/power_range.rb +68 -0
- data/lib/shell_ev/models/price_component.rb +86 -0
- data/lib/shell_ev/models/ratelimit_err_msg.rb +16 -2
- data/lib/shell_ev/models/{response.rb → response_v2.rb} +22 -9
- data/lib/shell_ev/models/restrictions.rb +183 -0
- data/lib/shell_ev/models/search_by_id_connector.rb +115 -0
- data/lib/shell_ev/models/search_by_id_evse.rb +145 -0
- data/lib/shell_ev/models/search_by_id_location_respone.rb +196 -0
- data/lib/shell_ev/models/search_by_id_response.rb +91 -0
- data/lib/shell_ev/models/serviceunavailable_err_msg.rb +16 -2
- data/lib/shell_ev/models/single_location_marker.rb +27 -6
- data/lib/shell_ev/models/single_location_marker_authorization_methods_items_enum.rb +16 -2
- data/lib/shell_ev/models/single_location_marker_response.rb +15 -2
- data/lib/shell_ev/models/single_location_marker_response_v2.rb +94 -0
- data/lib/shell_ev/models/single_location_marker_status_enum.rb +17 -2
- data/lib/shell_ev/models/single_location_marker_v2.rb +157 -0
- data/lib/shell_ev/models/tariff.rb +20 -3
- data/lib/shell_ev/models/tariff_alt_text.rb +68 -0
- data/lib/shell_ev/models/tariff_element.rb +80 -0
- data/lib/shell_ev/models/tariff_type_enum.rb +44 -0
- data/lib/shell_ev/models/tariff_v2.rb +226 -0
- data/lib/shell_ev/models/tariff_vo_updated_by_enum.rb +17 -2
- data/lib/shell_ev/models/type_enum.rb +44 -0
- data/lib/shell_ev/models/unauthorized_err_msg.rb +16 -2
- data/lib/shell_ev/utilities/date_time_helper.rb +2 -2
- data/lib/shell_ev/utilities/file_wrapper.rb +16 -4
- data/lib/shell_ev/utilities/union_type_lookup.rb +19 -2
- data/lib/shell_ev.rb +34 -10
- data/test/controllers/controller_test_base.rb +5 -10
- data/test/controllers/test_charging_controller.rb +7 -11
- data/test/controllers/test_locations_controller.rb +8 -11
- data/test/http_response_catcher.rb +3 -3
- metadata +38 -15
- data/lib/shell_ev/models/connector_vo.rb +0 -131
- data/lib/shell_ev/models/tariff_vo.rb +0 -107
|
@@ -1,131 +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
|
-
# An EVSE can have one or many Connectors. Each Connector will normally have a
|
|
8
|
-
# different socket / cable and only one can be used to charge at a time.
|
|
9
|
-
class ConnectorVO < BaseModel
|
|
10
|
-
SKIP = Object.new
|
|
11
|
-
private_constant :SKIP
|
|
12
|
-
|
|
13
|
-
# Internal identifier used to refer to this Connector
|
|
14
|
-
# @return [Integer]
|
|
15
|
-
attr_accessor :uid
|
|
16
|
-
|
|
17
|
-
# Identifier of the Evse as given by the Operator, unique for the containing
|
|
18
|
-
# EVSE'
|
|
19
|
-
# @return [String]
|
|
20
|
-
attr_accessor :external_id
|
|
21
|
-
|
|
22
|
-
# Identifier of the Evse as given by the Operator, unique for the containing
|
|
23
|
-
# EVSE'
|
|
24
|
-
# @return [ConnectorVOConnectorTypeEnum]
|
|
25
|
-
attr_accessor :connector_type
|
|
26
|
-
|
|
27
|
-
# Electrical Properties of the Connector
|
|
28
|
-
# @return [ElectricalProperties]
|
|
29
|
-
attr_accessor :electrical_properties
|
|
30
|
-
|
|
31
|
-
# Indicates whether Connector has a fixed cable attached. False by default
|
|
32
|
-
# (not sent in this case)
|
|
33
|
-
# @return [TrueClass | FalseClass]
|
|
34
|
-
attr_accessor :fixed_cable
|
|
35
|
-
|
|
36
|
-
# Indicates whether Connector has a fixed cable attached. False by default
|
|
37
|
-
# (not sent in this case)
|
|
38
|
-
# @return [Tariff]
|
|
39
|
-
attr_accessor :tariff
|
|
40
|
-
|
|
41
|
-
# ISO8601-compliant UTC datetime of the last update of the Connector’s data
|
|
42
|
-
# @return [String]
|
|
43
|
-
attr_accessor :updated
|
|
44
|
-
|
|
45
|
-
# ISO8601-compliant UTC datetime of the last update of the Connector’s data
|
|
46
|
-
# @return [ConnectorVOUpdatedByEnum]
|
|
47
|
-
attr_accessor :updated_by
|
|
48
|
-
|
|
49
|
-
# optional ISO8601-compliant UTC deletion timestamp of the connector
|
|
50
|
-
# @return [String]
|
|
51
|
-
attr_accessor :deleted
|
|
52
|
-
|
|
53
|
-
# A mapping from model property names to API property names.
|
|
54
|
-
def self.names
|
|
55
|
-
@_hash = {} if @_hash.nil?
|
|
56
|
-
@_hash['uid'] = 'uid'
|
|
57
|
-
@_hash['external_id'] = 'externalId'
|
|
58
|
-
@_hash['connector_type'] = 'connectorType'
|
|
59
|
-
@_hash['electrical_properties'] = 'electricalProperties'
|
|
60
|
-
@_hash['fixed_cable'] = 'fixedCable'
|
|
61
|
-
@_hash['tariff'] = 'tariff'
|
|
62
|
-
@_hash['updated'] = 'updated'
|
|
63
|
-
@_hash['updated_by'] = 'updatedBy'
|
|
64
|
-
@_hash['deleted'] = 'deleted'
|
|
65
|
-
@_hash
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
# An array for optional fields
|
|
69
|
-
def self.optionals
|
|
70
|
-
%w[
|
|
71
|
-
uid
|
|
72
|
-
external_id
|
|
73
|
-
connector_type
|
|
74
|
-
electrical_properties
|
|
75
|
-
fixed_cable
|
|
76
|
-
tariff
|
|
77
|
-
updated
|
|
78
|
-
updated_by
|
|
79
|
-
deleted
|
|
80
|
-
]
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# An array for nullable fields
|
|
84
|
-
def self.nullables
|
|
85
|
-
[]
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
def initialize(uid = SKIP, external_id = SKIP, connector_type = SKIP,
|
|
89
|
-
electrical_properties = SKIP, fixed_cable = SKIP,
|
|
90
|
-
tariff = SKIP, updated = SKIP, updated_by = SKIP,
|
|
91
|
-
deleted = SKIP)
|
|
92
|
-
@uid = uid unless uid == SKIP
|
|
93
|
-
@external_id = external_id unless external_id == SKIP
|
|
94
|
-
@connector_type = connector_type unless connector_type == SKIP
|
|
95
|
-
@electrical_properties = electrical_properties unless electrical_properties == SKIP
|
|
96
|
-
@fixed_cable = fixed_cable unless fixed_cable == SKIP
|
|
97
|
-
@tariff = tariff unless tariff == SKIP
|
|
98
|
-
@updated = updated unless updated == SKIP
|
|
99
|
-
@updated_by = updated_by unless updated_by == SKIP
|
|
100
|
-
@deleted = deleted unless deleted == SKIP
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
# Creates an instance of the object from a hash.
|
|
104
|
-
def self.from_hash(hash)
|
|
105
|
-
return nil unless hash
|
|
106
|
-
|
|
107
|
-
# Extract variables from the hash.
|
|
108
|
-
uid = hash.key?('uid') ? hash['uid'] : SKIP
|
|
109
|
-
external_id = hash.key?('externalId') ? hash['externalId'] : SKIP
|
|
110
|
-
connector_type = hash.key?('connectorType') ? hash['connectorType'] : SKIP
|
|
111
|
-
electrical_properties = ElectricalProperties.from_hash(hash['electricalProperties']) if
|
|
112
|
-
hash['electricalProperties']
|
|
113
|
-
fixed_cable = hash.key?('fixedCable') ? hash['fixedCable'] : SKIP
|
|
114
|
-
tariff = Tariff.from_hash(hash['tariff']) if hash['tariff']
|
|
115
|
-
updated = hash.key?('updated') ? hash['updated'] : SKIP
|
|
116
|
-
updated_by = hash.key?('updatedBy') ? hash['updatedBy'] : SKIP
|
|
117
|
-
deleted = hash.key?('deleted') ? hash['deleted'] : SKIP
|
|
118
|
-
|
|
119
|
-
# Create object from extracted values.
|
|
120
|
-
ConnectorVO.new(uid,
|
|
121
|
-
external_id,
|
|
122
|
-
connector_type,
|
|
123
|
-
electrical_properties,
|
|
124
|
-
fixed_cable,
|
|
125
|
-
tariff,
|
|
126
|
-
updated,
|
|
127
|
-
updated_by,
|
|
128
|
-
deleted)
|
|
129
|
-
end
|
|
130
|
-
end
|
|
131
|
-
end
|
|
@@ -1,107 +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
|
-
end
|
|
107
|
-
end
|