mux_ruby 1.6.0 → 2.0.0.pre.rc.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/Gemfile +3 -1
- data/Gemfile.lock +26 -37
- data/README.md +37 -13
- data/docs/AbridgedVideoView.md +33 -13
- data/docs/Asset.md +59 -23
- data/docs/AssetErrors.md +15 -4
- data/docs/AssetMaster.md +15 -4
- data/docs/AssetNonStandardInputReasons.md +34 -0
- data/docs/AssetRecordingTimes.md +20 -0
- data/docs/AssetResponse.md +13 -3
- data/docs/AssetStaticRenditions.md +15 -4
- data/docs/AssetStaticRenditionsFiles.md +23 -8
- data/docs/AssetsApi.md +396 -161
- data/docs/BreakdownValue.md +21 -7
- data/docs/CreateAssetRequest.md +27 -10
- data/docs/CreateLiveStreamRequest.md +27 -9
- data/docs/CreatePlaybackIDRequest.md +13 -3
- data/docs/CreatePlaybackIDResponse.md +13 -3
- data/docs/CreateSimulcastTargetRequest.md +17 -5
- data/docs/CreateTrackRequest.md +25 -9
- data/docs/CreateTrackResponse.md +13 -3
- data/docs/CreateUploadRequest.md +19 -6
- data/docs/DeliveryReport.md +27 -9
- data/docs/DeliveryUsageApi.md +41 -23
- data/docs/DimensionValue.md +20 -0
- data/docs/DimensionsApi.md +156 -0
- data/docs/DirectUploadsApi.md +131 -56
- data/docs/DisableLiveStreamResponse.md +18 -0
- data/docs/EnableLiveStreamResponse.md +18 -0
- data/docs/Error.md +27 -10
- data/docs/ErrorsApi.md +38 -20
- data/docs/ExportsApi.md +33 -14
- data/docs/FilterValue.md +15 -4
- data/docs/FiltersApi.md +73 -35
- data/docs/GetAssetInputInfoResponse.md +13 -3
- data/docs/GetAssetOrLiveStreamIdResponse.md +18 -0
- data/docs/GetAssetOrLiveStreamIdResponseData.md +22 -0
- data/docs/GetAssetOrLiveStreamIdResponseDataObject.md +20 -0
- data/docs/GetAssetPlaybackIDResponse.md +13 -3
- data/docs/GetMetricTimeseriesDataResponse.md +17 -5
- data/docs/GetOverallValuesResponse.md +17 -5
- data/docs/GetRealTimeBreakdownResponse.md +22 -0
- data/docs/GetRealTimeHistogramTimeseriesResponse.md +24 -0
- data/docs/GetRealTimeHistogramTimeseriesResponseMeta.md +18 -0
- data/docs/GetRealTimeTimeseriesResponse.md +22 -0
- data/docs/Incident.md +58 -0
- data/docs/IncidentBreakdown.md +22 -0
- data/docs/IncidentNotification.md +22 -0
- data/docs/IncidentNotificationRule.md +26 -0
- data/docs/IncidentResponse.md +20 -0
- data/docs/IncidentsApi.md +242 -0
- data/docs/InputFile.md +15 -4
- data/docs/InputInfo.md +15 -4
- data/docs/InputSettings.md +31 -10
- data/docs/InputSettingsOverlaySettings.md +25 -9
- data/docs/InputTrack.md +29 -11
- data/docs/Insight.md +23 -8
- data/docs/ListAllMetricValuesResponse.md +17 -5
- data/docs/ListAssetsResponse.md +13 -3
- data/docs/ListBreakdownValuesResponse.md +17 -5
- data/docs/ListDeliveryUsageResponse.md +19 -6
- data/docs/ListDimensionValuesResponse.md +22 -0
- data/docs/ListDimensionsResponse.md +22 -0
- data/docs/ListErrorsResponse.md +17 -5
- data/docs/ListExportsResponse.md +17 -5
- data/docs/ListFilterValuesResponse.md +17 -5
- data/docs/ListFiltersResponse.md +17 -5
- data/docs/ListFiltersResponseData.md +15 -4
- data/docs/ListIncidentsResponse.md +22 -0
- data/docs/ListInsightsResponse.md +17 -5
- data/docs/ListLiveStreamsResponse.md +13 -3
- data/docs/ListRealTimeDimensionsResponse.md +22 -0
- data/docs/ListRealTimeDimensionsResponseData.md +20 -0
- data/docs/ListRealTimeMetricsResponse.md +22 -0
- data/docs/ListRelatedIncidentsResponse.md +22 -0
- data/docs/ListSigningKeysResponse.md +13 -3
- data/docs/ListUploadsResponse.md +13 -3
- data/docs/ListVideoViewsResponse.md +17 -5
- data/docs/LiveStream.md +39 -15
- data/docs/LiveStreamResponse.md +13 -3
- data/docs/LiveStreamsApi.md +497 -145
- data/docs/Metric.md +21 -7
- data/docs/MetricsApi.md +211 -117
- data/docs/NotificationRule.md +22 -0
- data/docs/OverallValues.md +19 -6
- data/docs/PlaybackID.md +15 -4
- data/docs/PlaybackIDApi.md +78 -0
- data/docs/PlaybackPolicy.md +10 -2
- data/docs/RealTimeApi.md +376 -0
- data/docs/RealTimeBreakdownValue.md +26 -0
- data/docs/RealTimeHistogramTimeseriesBucket.md +20 -0
- data/docs/RealTimeHistogramTimeseriesBucketValues.md +20 -0
- data/docs/RealTimeHistogramTimeseriesDatapoint.md +30 -0
- data/docs/RealTimeTimeseriesDatapoint.md +22 -0
- data/docs/Score.md +23 -8
- data/docs/SignalLiveStreamCompleteResponse.md +13 -3
- data/docs/SigningKey.md +17 -5
- data/docs/SigningKeyResponse.md +13 -3
- data/docs/SimulcastTarget.md +21 -7
- data/docs/SimulcastTargetResponse.md +13 -3
- data/docs/Track.md +37 -15
- data/docs/URLSigningKeysApi.md +130 -54
- data/docs/UpdateAssetMP4SupportRequest.md +13 -3
- data/docs/UpdateAssetMasterAccessRequest.md +13 -3
- data/docs/Upload.md +29 -11
- data/docs/UploadError.md +15 -4
- data/docs/UploadResponse.md +13 -3
- data/docs/VideoView.md +251 -114
- data/docs/VideoViewEvent.md +19 -6
- data/docs/VideoViewResponse.md +15 -4
- data/docs/VideoViewsApi.md +78 -41
- data/examples/data/exercise-dimensions.rb +29 -0
- data/examples/data/exercise-incidents.rb +29 -0
- data/examples/data/exercise-realtime.rb +60 -0
- data/examples/video/exercise-assets.rb +21 -0
- data/examples/video/exercise-live-streams.rb +30 -0
- data/gen/.gitignore +7 -0
- data/gen/Makefile +31 -0
- data/gen/generator-config.json +11 -0
- data/gen/openapitools.json +7 -0
- data/gen/package.json +17 -0
- data/gen/templates/Gemfile.mustache +11 -0
- data/gen/templates/README.mustache +158 -0
- data/gen/templates/Rakefile.mustache +10 -0
- data/gen/templates/api.mustache +206 -0
- data/gen/templates/api_client.mustache +264 -0
- data/gen/templates/api_client_faraday_partial.mustache +138 -0
- data/gen/templates/api_client_spec.mustache +220 -0
- data/gen/templates/api_client_typhoeus_partial.mustache +183 -0
- data/gen/templates/api_doc.mustache +118 -0
- data/gen/templates/api_error.mustache +67 -0
- data/gen/templates/api_info.mustache +12 -0
- data/gen/templates/api_test.mustache +47 -0
- data/gen/templates/base_object.mustache +120 -0
- data/gen/templates/configuration.mustache +349 -0
- data/gen/templates/configuration_spec.mustache +34 -0
- data/gen/templates/configuration_tls_faraday_partial.mustache +29 -0
- data/gen/templates/configuration_tls_typhoeus_partial.mustache +34 -0
- data/gen/templates/gem.mustache +40 -0
- data/gen/templates/gemspec.mustache +35 -0
- data/gen/templates/gitignore.mustache +39 -0
- data/gen/templates/model.mustache +26 -0
- data/gen/templates/model_doc.mustache +12 -0
- data/gen/templates/model_test.mustache +77 -0
- data/gen/templates/partial_model_enum_class.mustache +20 -0
- data/gen/templates/partial_model_generic.mustache +371 -0
- data/gen/templates/partial_model_generic_doc.mustache +28 -0
- data/gen/templates/partial_oneof_module.mustache +137 -0
- data/gen/templates/partial_oneof_module_doc.mustache +92 -0
- data/gen/templates/rspec.mustache +2 -0
- data/gen/templates/rubocop.mustache +148 -0
- data/gen/templates/spec_helper.mustache +103 -0
- data/gen/templates/version.mustache +7 -0
- data/gen/yarn.lock +1878 -0
- data/lib/mux_ruby.rb +43 -2
- data/lib/mux_ruby/api/assets_api.rb +291 -152
- data/lib/mux_ruby/api/delivery_usage_api.rb +32 -16
- data/lib/mux_ruby/api/dimensions_api.rb +154 -0
- data/lib/mux_ruby/api/direct_uploads_api.rb +90 -44
- data/lib/mux_ruby/api/errors_api.rb +34 -18
- data/lib/mux_ruby/api/exports_api.rb +30 -14
- data/lib/mux_ruby/api/filters_api.rb +57 -31
- data/lib/mux_ruby/api/incidents_api.rb +259 -0
- data/lib/mux_ruby/api/live_streams_api.rb +381 -133
- data/lib/mux_ruby/api/metrics_api.rb +185 -114
- data/lib/mux_ruby/api/playback_id_api.rb +85 -0
- data/lib/mux_ruby/api/real_time_api.rb +373 -0
- data/lib/mux_ruby/api/url_signing_keys_api.rb +95 -48
- data/lib/mux_ruby/api/video_views_api.rb +60 -33
- data/lib/mux_ruby/api_client.rb +106 -91
- data/lib/mux_ruby/api_error.rb +35 -7
- data/lib/mux_ruby/configuration.rb +50 -14
- data/lib/mux_ruby/models/abridged_video_view.rb +58 -24
- data/lib/mux_ruby/models/asset.rb +157 -53
- data/lib/mux_ruby/models/asset_errors.rb +52 -15
- data/lib/mux_ruby/models/asset_master.rb +85 -15
- data/lib/mux_ruby/models/asset_non_standard_input_reasons.rb +370 -0
- data/lib/mux_ruby/models/asset_recording_times.rb +229 -0
- data/lib/mux_ruby/models/asset_response.rb +48 -14
- data/lib/mux_ruby/models/asset_static_renditions.rb +55 -19
- data/lib/mux_ruby/models/asset_static_renditions_files.rb +60 -25
- data/lib/mux_ruby/models/breakdown_value.rb +52 -18
- data/lib/mux_ruby/models/create_asset_request.rb +70 -30
- data/lib/mux_ruby/models/create_live_stream_request.rb +68 -23
- data/lib/mux_ruby/models/create_playback_id_request.rb +48 -14
- data/lib/mux_ruby/models/create_playback_id_response.rb +48 -14
- data/lib/mux_ruby/models/create_simulcast_target_request.rb +50 -16
- data/lib/mux_ruby/models/create_track_request.rb +65 -27
- data/lib/mux_ruby/models/create_track_response.rb +48 -14
- data/lib/mux_ruby/models/create_upload_request.rb +52 -18
- data/lib/mux_ruby/models/delivery_report.rb +106 -21
- data/lib/mux_ruby/models/dimension_value.rb +227 -0
- data/lib/mux_ruby/models/disable_live_stream_response.rb +218 -0
- data/lib/mux_ruby/models/enable_live_stream_response.rb +218 -0
- data/lib/mux_ruby/models/error.rb +63 -21
- data/lib/mux_ruby/models/filter_value.rb +49 -15
- data/lib/mux_ruby/models/get_asset_input_info_response.rb +48 -14
- data/lib/mux_ruby/models/get_asset_or_live_stream_id_response.rb +218 -0
- data/lib/mux_ruby/models/get_asset_or_live_stream_id_response_data.rb +237 -0
- data/lib/mux_ruby/models/get_asset_or_live_stream_id_response_data_object.rb +264 -0
- data/lib/mux_ruby/models/get_asset_playback_id_response.rb +48 -14
- data/lib/mux_ruby/models/get_metric_timeseries_data_response.rb +50 -16
- data/lib/mux_ruby/models/get_overall_values_response.rb +50 -16
- data/lib/mux_ruby/models/get_real_time_breakdown_response.rb +240 -0
- data/lib/mux_ruby/models/get_real_time_histogram_timeseries_response.rb +249 -0
- data/lib/mux_ruby/models/get_real_time_histogram_timeseries_response_meta.rb +220 -0
- data/lib/mux_ruby/models/get_real_time_timeseries_response.rb +240 -0
- data/lib/mux_ruby/models/incident.rb +404 -0
- data/lib/mux_ruby/models/incident_breakdown.rb +236 -0
- data/lib/mux_ruby/models/incident_notification.rb +236 -0
- data/lib/mux_ruby/models/incident_notification_rule.rb +256 -0
- data/lib/mux_ruby/models/incident_response.rb +229 -0
- data/lib/mux_ruby/models/input_file.rb +49 -15
- data/lib/mux_ruby/models/input_info.rb +49 -15
- data/lib/mux_ruby/models/input_settings.rb +91 -30
- data/lib/mux_ruby/models/input_settings_overlay_settings.rb +68 -26
- data/lib/mux_ruby/models/input_track.rb +56 -22
- data/lib/mux_ruby/models/insight.rb +53 -19
- data/lib/mux_ruby/models/list_all_metric_values_response.rb +50 -16
- data/lib/mux_ruby/models/list_assets_response.rb +48 -14
- data/lib/mux_ruby/models/list_breakdown_values_response.rb +50 -16
- data/lib/mux_ruby/models/list_delivery_usage_response.rb +51 -17
- data/lib/mux_ruby/models/list_dimension_values_response.rb +240 -0
- data/lib/mux_ruby/models/list_dimensions_response.rb +238 -0
- data/lib/mux_ruby/models/list_errors_response.rb +50 -16
- data/lib/mux_ruby/models/list_exports_response.rb +50 -16
- data/lib/mux_ruby/models/list_filter_values_response.rb +50 -16
- data/lib/mux_ruby/models/list_filters_response.rb +50 -16
- data/lib/mux_ruby/models/list_filters_response_data.rb +49 -15
- data/lib/mux_ruby/models/list_incidents_response.rb +240 -0
- data/lib/mux_ruby/models/list_insights_response.rb +50 -16
- data/lib/mux_ruby/models/list_live_streams_response.rb +48 -14
- data/lib/mux_ruby/models/list_real_time_dimensions_response.rb +240 -0
- data/lib/mux_ruby/models/list_real_time_dimensions_response_data.rb +227 -0
- data/lib/mux_ruby/models/list_real_time_metrics_response.rb +240 -0
- data/lib/mux_ruby/models/list_related_incidents_response.rb +240 -0
- data/lib/mux_ruby/models/list_signing_keys_response.rb +48 -14
- data/lib/mux_ruby/models/list_uploads_response.rb +48 -14
- data/lib/mux_ruby/models/list_video_views_response.rb +50 -16
- data/lib/mux_ruby/models/live_stream.rb +121 -29
- data/lib/mux_ruby/models/live_stream_response.rb +48 -14
- data/lib/mux_ruby/models/metric.rb +52 -18
- data/lib/mux_ruby/models/notification_rule.rb +236 -0
- data/lib/mux_ruby/models/overall_values.rb +51 -17
- data/lib/mux_ruby/models/playback_id.rb +50 -15
- data/lib/mux_ruby/models/playback_policy.rb +12 -6
- data/lib/mux_ruby/models/real_time_breakdown_value.rb +254 -0
- data/lib/mux_ruby/models/real_time_histogram_timeseries_bucket.rb +227 -0
- data/lib/mux_ruby/models/real_time_histogram_timeseries_bucket_values.rb +227 -0
- data/lib/mux_ruby/models/real_time_histogram_timeseries_datapoint.rb +274 -0
- data/lib/mux_ruby/models/real_time_timeseries_datapoint.rb +236 -0
- data/lib/mux_ruby/models/score.rb +53 -19
- data/lib/mux_ruby/models/signal_live_stream_complete_response.rb +48 -14
- data/lib/mux_ruby/models/signing_key.rb +53 -16
- data/lib/mux_ruby/models/signing_key_response.rb +48 -14
- data/lib/mux_ruby/models/simulcast_target.rb +55 -21
- data/lib/mux_ruby/models/simulcast_target_response.rb +48 -14
- data/lib/mux_ruby/models/track.rb +92 -33
- data/lib/mux_ruby/models/update_asset_master_access_request.rb +51 -17
- data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +51 -17
- data/lib/mux_ruby/models/upload.rb +62 -26
- data/lib/mux_ruby/models/upload_error.rb +51 -15
- data/lib/mux_ruby/models/upload_response.rb +48 -14
- data/lib/mux_ruby/models/video_view.rb +242 -136
- data/lib/mux_ruby/models/video_view_event.rb +51 -17
- data/lib/mux_ruby/models/video_view_response.rb +49 -15
- data/lib/mux_ruby/version.rb +10 -3
- data/mux_ruby.gemspec +15 -15
- data/spec/api/assets_api_spec.rb +2 -0
- data/spec/api/dimensions_api_spec.rb +55 -0
- data/spec/api/filters_api_spec.rb +2 -2
- data/spec/api/incidents_api_spec.rb +73 -0
- data/spec/api/live_streams_api_spec.rb +24 -0
- data/spec/api/playback_id_api_spec.rb +40 -0
- data/spec/api/real_time_api_spec.rb +93 -0
- data/spec/api_client_spec.rb +10 -3
- data/spec/configuration_spec.rb +9 -2
- data/spec/models/asset_master_spec.rb +4 -0
- data/spec/models/asset_non_standard_input_reasons_spec.rb +98 -0
- data/spec/models/asset_recording_times_spec.rb +40 -0
- data/spec/models/asset_spec.rb +26 -0
- data/spec/models/dimension_value_spec.rb +40 -0
- data/spec/models/disable_live_stream_response_spec.rb +34 -0
- data/spec/models/enable_live_stream_response_spec.rb +34 -0
- data/spec/models/get_asset_or_live_stream_id_response_data_object_spec.rb +44 -0
- data/spec/models/get_asset_or_live_stream_id_response_data_spec.rb +46 -0
- data/spec/models/get_asset_or_live_stream_id_response_spec.rb +34 -0
- data/spec/models/get_real_time_breakdown_response_spec.rb +46 -0
- data/spec/models/get_real_time_histogram_timeseries_response_meta_spec.rb +34 -0
- data/spec/models/get_real_time_histogram_timeseries_response_spec.rb +52 -0
- data/spec/models/get_real_time_timeseries_response_spec.rb +46 -0
- data/spec/models/incident_breakdown_spec.rb +46 -0
- data/spec/models/incident_notification_rule_spec.rb +58 -0
- data/spec/models/incident_notification_spec.rb +46 -0
- data/spec/models/incident_response_spec.rb +40 -0
- data/spec/models/incident_spec.rb +154 -0
- data/spec/models/input_settings_spec.rb +12 -0
- data/spec/models/list_dimension_values_response_spec.rb +46 -0
- data/spec/models/list_dimensions_response_spec.rb +46 -0
- data/spec/models/list_incidents_response_spec.rb +46 -0
- data/spec/models/list_real_time_dimensions_response_data_spec.rb +40 -0
- data/spec/models/list_real_time_dimensions_response_spec.rb +46 -0
- data/spec/models/list_real_time_metrics_response_spec.rb +46 -0
- data/spec/models/list_related_incidents_response_spec.rb +46 -0
- data/spec/models/notification_rule_spec.rb +46 -0
- data/spec/models/real_time_breakdown_value_spec.rb +58 -0
- data/spec/models/real_time_histogram_timeseries_bucket_spec.rb +40 -0
- data/spec/models/real_time_histogram_timeseries_bucket_values_spec.rb +40 -0
- data/spec/models/real_time_histogram_timeseries_datapoint_spec.rb +70 -0
- data/spec/models/real_time_timeseries_datapoint_spec.rb +46 -0
- data/spec/models/track_spec.rb +4 -0
- data/spec/spec_helper.rb +9 -2
- metadata +246 -209
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
=begin
|
|
2
|
-
#
|
|
3
|
-
|
|
2
|
+
#Mux API
|
|
3
|
+
|
|
4
|
+
#Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: v1
|
|
7
|
+
Contact: devex@mux.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 5.0.1
|
|
10
|
+
|
|
4
11
|
=end
|
|
5
12
|
|
|
6
13
|
require 'date'
|
|
14
|
+
require 'time'
|
|
7
15
|
|
|
8
16
|
module MuxRuby
|
|
9
17
|
class SimulcastTarget
|
|
@@ -55,6 +63,11 @@ module MuxRuby
|
|
|
55
63
|
}
|
|
56
64
|
end
|
|
57
65
|
|
|
66
|
+
# Returns all the JSON keys this model knows about
|
|
67
|
+
def self.acceptable_attributes
|
|
68
|
+
attribute_map.values
|
|
69
|
+
end
|
|
70
|
+
|
|
58
71
|
# Attribute type mapping.
|
|
59
72
|
def self.openapi_types
|
|
60
73
|
{
|
|
@@ -66,31 +79,44 @@ module MuxRuby
|
|
|
66
79
|
}
|
|
67
80
|
end
|
|
68
81
|
|
|
82
|
+
# List of attributes with nullable: true
|
|
83
|
+
def self.openapi_nullable
|
|
84
|
+
Set.new([
|
|
85
|
+
])
|
|
86
|
+
end
|
|
87
|
+
|
|
69
88
|
# Initializes the object
|
|
70
89
|
# @param [Hash] attributes Model attributes in the form of hash
|
|
71
90
|
def initialize(attributes = {})
|
|
72
|
-
|
|
91
|
+
if (!attributes.is_a?(Hash))
|
|
92
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::SimulcastTarget` initialize method"
|
|
93
|
+
end
|
|
73
94
|
|
|
74
|
-
# convert string to symbol for hash key
|
|
75
|
-
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
95
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
96
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
97
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
98
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::SimulcastTarget`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
99
|
+
end
|
|
100
|
+
h[k.to_sym] = v
|
|
101
|
+
}
|
|
76
102
|
|
|
77
|
-
if attributes.
|
|
103
|
+
if attributes.key?(:'id')
|
|
78
104
|
self.id = attributes[:'id']
|
|
79
105
|
end
|
|
80
106
|
|
|
81
|
-
if attributes.
|
|
107
|
+
if attributes.key?(:'passthrough')
|
|
82
108
|
self.passthrough = attributes[:'passthrough']
|
|
83
109
|
end
|
|
84
110
|
|
|
85
|
-
if attributes.
|
|
111
|
+
if attributes.key?(:'status')
|
|
86
112
|
self.status = attributes[:'status']
|
|
87
113
|
end
|
|
88
114
|
|
|
89
|
-
if attributes.
|
|
115
|
+
if attributes.key?(:'stream_key')
|
|
90
116
|
self.stream_key = attributes[:'stream_key']
|
|
91
117
|
end
|
|
92
118
|
|
|
93
|
-
if attributes.
|
|
119
|
+
if attributes.key?(:'url')
|
|
94
120
|
self.url = attributes[:'url']
|
|
95
121
|
end
|
|
96
122
|
end
|
|
@@ -105,7 +131,7 @@ module MuxRuby
|
|
|
105
131
|
# Check to see if the all the properties in the model are valid
|
|
106
132
|
# @return true if the model is valid
|
|
107
133
|
def valid?
|
|
108
|
-
status_validator = EnumAttributeValidator.new('String', [
|
|
134
|
+
status_validator = EnumAttributeValidator.new('String', ["idle", "starting", "broadcasting", "errored"])
|
|
109
135
|
return false unless status_validator.valid?(@status)
|
|
110
136
|
true
|
|
111
137
|
end
|
|
@@ -113,9 +139,9 @@ module MuxRuby
|
|
|
113
139
|
# Custom attribute writer method checking allowed values (enum).
|
|
114
140
|
# @param [Object] status Object to be assigned
|
|
115
141
|
def status=(status)
|
|
116
|
-
validator = EnumAttributeValidator.new('String', [
|
|
142
|
+
validator = EnumAttributeValidator.new('String', ["idle", "starting", "broadcasting", "errored"])
|
|
117
143
|
unless validator.valid?(status)
|
|
118
|
-
fail ArgumentError,
|
|
144
|
+
fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
|
|
119
145
|
end
|
|
120
146
|
@status = status
|
|
121
147
|
end
|
|
@@ -139,7 +165,7 @@ module MuxRuby
|
|
|
139
165
|
end
|
|
140
166
|
|
|
141
167
|
# Calculates hash code according to all attributes.
|
|
142
|
-
# @return [
|
|
168
|
+
# @return [Integer] Hash code
|
|
143
169
|
def hash
|
|
144
170
|
[id, passthrough, status, stream_key, url].hash
|
|
145
171
|
end
|
|
@@ -157,7 +183,9 @@ module MuxRuby
|
|
|
157
183
|
def build_from_hash(attributes)
|
|
158
184
|
return nil unless attributes.is_a?(Hash)
|
|
159
185
|
self.class.openapi_types.each_pair do |key, type|
|
|
160
|
-
if
|
|
186
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
|
187
|
+
self.send("#{key}=", nil)
|
|
188
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
161
189
|
# check to ensure the input is an array given that the attribute
|
|
162
190
|
# is documented as an array but the input is not
|
|
163
191
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
@@ -165,7 +193,7 @@ module MuxRuby
|
|
|
165
193
|
end
|
|
166
194
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
167
195
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
168
|
-
end
|
|
196
|
+
end
|
|
169
197
|
end
|
|
170
198
|
|
|
171
199
|
self
|
|
@@ -177,8 +205,8 @@ module MuxRuby
|
|
|
177
205
|
# @return [Object] Deserialized data
|
|
178
206
|
def _deserialize(type, value)
|
|
179
207
|
case type.to_sym
|
|
180
|
-
when :
|
|
181
|
-
|
|
208
|
+
when :Time
|
|
209
|
+
Time.parse(value)
|
|
182
210
|
when :Date
|
|
183
211
|
Date.parse(value)
|
|
184
212
|
when :String
|
|
@@ -187,7 +215,7 @@ module MuxRuby
|
|
|
187
215
|
value.to_i
|
|
188
216
|
when :Float
|
|
189
217
|
value.to_f
|
|
190
|
-
when :
|
|
218
|
+
when :Boolean
|
|
191
219
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
192
220
|
true
|
|
193
221
|
else
|
|
@@ -208,7 +236,9 @@ module MuxRuby
|
|
|
208
236
|
end
|
|
209
237
|
end
|
|
210
238
|
else # model
|
|
211
|
-
|
|
239
|
+
# models (e.g. Pet) or oneOf
|
|
240
|
+
klass = MuxRuby.const_get(type)
|
|
241
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
212
242
|
end
|
|
213
243
|
end
|
|
214
244
|
|
|
@@ -230,7 +260,11 @@ module MuxRuby
|
|
|
230
260
|
hash = {}
|
|
231
261
|
self.class.attribute_map.each_pair do |attr, param|
|
|
232
262
|
value = self.send(attr)
|
|
233
|
-
|
|
263
|
+
if value.nil?
|
|
264
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
265
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
266
|
+
end
|
|
267
|
+
|
|
234
268
|
hash[param] = _to_hash(value)
|
|
235
269
|
end
|
|
236
270
|
hash
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
=begin
|
|
2
|
-
#
|
|
3
|
-
|
|
2
|
+
#Mux API
|
|
3
|
+
|
|
4
|
+
#Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: v1
|
|
7
|
+
Contact: devex@mux.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 5.0.1
|
|
10
|
+
|
|
4
11
|
=end
|
|
5
12
|
|
|
6
13
|
require 'date'
|
|
14
|
+
require 'time'
|
|
7
15
|
|
|
8
16
|
module MuxRuby
|
|
9
17
|
class SimulcastTargetResponse
|
|
@@ -16,6 +24,11 @@ module MuxRuby
|
|
|
16
24
|
}
|
|
17
25
|
end
|
|
18
26
|
|
|
27
|
+
# Returns all the JSON keys this model knows about
|
|
28
|
+
def self.acceptable_attributes
|
|
29
|
+
attribute_map.values
|
|
30
|
+
end
|
|
31
|
+
|
|
19
32
|
# Attribute type mapping.
|
|
20
33
|
def self.openapi_types
|
|
21
34
|
{
|
|
@@ -23,15 +36,28 @@ module MuxRuby
|
|
|
23
36
|
}
|
|
24
37
|
end
|
|
25
38
|
|
|
39
|
+
# List of attributes with nullable: true
|
|
40
|
+
def self.openapi_nullable
|
|
41
|
+
Set.new([
|
|
42
|
+
])
|
|
43
|
+
end
|
|
44
|
+
|
|
26
45
|
# Initializes the object
|
|
27
46
|
# @param [Hash] attributes Model attributes in the form of hash
|
|
28
47
|
def initialize(attributes = {})
|
|
29
|
-
|
|
48
|
+
if (!attributes.is_a?(Hash))
|
|
49
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::SimulcastTargetResponse` initialize method"
|
|
50
|
+
end
|
|
30
51
|
|
|
31
|
-
# convert string to symbol for hash key
|
|
32
|
-
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
52
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
53
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
54
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
55
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::SimulcastTargetResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
56
|
+
end
|
|
57
|
+
h[k.to_sym] = v
|
|
58
|
+
}
|
|
33
59
|
|
|
34
|
-
if attributes.
|
|
60
|
+
if attributes.key?(:'data')
|
|
35
61
|
self.data = attributes[:'data']
|
|
36
62
|
end
|
|
37
63
|
end
|
|
@@ -64,7 +90,7 @@ module MuxRuby
|
|
|
64
90
|
end
|
|
65
91
|
|
|
66
92
|
# Calculates hash code according to all attributes.
|
|
67
|
-
# @return [
|
|
93
|
+
# @return [Integer] Hash code
|
|
68
94
|
def hash
|
|
69
95
|
[data].hash
|
|
70
96
|
end
|
|
@@ -82,7 +108,9 @@ module MuxRuby
|
|
|
82
108
|
def build_from_hash(attributes)
|
|
83
109
|
return nil unless attributes.is_a?(Hash)
|
|
84
110
|
self.class.openapi_types.each_pair do |key, type|
|
|
85
|
-
if
|
|
111
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
|
112
|
+
self.send("#{key}=", nil)
|
|
113
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
86
114
|
# check to ensure the input is an array given that the attribute
|
|
87
115
|
# is documented as an array but the input is not
|
|
88
116
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
@@ -90,7 +118,7 @@ module MuxRuby
|
|
|
90
118
|
end
|
|
91
119
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
92
120
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
93
|
-
end
|
|
121
|
+
end
|
|
94
122
|
end
|
|
95
123
|
|
|
96
124
|
self
|
|
@@ -102,8 +130,8 @@ module MuxRuby
|
|
|
102
130
|
# @return [Object] Deserialized data
|
|
103
131
|
def _deserialize(type, value)
|
|
104
132
|
case type.to_sym
|
|
105
|
-
when :
|
|
106
|
-
|
|
133
|
+
when :Time
|
|
134
|
+
Time.parse(value)
|
|
107
135
|
when :Date
|
|
108
136
|
Date.parse(value)
|
|
109
137
|
when :String
|
|
@@ -112,7 +140,7 @@ module MuxRuby
|
|
|
112
140
|
value.to_i
|
|
113
141
|
when :Float
|
|
114
142
|
value.to_f
|
|
115
|
-
when :
|
|
143
|
+
when :Boolean
|
|
116
144
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
117
145
|
true
|
|
118
146
|
else
|
|
@@ -133,7 +161,9 @@ module MuxRuby
|
|
|
133
161
|
end
|
|
134
162
|
end
|
|
135
163
|
else # model
|
|
136
|
-
|
|
164
|
+
# models (e.g. Pet) or oneOf
|
|
165
|
+
klass = MuxRuby.const_get(type)
|
|
166
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
137
167
|
end
|
|
138
168
|
end
|
|
139
169
|
|
|
@@ -155,7 +185,11 @@ module MuxRuby
|
|
|
155
185
|
hash = {}
|
|
156
186
|
self.class.attribute_map.each_pair do |attr, param|
|
|
157
187
|
value = self.send(attr)
|
|
158
|
-
|
|
188
|
+
if value.nil?
|
|
189
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
190
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
191
|
+
end
|
|
192
|
+
|
|
159
193
|
hash[param] = _to_hash(value)
|
|
160
194
|
end
|
|
161
195
|
hash
|
|
@@ -1,36 +1,57 @@
|
|
|
1
1
|
=begin
|
|
2
|
-
#
|
|
3
|
-
|
|
2
|
+
#Mux API
|
|
3
|
+
|
|
4
|
+
#Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: v1
|
|
7
|
+
Contact: devex@mux.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 5.0.1
|
|
10
|
+
|
|
4
11
|
=end
|
|
5
12
|
|
|
6
13
|
require 'date'
|
|
14
|
+
require 'time'
|
|
7
15
|
|
|
8
16
|
module MuxRuby
|
|
9
17
|
class Track
|
|
18
|
+
# Unique identifier for the Track
|
|
10
19
|
attr_accessor :id
|
|
11
20
|
|
|
21
|
+
# The type of track
|
|
12
22
|
attr_accessor :type
|
|
13
23
|
|
|
24
|
+
# The duration in seconds of the track media. This parameter is not set for the `text` type track. This field is optional and may not be set. The top level `duration` field of an asset will always be set.
|
|
14
25
|
attr_accessor :duration
|
|
15
26
|
|
|
27
|
+
# The maximum width in pixels available for the track. Only set for the `video` type track.
|
|
16
28
|
attr_accessor :max_width
|
|
17
29
|
|
|
30
|
+
# The maximum height in pixels available for the track. Only set for the `video` type track.
|
|
18
31
|
attr_accessor :max_height
|
|
19
32
|
|
|
33
|
+
# The maximum frame rate available for the track. Only set for the `video` type track. This field may return `-1` if the frame rate of the input cannot be reliably determined.
|
|
20
34
|
attr_accessor :max_frame_rate
|
|
21
35
|
|
|
36
|
+
# The maximum number of audio channels the track supports. Only set for the `audio` type track.
|
|
22
37
|
attr_accessor :max_channels
|
|
23
38
|
|
|
39
|
+
# Only set for the `audio` type track.
|
|
24
40
|
attr_accessor :max_channel_layout
|
|
25
41
|
|
|
42
|
+
# This parameter is set only for the `text` type track.
|
|
26
43
|
attr_accessor :text_type
|
|
27
44
|
|
|
45
|
+
# The language code value represents [BCP 47](https://tools.ietf.org/html/bcp47) specification compliant value. For example, `en` for English or `en-US` for the US version of English. This parameter is set for `text` type and `subtitles` text type track.
|
|
28
46
|
attr_accessor :language_code
|
|
29
47
|
|
|
48
|
+
# The name of the track containing a human-readable description. The hls manifest will associate a subtitle text track with this value. For example, the value is \"English\" for subtitles text track for the `language_code` value of `en-US`. This parameter is set for the `text` type and `subtitles` text type track.
|
|
30
49
|
attr_accessor :name
|
|
31
50
|
|
|
51
|
+
# Indicates the track provides Subtitles for the Deaf or Hard-of-hearing (SDH). This parameter is set for the `text` type and `subtitles` text type track.
|
|
32
52
|
attr_accessor :closed_captions
|
|
33
53
|
|
|
54
|
+
# Arbitrary metadata set for the track either when creating the asset or track. This parameter is set for `text` type and `subtitles` text type track. Max 255 characters.
|
|
34
55
|
attr_accessor :passthrough
|
|
35
56
|
|
|
36
57
|
class EnumAttributeValidator
|
|
@@ -74,6 +95,11 @@ module MuxRuby
|
|
|
74
95
|
}
|
|
75
96
|
end
|
|
76
97
|
|
|
98
|
+
# Returns all the JSON keys this model knows about
|
|
99
|
+
def self.acceptable_attributes
|
|
100
|
+
attribute_map.values
|
|
101
|
+
end
|
|
102
|
+
|
|
77
103
|
# Attribute type mapping.
|
|
78
104
|
def self.openapi_types
|
|
79
105
|
{
|
|
@@ -88,68 +114,81 @@ module MuxRuby
|
|
|
88
114
|
:'text_type' => :'String',
|
|
89
115
|
:'language_code' => :'String',
|
|
90
116
|
:'name' => :'String',
|
|
91
|
-
:'closed_captions' => :'
|
|
117
|
+
:'closed_captions' => :'Boolean',
|
|
92
118
|
:'passthrough' => :'String'
|
|
93
119
|
}
|
|
94
120
|
end
|
|
95
121
|
|
|
122
|
+
# List of attributes with nullable: true
|
|
123
|
+
def self.openapi_nullable
|
|
124
|
+
Set.new([
|
|
125
|
+
])
|
|
126
|
+
end
|
|
127
|
+
|
|
96
128
|
# Initializes the object
|
|
97
129
|
# @param [Hash] attributes Model attributes in the form of hash
|
|
98
130
|
def initialize(attributes = {})
|
|
99
|
-
|
|
131
|
+
if (!attributes.is_a?(Hash))
|
|
132
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::Track` initialize method"
|
|
133
|
+
end
|
|
100
134
|
|
|
101
|
-
# convert string to symbol for hash key
|
|
102
|
-
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
135
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
136
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
137
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
138
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::Track`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
139
|
+
end
|
|
140
|
+
h[k.to_sym] = v
|
|
141
|
+
}
|
|
103
142
|
|
|
104
|
-
if attributes.
|
|
143
|
+
if attributes.key?(:'id')
|
|
105
144
|
self.id = attributes[:'id']
|
|
106
145
|
end
|
|
107
146
|
|
|
108
|
-
if attributes.
|
|
147
|
+
if attributes.key?(:'type')
|
|
109
148
|
self.type = attributes[:'type']
|
|
110
149
|
end
|
|
111
150
|
|
|
112
|
-
if attributes.
|
|
151
|
+
if attributes.key?(:'duration')
|
|
113
152
|
self.duration = attributes[:'duration']
|
|
114
153
|
end
|
|
115
154
|
|
|
116
|
-
if attributes.
|
|
155
|
+
if attributes.key?(:'max_width')
|
|
117
156
|
self.max_width = attributes[:'max_width']
|
|
118
157
|
end
|
|
119
158
|
|
|
120
|
-
if attributes.
|
|
159
|
+
if attributes.key?(:'max_height')
|
|
121
160
|
self.max_height = attributes[:'max_height']
|
|
122
161
|
end
|
|
123
162
|
|
|
124
|
-
if attributes.
|
|
163
|
+
if attributes.key?(:'max_frame_rate')
|
|
125
164
|
self.max_frame_rate = attributes[:'max_frame_rate']
|
|
126
165
|
end
|
|
127
166
|
|
|
128
|
-
if attributes.
|
|
167
|
+
if attributes.key?(:'max_channels')
|
|
129
168
|
self.max_channels = attributes[:'max_channels']
|
|
130
169
|
end
|
|
131
170
|
|
|
132
|
-
if attributes.
|
|
171
|
+
if attributes.key?(:'max_channel_layout')
|
|
133
172
|
self.max_channel_layout = attributes[:'max_channel_layout']
|
|
134
173
|
end
|
|
135
174
|
|
|
136
|
-
if attributes.
|
|
175
|
+
if attributes.key?(:'text_type')
|
|
137
176
|
self.text_type = attributes[:'text_type']
|
|
138
177
|
end
|
|
139
178
|
|
|
140
|
-
if attributes.
|
|
179
|
+
if attributes.key?(:'language_code')
|
|
141
180
|
self.language_code = attributes[:'language_code']
|
|
142
181
|
end
|
|
143
182
|
|
|
144
|
-
if attributes.
|
|
183
|
+
if attributes.key?(:'name')
|
|
145
184
|
self.name = attributes[:'name']
|
|
146
185
|
end
|
|
147
186
|
|
|
148
|
-
if attributes.
|
|
187
|
+
if attributes.key?(:'closed_captions')
|
|
149
188
|
self.closed_captions = attributes[:'closed_captions']
|
|
150
189
|
end
|
|
151
190
|
|
|
152
|
-
if attributes.
|
|
191
|
+
if attributes.key?(:'passthrough')
|
|
153
192
|
self.passthrough = attributes[:'passthrough']
|
|
154
193
|
end
|
|
155
194
|
end
|
|
@@ -164,9 +203,11 @@ module MuxRuby
|
|
|
164
203
|
# Check to see if the all the properties in the model are valid
|
|
165
204
|
# @return true if the model is valid
|
|
166
205
|
def valid?
|
|
167
|
-
type_validator = EnumAttributeValidator.new('String', [
|
|
206
|
+
type_validator = EnumAttributeValidator.new('String', ["video", "audio", "text"])
|
|
168
207
|
return false unless type_validator.valid?(@type)
|
|
169
|
-
|
|
208
|
+
max_channel_layout_validator = EnumAttributeValidator.new('String', ["mono", "stereo", "5.2", "7.1"])
|
|
209
|
+
return false unless max_channel_layout_validator.valid?(@max_channel_layout)
|
|
210
|
+
text_type_validator = EnumAttributeValidator.new('String', ["subtitles"])
|
|
170
211
|
return false unless text_type_validator.valid?(@text_type)
|
|
171
212
|
true
|
|
172
213
|
end
|
|
@@ -174,19 +215,29 @@ module MuxRuby
|
|
|
174
215
|
# Custom attribute writer method checking allowed values (enum).
|
|
175
216
|
# @param [Object] type Object to be assigned
|
|
176
217
|
def type=(type)
|
|
177
|
-
validator = EnumAttributeValidator.new('String', [
|
|
218
|
+
validator = EnumAttributeValidator.new('String', ["video", "audio", "text"])
|
|
178
219
|
unless validator.valid?(type)
|
|
179
|
-
fail ArgumentError,
|
|
220
|
+
fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
|
|
180
221
|
end
|
|
181
222
|
@type = type
|
|
182
223
|
end
|
|
183
224
|
|
|
225
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
226
|
+
# @param [Object] max_channel_layout Object to be assigned
|
|
227
|
+
def max_channel_layout=(max_channel_layout)
|
|
228
|
+
validator = EnumAttributeValidator.new('String', ["mono", "stereo", "5.2", "7.1"])
|
|
229
|
+
unless validator.valid?(max_channel_layout)
|
|
230
|
+
fail ArgumentError, "invalid value for \"max_channel_layout\", must be one of #{validator.allowable_values}."
|
|
231
|
+
end
|
|
232
|
+
@max_channel_layout = max_channel_layout
|
|
233
|
+
end
|
|
234
|
+
|
|
184
235
|
# Custom attribute writer method checking allowed values (enum).
|
|
185
236
|
# @param [Object] text_type Object to be assigned
|
|
186
237
|
def text_type=(text_type)
|
|
187
|
-
validator = EnumAttributeValidator.new('String', [
|
|
238
|
+
validator = EnumAttributeValidator.new('String', ["subtitles"])
|
|
188
239
|
unless validator.valid?(text_type)
|
|
189
|
-
fail ArgumentError,
|
|
240
|
+
fail ArgumentError, "invalid value for \"text_type\", must be one of #{validator.allowable_values}."
|
|
190
241
|
end
|
|
191
242
|
@text_type = text_type
|
|
192
243
|
end
|
|
@@ -218,7 +269,7 @@ module MuxRuby
|
|
|
218
269
|
end
|
|
219
270
|
|
|
220
271
|
# Calculates hash code according to all attributes.
|
|
221
|
-
# @return [
|
|
272
|
+
# @return [Integer] Hash code
|
|
222
273
|
def hash
|
|
223
274
|
[id, type, duration, max_width, max_height, max_frame_rate, max_channels, max_channel_layout, text_type, language_code, name, closed_captions, passthrough].hash
|
|
224
275
|
end
|
|
@@ -236,7 +287,9 @@ module MuxRuby
|
|
|
236
287
|
def build_from_hash(attributes)
|
|
237
288
|
return nil unless attributes.is_a?(Hash)
|
|
238
289
|
self.class.openapi_types.each_pair do |key, type|
|
|
239
|
-
if
|
|
290
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
|
291
|
+
self.send("#{key}=", nil)
|
|
292
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
240
293
|
# check to ensure the input is an array given that the attribute
|
|
241
294
|
# is documented as an array but the input is not
|
|
242
295
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
@@ -244,7 +297,7 @@ module MuxRuby
|
|
|
244
297
|
end
|
|
245
298
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
246
299
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
247
|
-
end
|
|
300
|
+
end
|
|
248
301
|
end
|
|
249
302
|
|
|
250
303
|
self
|
|
@@ -256,8 +309,8 @@ module MuxRuby
|
|
|
256
309
|
# @return [Object] Deserialized data
|
|
257
310
|
def _deserialize(type, value)
|
|
258
311
|
case type.to_sym
|
|
259
|
-
when :
|
|
260
|
-
|
|
312
|
+
when :Time
|
|
313
|
+
Time.parse(value)
|
|
261
314
|
when :Date
|
|
262
315
|
Date.parse(value)
|
|
263
316
|
when :String
|
|
@@ -266,7 +319,7 @@ module MuxRuby
|
|
|
266
319
|
value.to_i
|
|
267
320
|
when :Float
|
|
268
321
|
value.to_f
|
|
269
|
-
when :
|
|
322
|
+
when :Boolean
|
|
270
323
|
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
271
324
|
true
|
|
272
325
|
else
|
|
@@ -287,7 +340,9 @@ module MuxRuby
|
|
|
287
340
|
end
|
|
288
341
|
end
|
|
289
342
|
else # model
|
|
290
|
-
|
|
343
|
+
# models (e.g. Pet) or oneOf
|
|
344
|
+
klass = MuxRuby.const_get(type)
|
|
345
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
291
346
|
end
|
|
292
347
|
end
|
|
293
348
|
|
|
@@ -309,7 +364,11 @@ module MuxRuby
|
|
|
309
364
|
hash = {}
|
|
310
365
|
self.class.attribute_map.each_pair do |attr, param|
|
|
311
366
|
value = self.send(attr)
|
|
312
|
-
|
|
367
|
+
if value.nil?
|
|
368
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
369
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
370
|
+
end
|
|
371
|
+
|
|
313
372
|
hash[param] = _to_hash(value)
|
|
314
373
|
end
|
|
315
374
|
hash
|