kaltura-client 1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. checksums.yaml +7 -0
  2. data/README +21 -0
  3. data/Rakefile +19 -0
  4. data/agpl.txt +674 -0
  5. data/kaltura.yml +7 -0
  6. data/lib/kaltura.rb +31 -0
  7. data/lib/kaltura_client.rb +15649 -0
  8. data/lib/kaltura_client_base.rb +432 -0
  9. data/lib/kaltura_plugins/kaltura_abc_screeners_watermark_access_control_client_plugin.rb +37 -0
  10. data/lib/kaltura_plugins/kaltura_ad_cue_point_client_plugin.rb +110 -0
  11. data/lib/kaltura_plugins/kaltura_annotation_client_plugin.rb +239 -0
  12. data/lib/kaltura_plugins/kaltura_aspera_client_plugin.rb +61 -0
  13. data/lib/kaltura_plugins/kaltura_attachment_client_plugin.rb +227 -0
  14. data/lib/kaltura_plugins/kaltura_audit_client_plugin.rb +349 -0
  15. data/lib/kaltura_plugins/kaltura_bulk_upload_client_plugin.rb +116 -0
  16. data/lib/kaltura_plugins/kaltura_bulk_upload_csv_client_plugin.rb +55 -0
  17. data/lib/kaltura_plugins/kaltura_bulk_upload_filter_client_plugin.rb +58 -0
  18. data/lib/kaltura_plugins/kaltura_bulk_upload_xml_client_plugin.rb +40 -0
  19. data/lib/kaltura_plugins/kaltura_caption_client_plugin.rb +406 -0
  20. data/lib/kaltura_plugins/kaltura_caption_search_client_plugin.rb +138 -0
  21. data/lib/kaltura_plugins/kaltura_code_cue_point_client_plugin.rb +99 -0
  22. data/lib/kaltura_plugins/kaltura_content_distribution_client_plugin.rb +1725 -0
  23. data/lib/kaltura_plugins/kaltura_cue_point_client_plugin.rb +312 -0
  24. data/lib/kaltura_plugins/kaltura_document_client_plugin.rb +522 -0
  25. data/lib/kaltura_plugins/kaltura_drm_client_plugin.rb +401 -0
  26. data/lib/kaltura_plugins/kaltura_drop_folder_client_plugin.rb +827 -0
  27. data/lib/kaltura_plugins/kaltura_drop_folder_xml_bulk_upload_client_plugin.rb +39 -0
  28. data/lib/kaltura_plugins/kaltura_email_notification_client_plugin.rb +273 -0
  29. data/lib/kaltura_plugins/kaltura_event_cue_point_client_plugin.rb +67 -0
  30. data/lib/kaltura_plugins/kaltura_event_notification_client_plugin.rb +415 -0
  31. data/lib/kaltura_plugins/kaltura_external_media_client_plugin.rb +203 -0
  32. data/lib/kaltura_plugins/kaltura_file_sync_client_plugin.rb +157 -0
  33. data/lib/kaltura_plugins/kaltura_http_notification_client_plugin.rb +309 -0
  34. data/lib/kaltura_plugins/kaltura_kontiki_client_plugin.rb +72 -0
  35. data/lib/kaltura_plugins/kaltura_like_client_plugin.rb +82 -0
  36. data/lib/kaltura_plugins/kaltura_metadata_client_plugin.rb +785 -0
  37. data/lib/kaltura_plugins/kaltura_multi_centers_client_plugin.rb +45 -0
  38. data/lib/kaltura_plugins/kaltura_play_ready_client_plugin.rb +347 -0
  39. data/lib/kaltura_plugins/kaltura_scheduled_task_client_plugin.rb +347 -0
  40. data/lib/kaltura_plugins/kaltura_scheduled_task_event_notification_client_plugin.rb +45 -0
  41. data/lib/kaltura_plugins/kaltura_scheduled_task_metadata_client_plugin.rb +51 -0
  42. data/lib/kaltura_plugins/kaltura_short_link_client_plugin.rb +231 -0
  43. data/lib/kaltura_plugins/kaltura_tag_search_client_plugin.rb +145 -0
  44. data/lib/kaltura_plugins/kaltura_thumb_cue_point_client_plugin.rb +105 -0
  45. data/lib/kaltura_plugins/kaltura_var_console_client_plugin.rb +238 -0
  46. data/lib/kaltura_plugins/kaltura_velocix_client_plugin.rb +40 -0
  47. data/lib/kaltura_plugins/kaltura_virus_scan_client_plugin.rb +263 -0
  48. data/lib/kaltura_plugins/kaltura_webex_drop_folder_client_plugin.rb +111 -0
  49. data/lib/kaltura_plugins/kaltura_widevine_client_plugin.rb +195 -0
  50. data/test/access_control_service_test.rb +75 -0
  51. data/test/base_entry_service_test.rb +267 -0
  52. data/test/configuration_test.rb +178 -0
  53. data/test/cue_point_service_test.rb +67 -0
  54. data/test/data_service_test.rb +76 -0
  55. data/test/document_service_test.rb +41 -0
  56. data/test/media/test.mov +0 -0
  57. data/test/media/test.pdf +0 -0
  58. data/test/media/test.png +0 -0
  59. data/test/media/test.swf +0 -0
  60. data/test/media/test.wmv +0 -0
  61. data/test/media_service_test.rb +294 -0
  62. data/test/metadata_profile_service_test.rb +63 -0
  63. data/test/test_helper.rb +59 -0
  64. metadata +132 -0
@@ -0,0 +1,105 @@
1
+ # ===================================================================================================
2
+ # _ __ _ _
3
+ # | |/ /__ _| | |_ _ _ _ _ __ _
4
+ # | ' </ _` | | _| || | '_/ _` |
5
+ # |_|\_\__,_|_|\__|\_,_|_| \__,_|
6
+ #
7
+ # This file is part of the Kaltura Collaborative Media Suite which allows users
8
+ # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
+ # text.
10
+ #
11
+ # Copyright (C) 2006-2011 Kaltura Inc.
12
+ #
13
+ # This program is free software: you can redistribute it and/or modify
14
+ # it under the terms of the GNU Affero General Public License as
15
+ # published by the Free Software Foundation, either version 3 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # This program is distributed in the hope that it will be useful,
19
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
+ # GNU Affero General Public License for more details.
22
+ #
23
+ # You should have received a copy of the GNU Affero General Public License
24
+ # along with this program. If not, see <http:#www.gnu.org/licenses/>.
25
+ #
26
+ # @ignore
27
+ # ===================================================================================================
28
+ require 'kaltura_client.rb'
29
+ require File.dirname(__FILE__) + '/kaltura_cue_point_client_plugin.rb'
30
+
31
+ module Kaltura
32
+
33
+ class KalturaThumbCuePointOrderBy
34
+ CREATED_AT_ASC = "+createdAt"
35
+ PARTNER_SORT_VALUE_ASC = "+partnerSortValue"
36
+ START_TIME_ASC = "+startTime"
37
+ TRIGGERED_AT_ASC = "+triggeredAt"
38
+ UPDATED_AT_ASC = "+updatedAt"
39
+ CREATED_AT_DESC = "-createdAt"
40
+ PARTNER_SORT_VALUE_DESC = "-partnerSortValue"
41
+ START_TIME_DESC = "-startTime"
42
+ TRIGGERED_AT_DESC = "-triggeredAt"
43
+ UPDATED_AT_DESC = "-updatedAt"
44
+ end
45
+
46
+ class KalturaTimedThumbAssetOrderBy
47
+ CREATED_AT_ASC = "+createdAt"
48
+ DELETED_AT_ASC = "+deletedAt"
49
+ SIZE_ASC = "+size"
50
+ UPDATED_AT_ASC = "+updatedAt"
51
+ CREATED_AT_DESC = "-createdAt"
52
+ DELETED_AT_DESC = "-deletedAt"
53
+ SIZE_DESC = "-size"
54
+ UPDATED_AT_DESC = "-updatedAt"
55
+ end
56
+
57
+ class KalturaThumbCuePoint < KalturaCuePoint
58
+ attr_accessor :asset_id
59
+ attr_accessor :description
60
+ attr_accessor :title
61
+ # The sub type of the ThumbCuePoint
62
+ #
63
+ attr_accessor :sub_type
64
+
65
+ def sub_type=(val)
66
+ @sub_type = val.to_i
67
+ end
68
+ end
69
+
70
+ class KalturaTimedThumbAsset < KalturaThumbAsset
71
+ # Associated thumb cue point ID
72
+ #
73
+ attr_accessor :cue_point_id
74
+
75
+ end
76
+
77
+ class KalturaThumbCuePointBaseFilter < KalturaCuePointFilter
78
+ attr_accessor :description_like
79
+ attr_accessor :description_multi_like_or
80
+ attr_accessor :description_multi_like_and
81
+ attr_accessor :title_like
82
+ attr_accessor :title_multi_like_or
83
+ attr_accessor :title_multi_like_and
84
+ attr_accessor :sub_type_equal
85
+ attr_accessor :sub_type_in
86
+
87
+ def sub_type_equal=(val)
88
+ @sub_type_equal = val.to_i
89
+ end
90
+ end
91
+
92
+ class KalturaThumbCuePointFilter < KalturaThumbCuePointBaseFilter
93
+
94
+ end
95
+
96
+ class KalturaTimedThumbAssetBaseFilter < KalturaThumbAssetFilter
97
+
98
+ end
99
+
100
+ class KalturaTimedThumbAssetFilter < KalturaTimedThumbAssetBaseFilter
101
+
102
+ end
103
+
104
+
105
+ end
@@ -0,0 +1,238 @@
1
+ # ===================================================================================================
2
+ # _ __ _ _
3
+ # | |/ /__ _| | |_ _ _ _ _ __ _
4
+ # | ' </ _` | | _| || | '_/ _` |
5
+ # |_|\_\__,_|_|\__|\_,_|_| \__,_|
6
+ #
7
+ # This file is part of the Kaltura Collaborative Media Suite which allows users
8
+ # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
+ # text.
10
+ #
11
+ # Copyright (C) 2006-2011 Kaltura Inc.
12
+ #
13
+ # This program is free software: you can redistribute it and/or modify
14
+ # it under the terms of the GNU Affero General Public License as
15
+ # published by the Free Software Foundation, either version 3 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # This program is distributed in the hope that it will be useful,
19
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
+ # GNU Affero General Public License for more details.
22
+ #
23
+ # You should have received a copy of the GNU Affero General Public License
24
+ # along with this program. If not, see <http:#www.gnu.org/licenses/>.
25
+ #
26
+ # @ignore
27
+ # ===================================================================================================
28
+ require 'kaltura_client.rb'
29
+
30
+ module Kaltura
31
+
32
+ class KalturaVarPartnerUsageItem < KalturaObjectBase
33
+ # Partner ID
34
+ #
35
+ attr_accessor :partner_id
36
+ # Partner name
37
+ #
38
+ attr_accessor :partner_name
39
+ # Partner status
40
+ #
41
+ attr_accessor :partner_status
42
+ # Partner package
43
+ #
44
+ attr_accessor :partner_package
45
+ # Partner creation date (Unix timestamp)
46
+ #
47
+ attr_accessor :partner_created_at
48
+ # Number of player loads in the specific date range
49
+ #
50
+ attr_accessor :views
51
+ # Number of plays in the specific date range
52
+ #
53
+ attr_accessor :plays
54
+ # Number of new entries created during specific date range
55
+ #
56
+ attr_accessor :entries_count
57
+ # Total number of entries
58
+ #
59
+ attr_accessor :total_entries_count
60
+ # Number of new video entries created during specific date range
61
+ #
62
+ attr_accessor :video_entries_count
63
+ # Number of new image entries created during specific date range
64
+ #
65
+ attr_accessor :image_entries_count
66
+ # Number of new audio entries created during specific date range
67
+ #
68
+ attr_accessor :audio_entries_count
69
+ # Number of new mix entries created during specific date range
70
+ #
71
+ attr_accessor :mix_entries_count
72
+ # The total bandwidth usage during the given date range (in MB)
73
+ #
74
+ attr_accessor :bandwidth
75
+ # The total storage consumption (in MB)
76
+ #
77
+ attr_accessor :total_storage
78
+ # The added storage consumption (new uploads) during the given date range (in MB)
79
+ #
80
+ attr_accessor :storage
81
+ # The deleted storage consumption (new uploads) during the given date range (in MB)
82
+ #
83
+ attr_accessor :deleted_storage
84
+ # The peak amount of storage consumption during the given date range for the specific publisher
85
+ #
86
+ attr_accessor :peak_storage
87
+ # The average amount of storage consumption during the given date range for the specific publisher
88
+ #
89
+ attr_accessor :avg_storage
90
+ # The combined amount of bandwidth and storage consumed during the given date range for the specific publisher
91
+ #
92
+ attr_accessor :combined_storage_bandwidth
93
+ # Amount of transcoding usage in MB
94
+ #
95
+ attr_accessor :transcoding_usage
96
+ # TGhe date at which the report was taken - Unix Timestamp
97
+ #
98
+ attr_accessor :date_id
99
+
100
+ def partner_id=(val)
101
+ @partner_id = val.to_i
102
+ end
103
+ def partner_status=(val)
104
+ @partner_status = val.to_i
105
+ end
106
+ def partner_package=(val)
107
+ @partner_package = val.to_i
108
+ end
109
+ def partner_created_at=(val)
110
+ @partner_created_at = val.to_i
111
+ end
112
+ def views=(val)
113
+ @views = val.to_i
114
+ end
115
+ def plays=(val)
116
+ @plays = val.to_i
117
+ end
118
+ def entries_count=(val)
119
+ @entries_count = val.to_i
120
+ end
121
+ def total_entries_count=(val)
122
+ @total_entries_count = val.to_i
123
+ end
124
+ def video_entries_count=(val)
125
+ @video_entries_count = val.to_i
126
+ end
127
+ def image_entries_count=(val)
128
+ @image_entries_count = val.to_i
129
+ end
130
+ def audio_entries_count=(val)
131
+ @audio_entries_count = val.to_i
132
+ end
133
+ def mix_entries_count=(val)
134
+ @mix_entries_count = val.to_i
135
+ end
136
+ def bandwidth=(val)
137
+ @bandwidth = val.to_f
138
+ end
139
+ def total_storage=(val)
140
+ @total_storage = val.to_f
141
+ end
142
+ def storage=(val)
143
+ @storage = val.to_f
144
+ end
145
+ def deleted_storage=(val)
146
+ @deleted_storage = val.to_f
147
+ end
148
+ def peak_storage=(val)
149
+ @peak_storage = val.to_f
150
+ end
151
+ def avg_storage=(val)
152
+ @avg_storage = val.to_f
153
+ end
154
+ def combined_storage_bandwidth=(val)
155
+ @combined_storage_bandwidth = val.to_f
156
+ end
157
+ def transcoding_usage=(val)
158
+ @transcoding_usage = val.to_f
159
+ end
160
+ end
161
+
162
+ class KalturaPartnerUsageListResponse < KalturaObjectBase
163
+ attr_accessor :total
164
+ attr_accessor :objects
165
+ attr_accessor :total_count
166
+
167
+ def total_count=(val)
168
+ @total_count = val.to_i
169
+ end
170
+ end
171
+
172
+ class KalturaVarPartnerUsageTotalItem < KalturaVarPartnerUsageItem
173
+
174
+ end
175
+
176
+ class KalturaVarConsolePartnerFilter < KalturaPartnerFilter
177
+ # Eq filter for the partner's group type
178
+ #
179
+ attr_accessor :group_type_eq
180
+ # In filter for the partner's group type
181
+ #
182
+ attr_accessor :group_type_in
183
+ # Filter for partner permissions- filter contains comma-separated string of permission names which the returned partners should have.
184
+ #
185
+ attr_accessor :partner_permissions_exist
186
+
187
+ def group_type_eq=(val)
188
+ @group_type_eq = val.to_i
189
+ end
190
+ end
191
+
192
+
193
+ # Utility service for the Multi-publishers console
194
+ #
195
+ class KalturaVarConsoleService < KalturaServiceBase
196
+ def initialize(client)
197
+ super(client)
198
+ end
199
+
200
+ # Function which calulates partner usage of a group of a VAR's sub-publishers
201
+ #
202
+ def get_partner_usage(partner_filter=KalturaNotImplemented, usage_filter=KalturaNotImplemented, pager=KalturaNotImplemented)
203
+ kparams = {}
204
+ client.add_param(kparams, 'partnerFilter', partner_filter);
205
+ client.add_param(kparams, 'usageFilter', usage_filter);
206
+ client.add_param(kparams, 'pager', pager);
207
+ client.queue_service_action_call('varconsole_varconsole', 'getPartnerUsage', kparams);
208
+ if (client.is_multirequest)
209
+ return nil;
210
+ end
211
+ return client.do_queue();
212
+ end
213
+
214
+ # Function to change a sub-publisher's status
215
+ #
216
+ def update_status(id, status)
217
+ kparams = {}
218
+ client.add_param(kparams, 'id', id);
219
+ client.add_param(kparams, 'status', status);
220
+ client.queue_service_action_call('varconsole_varconsole', 'updateStatus', kparams);
221
+ if (client.is_multirequest)
222
+ return nil;
223
+ end
224
+ return client.do_queue();
225
+ end
226
+ end
227
+
228
+ class KalturaClient < KalturaClientBase
229
+ attr_reader :var_console_service
230
+ def var_console_service
231
+ if (@var_console_service == nil)
232
+ @var_console_service = KalturaVarConsoleService.new(self)
233
+ end
234
+ return @var_console_service
235
+ end
236
+ end
237
+
238
+ end
@@ -0,0 +1,40 @@
1
+ # ===================================================================================================
2
+ # _ __ _ _
3
+ # | |/ /__ _| | |_ _ _ _ _ __ _
4
+ # | ' </ _` | | _| || | '_/ _` |
5
+ # |_|\_\__,_|_|\__|\_,_|_| \__,_|
6
+ #
7
+ # This file is part of the Kaltura Collaborative Media Suite which allows users
8
+ # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
+ # text.
10
+ #
11
+ # Copyright (C) 2006-2011 Kaltura Inc.
12
+ #
13
+ # This program is free software: you can redistribute it and/or modify
14
+ # it under the terms of the GNU Affero General Public License as
15
+ # published by the Free Software Foundation, either version 3 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # This program is distributed in the hope that it will be useful,
19
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
+ # GNU Affero General Public License for more details.
22
+ #
23
+ # You should have received a copy of the GNU Affero General Public License
24
+ # along with this program. If not, see <http:#www.gnu.org/licenses/>.
25
+ #
26
+ # @ignore
27
+ # ===================================================================================================
28
+ require 'kaltura_client.rb'
29
+
30
+ module Kaltura
31
+
32
+ class KalturaVelocixProvisionJobData < KalturaProvisionJobData
33
+ attr_accessor :provisioning_params
34
+ attr_accessor :user_name
35
+ attr_accessor :password
36
+
37
+ end
38
+
39
+
40
+ end
@@ -0,0 +1,263 @@
1
+ # ===================================================================================================
2
+ # _ __ _ _
3
+ # | |/ /__ _| | |_ _ _ _ _ __ _
4
+ # | ' </ _` | | _| || | '_/ _` |
5
+ # |_|\_\__,_|_|\__|\_,_|_| \__,_|
6
+ #
7
+ # This file is part of the Kaltura Collaborative Media Suite which allows users
8
+ # to do with audio, video, and animation what Wiki platfroms allow them to do with
9
+ # text.
10
+ #
11
+ # Copyright (C) 2006-2011 Kaltura Inc.
12
+ #
13
+ # This program is free software: you can redistribute it and/or modify
14
+ # it under the terms of the GNU Affero General Public License as
15
+ # published by the Free Software Foundation, either version 3 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # This program is distributed in the hope that it will be useful,
19
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
+ # GNU Affero General Public License for more details.
22
+ #
23
+ # You should have received a copy of the GNU Affero General Public License
24
+ # along with this program. If not, see <http:#www.gnu.org/licenses/>.
25
+ #
26
+ # @ignore
27
+ # ===================================================================================================
28
+ require 'kaltura_client.rb'
29
+
30
+ module Kaltura
31
+
32
+ class KalturaVirusFoundAction
33
+ NONE = 0
34
+ DELETE = 1
35
+ CLEAN_NONE = 2
36
+ CLEAN_DELETE = 3
37
+ end
38
+
39
+ class KalturaVirusScanJobResult
40
+ SCAN_ERROR = 1
41
+ FILE_IS_CLEAN = 2
42
+ FILE_WAS_CLEANED = 3
43
+ FILE_INFECTED = 4
44
+ end
45
+
46
+ class KalturaVirusScanProfileStatus
47
+ DISABLED = 1
48
+ ENABLED = 2
49
+ DELETED = 3
50
+ end
51
+
52
+ class KalturaVirusScanEngineType
53
+ CLAMAV_SCAN_ENGINE = "clamAVScanEngine.ClamAV"
54
+ SYMANTEC_SCAN_DIRECT_ENGINE = "symantecScanEngine.SymantecScanDirectEngine"
55
+ SYMANTEC_SCAN_ENGINE = "symantecScanEngine.SymantecScanEngine"
56
+ SYMANTEC_SCAN_JAVA_ENGINE = "symantecScanEngine.SymantecScanJavaEngine"
57
+ end
58
+
59
+ class KalturaVirusScanProfileOrderBy
60
+ CREATED_AT_ASC = "+createdAt"
61
+ UPDATED_AT_ASC = "+updatedAt"
62
+ CREATED_AT_DESC = "-createdAt"
63
+ UPDATED_AT_DESC = "-updatedAt"
64
+ end
65
+
66
+ class KalturaVirusScanProfile < KalturaObjectBase
67
+ attr_accessor :id
68
+ attr_accessor :created_at
69
+ attr_accessor :updated_at
70
+ attr_accessor :partner_id
71
+ attr_accessor :name
72
+ attr_accessor :status
73
+ attr_accessor :engine_type
74
+ attr_accessor :entry_filter
75
+ attr_accessor :action_if_infected
76
+
77
+ def id=(val)
78
+ @id = val.to_i
79
+ end
80
+ def created_at=(val)
81
+ @created_at = val.to_i
82
+ end
83
+ def updated_at=(val)
84
+ @updated_at = val.to_i
85
+ end
86
+ def partner_id=(val)
87
+ @partner_id = val.to_i
88
+ end
89
+ def status=(val)
90
+ @status = val.to_i
91
+ end
92
+ def action_if_infected=(val)
93
+ @action_if_infected = val.to_i
94
+ end
95
+ end
96
+
97
+ class KalturaVirusScanProfileListResponse < KalturaObjectBase
98
+ attr_accessor :objects
99
+ attr_accessor :total_count
100
+
101
+ def total_count=(val)
102
+ @total_count = val.to_i
103
+ end
104
+ end
105
+
106
+ class KalturaParseCaptionAssetJobData < KalturaJobData
107
+ attr_accessor :caption_asset_id
108
+
109
+ end
110
+
111
+ class KalturaVirusScanJobData < KalturaJobData
112
+ attr_accessor :src_file_path
113
+ attr_accessor :flavor_asset_id
114
+ attr_accessor :scan_result
115
+ attr_accessor :virus_found_action
116
+
117
+ def scan_result=(val)
118
+ @scan_result = val.to_i
119
+ end
120
+ def virus_found_action=(val)
121
+ @virus_found_action = val.to_i
122
+ end
123
+ end
124
+
125
+ class KalturaVirusScanProfileBaseFilter < KalturaFilter
126
+ attr_accessor :id_equal
127
+ attr_accessor :id_in
128
+ attr_accessor :created_at_greater_than_or_equal
129
+ attr_accessor :created_at_less_than_or_equal
130
+ attr_accessor :updated_at_greater_than_or_equal
131
+ attr_accessor :updated_at_less_than_or_equal
132
+ attr_accessor :partner_id_equal
133
+ attr_accessor :partner_id_in
134
+ attr_accessor :name_equal
135
+ attr_accessor :name_like
136
+ attr_accessor :status_equal
137
+ attr_accessor :status_in
138
+ attr_accessor :engine_type_equal
139
+ attr_accessor :engine_type_in
140
+
141
+ def id_equal=(val)
142
+ @id_equal = val.to_i
143
+ end
144
+ def created_at_greater_than_or_equal=(val)
145
+ @created_at_greater_than_or_equal = val.to_i
146
+ end
147
+ def created_at_less_than_or_equal=(val)
148
+ @created_at_less_than_or_equal = val.to_i
149
+ end
150
+ def updated_at_greater_than_or_equal=(val)
151
+ @updated_at_greater_than_or_equal = val.to_i
152
+ end
153
+ def updated_at_less_than_or_equal=(val)
154
+ @updated_at_less_than_or_equal = val.to_i
155
+ end
156
+ def partner_id_equal=(val)
157
+ @partner_id_equal = val.to_i
158
+ end
159
+ def status_equal=(val)
160
+ @status_equal = val.to_i
161
+ end
162
+ end
163
+
164
+ class KalturaVirusScanProfileFilter < KalturaVirusScanProfileBaseFilter
165
+
166
+ end
167
+
168
+
169
+ # Virus scan profile service
170
+ #
171
+ class KalturaVirusScanProfileService < KalturaServiceBase
172
+ def initialize(client)
173
+ super(client)
174
+ end
175
+
176
+ # List virus scan profile objects by filter and pager
177
+ #
178
+ def list(filter=KalturaNotImplemented, pager=KalturaNotImplemented)
179
+ kparams = {}
180
+ client.add_param(kparams, 'filter', filter);
181
+ client.add_param(kparams, 'pager', pager);
182
+ client.queue_service_action_call('virusscan_virusscanprofile', 'list', kparams);
183
+ if (client.is_multirequest)
184
+ return nil;
185
+ end
186
+ return client.do_queue();
187
+ end
188
+
189
+ # Allows you to add an virus scan profile object and virus scan profile content associated with Kaltura object
190
+ #
191
+ def add(virus_scan_profile)
192
+ kparams = {}
193
+ client.add_param(kparams, 'virusScanProfile', virus_scan_profile);
194
+ client.queue_service_action_call('virusscan_virusscanprofile', 'add', kparams);
195
+ if (client.is_multirequest)
196
+ return nil;
197
+ end
198
+ return client.do_queue();
199
+ end
200
+
201
+ # Retrieve an virus scan profile object by id
202
+ #
203
+ def get(virus_scan_profile_id)
204
+ kparams = {}
205
+ client.add_param(kparams, 'virusScanProfileId', virus_scan_profile_id);
206
+ client.queue_service_action_call('virusscan_virusscanprofile', 'get', kparams);
207
+ if (client.is_multirequest)
208
+ return nil;
209
+ end
210
+ return client.do_queue();
211
+ end
212
+
213
+ # Update exisitng virus scan profile, it is possible to update the virus scan profile id too
214
+ #
215
+ def update(virus_scan_profile_id, virus_scan_profile)
216
+ kparams = {}
217
+ client.add_param(kparams, 'virusScanProfileId', virus_scan_profile_id);
218
+ # Id
219
+ client.add_param(kparams, 'virusScanProfile', virus_scan_profile);
220
+ client.queue_service_action_call('virusscan_virusscanprofile', 'update', kparams);
221
+ if (client.is_multirequest)
222
+ return nil;
223
+ end
224
+ return client.do_queue();
225
+ end
226
+
227
+ # Mark the virus scan profile as deleted
228
+ #
229
+ def delete(virus_scan_profile_id)
230
+ kparams = {}
231
+ client.add_param(kparams, 'virusScanProfileId', virus_scan_profile_id);
232
+ client.queue_service_action_call('virusscan_virusscanprofile', 'delete', kparams);
233
+ if (client.is_multirequest)
234
+ return nil;
235
+ end
236
+ return client.do_queue();
237
+ end
238
+
239
+ # Scan flavor asset according to virus scan profile
240
+ #
241
+ def scan(flavor_asset_id, virus_scan_profile_id=KalturaNotImplemented)
242
+ kparams = {}
243
+ client.add_param(kparams, 'flavorAssetId', flavor_asset_id);
244
+ client.add_param(kparams, 'virusScanProfileId', virus_scan_profile_id);
245
+ client.queue_service_action_call('virusscan_virusscanprofile', 'scan', kparams);
246
+ if (client.is_multirequest)
247
+ return nil;
248
+ end
249
+ return client.do_queue();
250
+ end
251
+ end
252
+
253
+ class KalturaClient < KalturaClientBase
254
+ attr_reader :virus_scan_profile_service
255
+ def virus_scan_profile_service
256
+ if (@virus_scan_profile_service == nil)
257
+ @virus_scan_profile_service = KalturaVirusScanProfileService.new(self)
258
+ end
259
+ return @virus_scan_profile_service
260
+ end
261
+ end
262
+
263
+ end