ovirt-engine-sdk 4.2.0.alpha4 → 4.2.0.alpha5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 230614a52420a3f291acff2868274b00220cfe6a
4
- data.tar.gz: 4480ebcee091051f2acaf8dbca74e9d3903e4196
3
+ metadata.gz: 7f0298f105fe0d7aa9600b45168f07acdb64d873
4
+ data.tar.gz: d337cd19f0b89175915a6ba3e33758d399c8682c
5
5
  SHA512:
6
- metadata.gz: ae02f9d1e89464b19f72438d726f4d30a416fe30d18db16fc3f4fec2f08230f7ba3e64326d2e17a638b23de0ce0405725121793c3736385d30b34b59e2ebb5ea
7
- data.tar.gz: d3e7722a5ecba2632d1f8259f43d61691463e63be959c8f66bb1289f4a61cf3dc1a774aa0dc2a0df13bd8376a37bb01ae7210860027e9f0d769cd6eff412cf40
6
+ metadata.gz: 5b7dfc32b268afc784640669f1c094c10721b1f5756e9d973783b3bfc0b655901e13d098742a402abe15a212e96f7da80702137ee9bdf87d2a4720f55bc5aece
7
+ data.tar.gz: aa05e77fae64684a463350641d5abe8b0c11a6bd56a5194f43ff947e3fc4524e06950f2b28e59015562859254d5850ce23ddf240581adf2ab33b8041772b8746
data/CHANGES.adoc CHANGED
@@ -2,6 +2,41 @@
2
2
 
3
3
  This document describes the relevant changes between releases of the SDK.
4
4
 
5
+ == 4.2.0-alpha5 / Nov 8 2017
6
+
7
+ Update to model 4.2.24:
8
+
9
+ * Add the `follow` parameter to all the `Get` and `List` operations.
10
+
11
+ * Add the `force` parameter to the operation that puts a storage domain
12
+ into maintenance mode https://bugzilla.redhat.com/1321585[#1321585].
13
+
14
+ * Deprecate the _OpenStack_ network provider `pluginType` attribute,
15
+ replacing it with `externalPluginType`.
16
+
17
+ * Add `quota` and `diskProfile` parameters to the operations that move
18
+ and copy disks https://bugzilla.redhat.com/1496704[#1496704].
19
+
20
+ * Add `authenticatedUser` and `effectiveUser` links to the `Api` type
21
+ https://bugzilla.redhat.com/1472418[#1472418].
22
+
23
+ New features:
24
+
25
+ * Add support for cookies.
26
+
27
+ * Add `connect_timeout` parameter
28
+ https://bugzilla.redhat.com/1508944[#1508944].
29
+
30
+ Bug fixes:
31
+
32
+ * Check the types of the `HttpClient` constructor parameters.
33
+
34
+ * Require `redhat-rpm-config` for building
35
+ https://bugzilla.redhat.com/1505427[#1505427].
36
+
37
+ * Don't send `Expect: 100-continue`
38
+ https://bugzilla.redhat.com/1509910[#1509910].
39
+
5
40
  == 4.2.0-alpha4 / Oct 23 2017
6
41
 
7
42
  Update to model 4.2.23:
data/README.adoc CHANGED
@@ -41,16 +41,41 @@ CentOS:
41
41
  gcc \
42
42
  libcurl-devel \
43
43
  libxml2-devel \
44
- ruby-devel
44
+ redhat-rpm-config \
45
+ ruby \
46
+ ruby-devel \
47
+ rubygems \
48
+ rubygems-devel
49
+
50
+ NOTE: The installation of the `ruby`, `ruby-devel`, `rubygems` and
51
+ `rubygems-devel` packages is necessary if you are going to use the Ruby
52
+ version included in your distribution. If you are using tools like
53
+ `rbenv` or `rvm` then this is not necessary.
45
54
 
46
55
  If you are using distributions like Debian, or Ubuntu:
47
56
 
48
57
  # apt-get --assume-yes install \
49
58
  gcc \
59
+ libcurl4-openssl-dev \
50
60
  libxml2-dev \
51
- libcurl-dev \
61
+ ruby \
52
62
  ruby-dev
53
63
 
64
+ NOTE: The installation of the `ruby` and `ruby-dev` packages is
65
+ necessary if you are going to use the Ruby version included in your
66
+ distribution. If you are using tools like `rbenv` or `rvm` then this is
67
+ not necessary.
68
+
69
+ Some Linux distributions, like Debian and Ubuntu, provide multiple
70
+ versions of `libcurl`, compiled with support for different TLS
71
+ libraries: OpenSSL, NSS and GnuTLS. Currently the SDK only supports
72
+ OpenSSL, so make sure that you have that version of `libcurl` installed.
73
+ For example, in Ubuntu 16.04 if you have the NSS version installed, you
74
+ will have to remove it and then install the OpenSSL version:
75
+
76
+ # apt-get --assume-yes remove libcurl4-nss-dev
77
+ # apt-get --assume-yes install libcurl4-openssl-dev
78
+
54
79
  NOTE: The examples above use the `dnf` command, which is the default in
55
80
  Fedora 24. In CentOS 7 you may need to use the `yum` command, as `dnf`
56
81
  is optional.
@@ -50,6 +50,7 @@ static VALUE PROXY_PASSWORD_SYMBOL;
50
50
  static VALUE PROXY_URL_SYMBOL;
51
51
  static VALUE PROXY_USERNAME_SYMBOL;
52
52
  static VALUE TIMEOUT_SYMBOL;
53
+ static VALUE CONNECT_TIMEOUT_SYMBOL;
53
54
  static VALUE COOKIES_SYMBOL;
54
55
 
55
56
  /* Method identifiers: */
@@ -201,6 +202,7 @@ static VALUE ov_http_client_alloc(VALUE klass) {
201
202
  ptr->proxy_username = NULL;
202
203
  ptr->proxy_password = NULL;
203
204
  ptr->timeout = 0;
205
+ ptr->connect_timeout = 0;
204
206
  ptr->cookies = NULL;
205
207
  return TypedData_Wrap_Struct(klass, &ov_http_client_type, ptr);
206
208
  }
@@ -512,6 +514,16 @@ static VALUE ov_http_client_initialize(int argc, VALUE* argv, VALUE self) {
512
514
  ptr->timeout = NUM2INT(opt);
513
515
  }
514
516
 
517
+ /* Get the value of the 'connect_timeout' parameter: */
518
+ opt = rb_hash_aref(opts, CONNECT_TIMEOUT_SYMBOL);
519
+ if (NIL_P(opt)) {
520
+ ptr->connect_timeout = 0;
521
+ }
522
+ else {
523
+ Check_Type(opt, T_FIXNUM);
524
+ ptr->connect_timeout = NUM2INT(opt);
525
+ }
526
+
515
527
  /* Get the value of the 'proxy_url' parameter: */
516
528
  opt = rb_hash_aref(opts, PROXY_URL_SYMBOL);
517
529
  if (NIL_P(opt)) {
@@ -800,6 +812,7 @@ static void ov_http_client_prepare_handle(ov_http_client_object* client_ptr, ov_
800
812
  VALUE header;
801
813
  VALUE url;
802
814
  int timeout;
815
+ int connect_timeout;
803
816
 
804
817
  /* Configure sharing of cookies with other handlers created by the client: */
805
818
  curl_easy_setopt(handle, CURLOPT_SHARE, client_ptr->share);
@@ -817,13 +830,20 @@ static void ov_http_client_prepare_handle(ov_http_client_object* client_ptr, ov_
817
830
  curl_easy_setopt(handle, CURLOPT_CAINFO, client_ptr->ca_file);
818
831
  }
819
832
 
820
- /* Configure the timeout: */
833
+ /* Configure the total timeout: */
821
834
  timeout = client_ptr->timeout;
822
835
  if (!NIL_P(request_ptr->timeout)) {
823
836
  timeout = NUM2INT(request_ptr->timeout);
824
837
  }
825
838
  curl_easy_setopt(handle, CURLOPT_TIMEOUT, timeout);
826
839
 
840
+ /* Configure the connect timeout: */
841
+ connect_timeout = client_ptr->connect_timeout;
842
+ if (!NIL_P(request_ptr->connect_timeout)) {
843
+ connect_timeout = NUM2INT(request_ptr->connect_timeout);
844
+ }
845
+ curl_easy_setopt(handle, CURLOPT_CONNECTTIMEOUT, connect_timeout);
846
+
827
847
  /* Configure compression of responses (setting the value to zero length string means accepting all the
828
848
  compression types that libcurl supports): */
829
849
  if (client_ptr->compress) {
@@ -861,6 +881,7 @@ static void ov_http_client_prepare_handle(ov_http_client_object* client_ptr, ov_
861
881
  curl_easy_setopt(handle, CURLOPT_POST, 1L);
862
882
  }
863
883
  else if (rb_eql(request_ptr->method, PUT_SYMBOL)) {
884
+ *headers = curl_slist_append(*headers, "Expect:");
864
885
  curl_easy_setopt(handle, CURLOPT_UPLOAD, 1L);
865
886
  curl_easy_setopt(handle, CURLOPT_PUT, 1L);
866
887
  }
@@ -1026,19 +1047,20 @@ void ov_http_client_define(void) {
1026
1047
  rb_define_method(ov_http_client_class, "wait", ov_http_client_wait, 1);
1027
1048
 
1028
1049
  /* Define the symbols: */
1029
- CA_FILE_SYMBOL = ID2SYM(rb_intern("ca_file"));
1030
- COMPRESS_SYMBOL = ID2SYM(rb_intern("compress"));
1031
- CONNECTIONS_SYMBOL = ID2SYM(rb_intern("connections"));
1032
- DEBUG_SYMBOL = ID2SYM(rb_intern("debug"));
1033
- INSECURE_SYMBOL = ID2SYM(rb_intern("insecure"));
1034
- LOG_SYMBOL = ID2SYM(rb_intern("log"));
1035
- PASSWORD_SYMBOL = ID2SYM(rb_intern("password"));
1036
- PIPELINE_SYMBOL = ID2SYM(rb_intern("pipeline"));
1037
- PROXY_PASSWORD_SYMBOL = ID2SYM(rb_intern("proxy_password"));
1038
- PROXY_URL_SYMBOL = ID2SYM(rb_intern("proxy_url"));
1039
- PROXY_USERNAME_SYMBOL = ID2SYM(rb_intern("proxy_username"));
1040
- TIMEOUT_SYMBOL = ID2SYM(rb_intern("timeout"));
1041
- COOKIES_SYMBOL = ID2SYM(rb_intern("cookies"));
1050
+ CA_FILE_SYMBOL = ID2SYM(rb_intern("ca_file"));
1051
+ COMPRESS_SYMBOL = ID2SYM(rb_intern("compress"));
1052
+ CONNECTIONS_SYMBOL = ID2SYM(rb_intern("connections"));
1053
+ DEBUG_SYMBOL = ID2SYM(rb_intern("debug"));
1054
+ INSECURE_SYMBOL = ID2SYM(rb_intern("insecure"));
1055
+ LOG_SYMBOL = ID2SYM(rb_intern("log"));
1056
+ PASSWORD_SYMBOL = ID2SYM(rb_intern("password"));
1057
+ PIPELINE_SYMBOL = ID2SYM(rb_intern("pipeline"));
1058
+ PROXY_PASSWORD_SYMBOL = ID2SYM(rb_intern("proxy_password"));
1059
+ PROXY_URL_SYMBOL = ID2SYM(rb_intern("proxy_url"));
1060
+ PROXY_USERNAME_SYMBOL = ID2SYM(rb_intern("proxy_username"));
1061
+ TIMEOUT_SYMBOL = ID2SYM(rb_intern("timeout"));
1062
+ CONNECT_TIMEOUT_SYMBOL = ID2SYM(rb_intern("connect_timeout"));
1063
+ COOKIES_SYMBOL = ID2SYM(rb_intern("cookies"));
1042
1064
 
1043
1065
  /* Define the method identifiers: */
1044
1066
  COMPARE_BY_IDENTITY_ID = rb_intern("compare_by_identity");
@@ -54,6 +54,7 @@ typedef struct {
54
54
  char* proxy_username;
55
55
  char* proxy_password;
56
56
  int timeout;
57
+ int connect_timeout;
57
58
  char* cookies;
58
59
  } ov_http_client_object;
59
60
 
@@ -40,6 +40,7 @@ static VALUE TOKEN_SYMBOL;
40
40
  static VALUE KERBEROS_SYMBOL;
41
41
  static VALUE BODY_SYMBOL;
42
42
  static VALUE TIMEOUT_SYMBOL;
43
+ static VALUE CONNECT_TIMEOUT_SYMBOL;
43
44
 
44
45
  static void ov_http_request_mark(void* vptr) {
45
46
  ov_http_request_object* ptr;
@@ -55,6 +56,7 @@ static void ov_http_request_mark(void* vptr) {
55
56
  rb_gc_mark(ptr->kerberos);
56
57
  rb_gc_mark(ptr->body);
57
58
  rb_gc_mark(ptr->timeout);
59
+ rb_gc_mark(ptr->connect_timeout);
58
60
  }
59
61
 
60
62
  static void ov_http_request_free(void* vptr) {
@@ -83,16 +85,17 @@ static VALUE ov_http_request_alloc(VALUE klass) {
83
85
  ov_http_request_object* ptr;
84
86
 
85
87
  ptr = ALLOC(ov_http_request_object);
86
- ptr->method = Qnil;
87
- ptr->url = Qnil;
88
- ptr->query = Qnil;
89
- ptr->headers = Qnil;
90
- ptr->username = Qnil;
91
- ptr->password = Qnil;
92
- ptr->token = Qnil;
93
- ptr->kerberos = Qnil;
94
- ptr->body = Qnil;
95
- ptr->timeout = Qnil;
88
+ ptr->method = Qnil;
89
+ ptr->url = Qnil;
90
+ ptr->query = Qnil;
91
+ ptr->headers = Qnil;
92
+ ptr->username = Qnil;
93
+ ptr->password = Qnil;
94
+ ptr->token = Qnil;
95
+ ptr->kerberos = Qnil;
96
+ ptr->body = Qnil;
97
+ ptr->timeout = Qnil;
98
+ ptr->connect_timeout = Qnil;
96
99
  return TypedData_Wrap_Struct(klass, &ov_http_request_type, ptr);
97
100
  }
98
101
 
@@ -279,6 +282,24 @@ static VALUE ov_http_request_set_timeout(VALUE self, VALUE value) {
279
282
  return Qnil;
280
283
  }
281
284
 
285
+ static VALUE ov_http_request_get_connect_timeout(VALUE self) {
286
+ ov_http_request_object* ptr;
287
+
288
+ ov_http_request_ptr(self, ptr);
289
+ return ptr->connect_timeout;
290
+ }
291
+
292
+ static VALUE ov_http_request_set_connect_timeout(VALUE self, VALUE value) {
293
+ ov_http_request_object* ptr;
294
+
295
+ ov_http_request_ptr(self, ptr);
296
+ if (!NIL_P(value)) {
297
+ Check_Type(value, T_FIXNUM);
298
+ }
299
+ ptr->connect_timeout = value;
300
+ return Qnil;
301
+ }
302
+
282
303
  static VALUE ov_http_request_initialize(int argc, VALUE* argv, VALUE self) {
283
304
  VALUE opts;
284
305
 
@@ -304,6 +325,7 @@ static VALUE ov_http_request_initialize(int argc, VALUE* argv, VALUE self) {
304
325
  ov_http_request_set_token(self, rb_hash_aref(opts, TOKEN_SYMBOL));
305
326
  ov_http_request_set_body(self, rb_hash_aref(opts, BODY_SYMBOL));
306
327
  ov_http_request_set_timeout(self, rb_hash_aref(opts, TIMEOUT_SYMBOL));
328
+ ov_http_request_set_connect_timeout(self, rb_hash_aref(opts, CONNECT_TIMEOUT_SYMBOL));
307
329
 
308
330
  return self;
309
331
  }
@@ -317,38 +339,41 @@ void ov_http_request_define(void) {
317
339
  rb_define_method(ov_http_request_class, "initialize", ov_http_request_initialize, -1);
318
340
 
319
341
  /* Define the methods: */
320
- rb_define_method(ov_http_request_class, "method", ov_http_request_get_method, 0);
321
- rb_define_method(ov_http_request_class, "method=", ov_http_request_set_method, 1);
322
- rb_define_method(ov_http_request_class, "url", ov_http_request_get_url, 0);
323
- rb_define_method(ov_http_request_class, "url=", ov_http_request_set_url, 1);
324
- rb_define_method(ov_http_request_class, "query", ov_http_request_get_query, 0);
325
- rb_define_method(ov_http_request_class, "query=", ov_http_request_set_query, 1);
326
- rb_define_method(ov_http_request_class, "headers", ov_http_request_get_headers, 0);
327
- rb_define_method(ov_http_request_class, "headers=", ov_http_request_set_headers, 1);
328
- rb_define_method(ov_http_request_class, "username", ov_http_request_get_username, 0);
329
- rb_define_method(ov_http_request_class, "username=", ov_http_request_set_username, 1);
330
- rb_define_method(ov_http_request_class, "password", ov_http_request_get_password, 0);
331
- rb_define_method(ov_http_request_class, "password=", ov_http_request_set_password, 1);
332
- rb_define_method(ov_http_request_class, "token", ov_http_request_get_token, 0);
333
- rb_define_method(ov_http_request_class, "token=", ov_http_request_set_token, 1);
334
- rb_define_method(ov_http_request_class, "kerberos", ov_http_request_get_kerberos, 0);
335
- rb_define_method(ov_http_request_class, "kerberos=", ov_http_request_set_kerberos, 1);
336
- rb_define_method(ov_http_request_class, "body", ov_http_request_get_body, 0);
337
- rb_define_method(ov_http_request_class, "body=", ov_http_request_set_body, 1);
338
- rb_define_method(ov_http_request_class, "timeout", ov_http_request_get_timeout, 0);
339
- rb_define_method(ov_http_request_class, "timeout=", ov_http_request_set_timeout, 1);
342
+ rb_define_method(ov_http_request_class, "method", ov_http_request_get_method, 0);
343
+ rb_define_method(ov_http_request_class, "method=", ov_http_request_set_method, 1);
344
+ rb_define_method(ov_http_request_class, "url", ov_http_request_get_url, 0);
345
+ rb_define_method(ov_http_request_class, "url=", ov_http_request_set_url, 1);
346
+ rb_define_method(ov_http_request_class, "query", ov_http_request_get_query, 0);
347
+ rb_define_method(ov_http_request_class, "query=", ov_http_request_set_query, 1);
348
+ rb_define_method(ov_http_request_class, "headers", ov_http_request_get_headers, 0);
349
+ rb_define_method(ov_http_request_class, "headers=", ov_http_request_set_headers, 1);
350
+ rb_define_method(ov_http_request_class, "username", ov_http_request_get_username, 0);
351
+ rb_define_method(ov_http_request_class, "username=", ov_http_request_set_username, 1);
352
+ rb_define_method(ov_http_request_class, "password", ov_http_request_get_password, 0);
353
+ rb_define_method(ov_http_request_class, "password=", ov_http_request_set_password, 1);
354
+ rb_define_method(ov_http_request_class, "token", ov_http_request_get_token, 0);
355
+ rb_define_method(ov_http_request_class, "token=", ov_http_request_set_token, 1);
356
+ rb_define_method(ov_http_request_class, "kerberos", ov_http_request_get_kerberos, 0);
357
+ rb_define_method(ov_http_request_class, "kerberos=", ov_http_request_set_kerberos, 1);
358
+ rb_define_method(ov_http_request_class, "body", ov_http_request_get_body, 0);
359
+ rb_define_method(ov_http_request_class, "body=", ov_http_request_set_body, 1);
360
+ rb_define_method(ov_http_request_class, "timeout", ov_http_request_get_timeout, 0);
361
+ rb_define_method(ov_http_request_class, "timeout=", ov_http_request_set_timeout, 1);
362
+ rb_define_method(ov_http_request_class, "connect_timeout", ov_http_request_get_connect_timeout, 0);
363
+ rb_define_method(ov_http_request_class, "connect_timeout=", ov_http_request_set_connect_timeout, 1);
340
364
 
341
365
  /* Define the symbols for the attributes: */
342
- URL_SYMBOL = ID2SYM(rb_intern("url"));
343
- METHOD_SYMBOL = ID2SYM(rb_intern("method"));
344
- QUERY_SYMBOL = ID2SYM(rb_intern("query"));
345
- HEADERS_SYMBOL = ID2SYM(rb_intern("headers"));
346
- USERNAME_SYMBOL = ID2SYM(rb_intern("username"));
347
- PASSWORD_SYMBOL = ID2SYM(rb_intern("password"));
348
- TOKEN_SYMBOL = ID2SYM(rb_intern("token"));
349
- KERBEROS_SYMBOL = ID2SYM(rb_intern("kerberos"));
350
- BODY_SYMBOL = ID2SYM(rb_intern("body"));
351
- TIMEOUT_SYMBOL = ID2SYM(rb_intern("timeout"));
366
+ URL_SYMBOL = ID2SYM(rb_intern("url"));
367
+ METHOD_SYMBOL = ID2SYM(rb_intern("method"));
368
+ QUERY_SYMBOL = ID2SYM(rb_intern("query"));
369
+ HEADERS_SYMBOL = ID2SYM(rb_intern("headers"));
370
+ USERNAME_SYMBOL = ID2SYM(rb_intern("username"));
371
+ PASSWORD_SYMBOL = ID2SYM(rb_intern("password"));
372
+ TOKEN_SYMBOL = ID2SYM(rb_intern("token"));
373
+ KERBEROS_SYMBOL = ID2SYM(rb_intern("kerberos"));
374
+ BODY_SYMBOL = ID2SYM(rb_intern("body"));
375
+ TIMEOUT_SYMBOL = ID2SYM(rb_intern("timeout"));
376
+ CONNECT_TIMEOUT_SYMBOL = ID2SYM(rb_intern("connect_timeout"));
352
377
 
353
378
  /* Define the symbols for the HTTP methods: */
354
379
  GET_SYMBOL = ID2SYM(rb_intern("GET"));
@@ -31,16 +31,17 @@ extern VALUE DELETE_SYMBOL;
31
31
 
32
32
  /* Content: */
33
33
  typedef struct {
34
- VALUE method; /* Symbol */
35
- VALUE url; /* String */
36
- VALUE query; /* Hash<String, String> */
37
- VALUE headers; /* Hash<String, String> */
38
- VALUE username; /* String */
39
- VALUE password; /* String */
40
- VALUE token; /* String */
41
- VALUE kerberos; /* Boolean */
42
- VALUE body; /* String */
43
- VALUE timeout; /* Integer */
34
+ VALUE method; /* Symbol */
35
+ VALUE url; /* String */
36
+ VALUE query; /* Hash<String, String> */
37
+ VALUE headers; /* Hash<String, String> */
38
+ VALUE username; /* String */
39
+ VALUE password; /* String */
40
+ VALUE token; /* String */
41
+ VALUE kerberos; /* Boolean */
42
+ VALUE body; /* String */
43
+ VALUE timeout; /* Integer */
44
+ VALUE connect_timeout; /* Integer */
44
45
  } ov_http_request_object;
45
46
 
46
47
  /* Macro to get the pointer: */
@@ -75,8 +75,11 @@ module OvirtSDK4
75
75
  # instead of user name and password to obtain the OAuth token.
76
76
  #
77
77
  # @option opts [Integer] :timeout (0) The maximun total time to wait for the response, in seconds. A value of zero
78
- # (the default) means wait for ever. If the timeout expires before the response is received an exception will be
79
- # raised.
78
+ # (the default) means wait for ever. If the timeout expires before the response is received a `TimeoutError`
79
+ # exception will be raised.
80
+ #
81
+ # @option opts [Integer] :connect_timeout (300) The maximun time to wait for connection establishment, in seconds.
82
+ # If the timeout expires before the connection is established a `TimeoutError` exception will be raised.
80
83
  #
81
84
  # @option opts [Boolean] :compress (true) A boolean flag indicating if the SDK should ask the server to send
82
85
  # compressed responses. Note that this is a hint for the server, and that it may return uncompressed data even
@@ -117,6 +120,7 @@ module OvirtSDK4
117
120
  @log = opts[:log]
118
121
  @kerberos = opts[:kerberos] || false
119
122
  @timeout = opts[:timeout] || 0
123
+ @connect_timeout = opts[:connect_timeout] || 0
120
124
  @compress = opts[:compress] || true
121
125
  @proxy_url = opts[:proxy_url]
122
126
  @proxy_username = opts[:proxy_username]
@@ -156,6 +160,7 @@ module OvirtSDK4
156
160
  debug: @debug,
157
161
  log: @log,
158
162
  timeout: @timeout,
163
+ connect_timeout: @connect_timeout,
159
164
  compress: @compress,
160
165
  proxy_url: @proxy_url,
161
166
  proxy_username: @proxy_username,
@@ -151,6 +151,8 @@ module OvirtSDK4
151
151
  object.discard_snapshots = Reader.read_boolean(reader)
152
152
  when 'disk'
153
153
  object.disk = DiskReader.read_one(reader)
154
+ when 'disk_profile'
155
+ object.disk_profile = DiskProfileReader.read_one(reader)
154
156
  when 'disks'
155
157
  object.disks = DiskReader.read_many(reader)
156
158
  when 'exclusive'
@@ -207,6 +209,8 @@ module OvirtSDK4
207
209
  object.power_management = PowerManagementReader.read_one(reader)
208
210
  when 'proxy_ticket'
209
211
  object.proxy_ticket = ProxyTicketReader.read_one(reader)
212
+ when 'quota'
213
+ object.quota = QuotaReader.read_one(reader)
210
214
  when 'reason'
211
215
  object.reason = Reader.read_string(reader)
212
216
  when 'reassign_bad_macs'
@@ -809,6 +813,10 @@ module OvirtSDK4
809
813
  object.summary = ApiSummaryReader.read_one(reader)
810
814
  when 'time'
811
815
  object.time = Reader.read_date(reader)
816
+ when 'authenticated_user'
817
+ object.authenticated_user = UserReader.read_one(reader)
818
+ when 'effective_user'
819
+ object.effective_user = UserReader.read_one(reader)
812
820
  else
813
821
  reader.next_element
814
822
  end
@@ -11559,6 +11567,8 @@ module OvirtSDK4
11559
11567
  object.comment = value if not value.nil?
11560
11568
  value = reader.get_attribute('description')
11561
11569
  object.description = value if not value.nil?
11570
+ value = reader.get_attribute('external_plugin_type')
11571
+ object.external_plugin_type = value if not value.nil?
11562
11572
  value = reader.get_attribute('id')
11563
11573
  object.id = value if not value.nil?
11564
11574
  value = reader.get_attribute('name')
@@ -11596,6 +11606,8 @@ module OvirtSDK4
11596
11606
  object.comment = Reader.read_string(reader)
11597
11607
  when 'description'
11598
11608
  object.description = Reader.read_string(reader)
11609
+ when 'external_plugin_type'
11610
+ object.external_plugin_type = Reader.read_string(reader)
11599
11611
  when 'id'
11600
11612
  object.id = Reader.read_string(reader)
11601
11613
  when 'name'