1use reqwest;
13use serde::{Deserialize, Serialize};
14use crate::{apis::ResponseContent, models};
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CreateWorkflowSchemeDraftFromParentError {
22 Status400(),
23 Status401(),
24 Status403(),
25 UnknownValue(serde_json::Value),
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize)]
30#[serde(untagged)]
31pub enum DeleteDraftDefaultWorkflowError {
32 Status401(),
33 Status403(),
34 Status404(),
35 UnknownValue(serde_json::Value),
36}
37
38#[derive(Debug, Clone, Serialize, Deserialize)]
40#[serde(untagged)]
41pub enum DeleteDraftWorkflowMappingError {
42 Status401(),
43 Status403(),
44 Status404(),
45 UnknownValue(serde_json::Value),
46}
47
48#[derive(Debug, Clone, Serialize, Deserialize)]
50#[serde(untagged)]
51pub enum DeleteWorkflowSchemeDraftError {
52 Status401(),
53 Status403(),
54 Status404(),
55 UnknownValue(serde_json::Value),
56}
57
58#[derive(Debug, Clone, Serialize, Deserialize)]
60#[serde(untagged)]
61pub enum DeleteWorkflowSchemeDraftIssueTypeError {
62 Status401(),
63 Status403(),
64 Status404(),
65 UnknownValue(serde_json::Value),
66}
67
68#[derive(Debug, Clone, Serialize, Deserialize)]
70#[serde(untagged)]
71pub enum GetDraftDefaultWorkflowError {
72 Status401(),
73 Status403(),
74 Status404(),
75 UnknownValue(serde_json::Value),
76}
77
78#[derive(Debug, Clone, Serialize, Deserialize)]
80#[serde(untagged)]
81pub enum GetDraftWorkflowError {
82 Status401(),
83 Status403(),
84 Status404(),
85 UnknownValue(serde_json::Value),
86}
87
88#[derive(Debug, Clone, Serialize, Deserialize)]
90#[serde(untagged)]
91pub enum GetWorkflowSchemeDraftError {
92 Status401(),
93 Status403(),
94 Status404(),
95 UnknownValue(serde_json::Value),
96}
97
98#[derive(Debug, Clone, Serialize, Deserialize)]
100#[serde(untagged)]
101pub enum GetWorkflowSchemeDraftIssueTypeError {
102 Status401(),
103 Status403(),
104 Status404(),
105 UnknownValue(serde_json::Value),
106}
107
108#[derive(Debug, Clone, Serialize, Deserialize)]
110#[serde(untagged)]
111pub enum SetWorkflowSchemeDraftIssueTypeError {
112 Status400(),
113 Status401(),
114 Status403(),
115 Status404(),
116 UnknownValue(serde_json::Value),
117}
118
119#[derive(Debug, Clone, Serialize, Deserialize)]
121#[serde(untagged)]
122pub enum UpdateDraftDefaultWorkflowError {
123 Status400(),
124 Status401(),
125 Status403(),
126 Status404(),
127 UnknownValue(serde_json::Value),
128}
129
130#[derive(Debug, Clone, Serialize, Deserialize)]
132#[serde(untagged)]
133pub enum UpdateDraftWorkflowMappingError {
134 Status400(),
135 Status401(),
136 Status403(),
137 Status404(),
138 UnknownValue(serde_json::Value),
139}
140
141#[derive(Debug, Clone, Serialize, Deserialize)]
143#[serde(untagged)]
144pub enum UpdateWorkflowSchemeDraftError {
145 Status400(),
146 Status401(),
147 Status403(),
148 Status404(),
149 UnknownValue(serde_json::Value),
150}
151
152
153pub async fn create_workflow_scheme_draft_from_parent(configuration: &configuration::Configuration, id: i64) -> Result<models::WorkflowScheme, Error<CreateWorkflowSchemeDraftFromParentError>> {
155 let p_id = id;
157
158 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/createdraft", configuration.base_path, id=p_id);
159 let mut req_builder = configuration.client.request(reqwest::Method::POST, &uri_str);
160
161 if let Some(ref user_agent) = configuration.user_agent {
162 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
163 }
164 if let Some(ref token) = configuration.oauth_access_token {
165 req_builder = req_builder.bearer_auth(token.to_owned());
166 };
167 if let Some(ref auth_conf) = configuration.basic_auth {
168 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
169 };
170
171 let req = req_builder.build()?;
172 let resp = configuration.client.execute(req).await?;
173
174 let status = resp.status();
175
176 if !status.is_client_error() && !status.is_server_error() {
177 let content = resp.text().await?;
178 serde_json::from_str(&content).map_err(Error::from)
179 } else {
180 let content = resp.text().await?;
181 let entity: Option<CreateWorkflowSchemeDraftFromParentError> = serde_json::from_str(&content).ok();
182 Err(Error::ResponseError(ResponseContent { status, content, entity }))
183 }
184}
185
186pub async fn delete_draft_default_workflow(configuration: &configuration::Configuration, id: i64) -> Result<models::WorkflowScheme, Error<DeleteDraftDefaultWorkflowError>> {
188 let p_id = id;
190
191 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/default", configuration.base_path, id=p_id);
192 let mut req_builder = configuration.client.request(reqwest::Method::DELETE, &uri_str);
193
194 if let Some(ref user_agent) = configuration.user_agent {
195 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
196 }
197 if let Some(ref token) = configuration.oauth_access_token {
198 req_builder = req_builder.bearer_auth(token.to_owned());
199 };
200 if let Some(ref auth_conf) = configuration.basic_auth {
201 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
202 };
203
204 let req = req_builder.build()?;
205 let resp = configuration.client.execute(req).await?;
206
207 let status = resp.status();
208
209 if !status.is_client_error() && !status.is_server_error() {
210 let content = resp.text().await?;
211 serde_json::from_str(&content).map_err(Error::from)
212 } else {
213 let content = resp.text().await?;
214 let entity: Option<DeleteDraftDefaultWorkflowError> = serde_json::from_str(&content).ok();
215 Err(Error::ResponseError(ResponseContent { status, content, entity }))
216 }
217}
218
219pub async fn delete_draft_workflow_mapping(configuration: &configuration::Configuration, id: i64, workflow_name: &str) -> Result<(), Error<DeleteDraftWorkflowMappingError>> {
221 let p_id = id;
223 let p_workflow_name = workflow_name;
224
225 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/workflow", configuration.base_path, id=p_id);
226 let mut req_builder = configuration.client.request(reqwest::Method::DELETE, &uri_str);
227
228 req_builder = req_builder.query(&[("workflowName", &p_workflow_name.to_string())]);
229 if let Some(ref user_agent) = configuration.user_agent {
230 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
231 }
232 if let Some(ref token) = configuration.oauth_access_token {
233 req_builder = req_builder.bearer_auth(token.to_owned());
234 };
235 if let Some(ref auth_conf) = configuration.basic_auth {
236 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
237 };
238
239 let req = req_builder.build()?;
240 let resp = configuration.client.execute(req).await?;
241
242 let status = resp.status();
243
244 if !status.is_client_error() && !status.is_server_error() {
245 Ok(())
246 } else {
247 let content = resp.text().await?;
248 let entity: Option<DeleteDraftWorkflowMappingError> = serde_json::from_str(&content).ok();
249 Err(Error::ResponseError(ResponseContent { status, content, entity }))
250 }
251}
252
253pub async fn delete_workflow_scheme_draft(configuration: &configuration::Configuration, id: i64) -> Result<(), Error<DeleteWorkflowSchemeDraftError>> {
255 let p_id = id;
257
258 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft", configuration.base_path, id=p_id);
259 let mut req_builder = configuration.client.request(reqwest::Method::DELETE, &uri_str);
260
261 if let Some(ref user_agent) = configuration.user_agent {
262 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
263 }
264 if let Some(ref token) = configuration.oauth_access_token {
265 req_builder = req_builder.bearer_auth(token.to_owned());
266 };
267 if let Some(ref auth_conf) = configuration.basic_auth {
268 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
269 };
270
271 let req = req_builder.build()?;
272 let resp = configuration.client.execute(req).await?;
273
274 let status = resp.status();
275
276 if !status.is_client_error() && !status.is_server_error() {
277 Ok(())
278 } else {
279 let content = resp.text().await?;
280 let entity: Option<DeleteWorkflowSchemeDraftError> = serde_json::from_str(&content).ok();
281 Err(Error::ResponseError(ResponseContent { status, content, entity }))
282 }
283}
284
285pub async fn delete_workflow_scheme_draft_issue_type(configuration: &configuration::Configuration, id: i64, issue_type: &str) -> Result<models::WorkflowScheme, Error<DeleteWorkflowSchemeDraftIssueTypeError>> {
287 let p_id = id;
289 let p_issue_type = issue_type;
290
291 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/issuetype/{issueType}", configuration.base_path, id=p_id, issueType=crate::apis::urlencode(p_issue_type));
292 let mut req_builder = configuration.client.request(reqwest::Method::DELETE, &uri_str);
293
294 if let Some(ref user_agent) = configuration.user_agent {
295 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
296 }
297 if let Some(ref token) = configuration.oauth_access_token {
298 req_builder = req_builder.bearer_auth(token.to_owned());
299 };
300 if let Some(ref auth_conf) = configuration.basic_auth {
301 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
302 };
303
304 let req = req_builder.build()?;
305 let resp = configuration.client.execute(req).await?;
306
307 let status = resp.status();
308
309 if !status.is_client_error() && !status.is_server_error() {
310 let content = resp.text().await?;
311 serde_json::from_str(&content).map_err(Error::from)
312 } else {
313 let content = resp.text().await?;
314 let entity: Option<DeleteWorkflowSchemeDraftIssueTypeError> = serde_json::from_str(&content).ok();
315 Err(Error::ResponseError(ResponseContent { status, content, entity }))
316 }
317}
318
319pub async fn get_draft_default_workflow(configuration: &configuration::Configuration, id: i64) -> Result<models::DefaultWorkflow, Error<GetDraftDefaultWorkflowError>> {
321 let p_id = id;
323
324 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/default", configuration.base_path, id=p_id);
325 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
326
327 if let Some(ref user_agent) = configuration.user_agent {
328 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
329 }
330 if let Some(ref token) = configuration.oauth_access_token {
331 req_builder = req_builder.bearer_auth(token.to_owned());
332 };
333 if let Some(ref auth_conf) = configuration.basic_auth {
334 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
335 };
336
337 let req = req_builder.build()?;
338 let resp = configuration.client.execute(req).await?;
339
340 let status = resp.status();
341
342 if !status.is_client_error() && !status.is_server_error() {
343 let content = resp.text().await?;
344 serde_json::from_str(&content).map_err(Error::from)
345 } else {
346 let content = resp.text().await?;
347 let entity: Option<GetDraftDefaultWorkflowError> = serde_json::from_str(&content).ok();
348 Err(Error::ResponseError(ResponseContent { status, content, entity }))
349 }
350}
351
352pub async fn get_draft_workflow(configuration: &configuration::Configuration, id: i64, workflow_name: Option<&str>) -> Result<models::IssueTypesWorkflowMapping, Error<GetDraftWorkflowError>> {
354 let p_id = id;
356 let p_workflow_name = workflow_name;
357
358 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/workflow", configuration.base_path, id=p_id);
359 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
360
361 if let Some(ref param_value) = p_workflow_name {
362 req_builder = req_builder.query(&[("workflowName", ¶m_value.to_string())]);
363 }
364 if let Some(ref user_agent) = configuration.user_agent {
365 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
366 }
367 if let Some(ref token) = configuration.oauth_access_token {
368 req_builder = req_builder.bearer_auth(token.to_owned());
369 };
370 if let Some(ref auth_conf) = configuration.basic_auth {
371 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
372 };
373
374 let req = req_builder.build()?;
375 let resp = configuration.client.execute(req).await?;
376
377 let status = resp.status();
378
379 if !status.is_client_error() && !status.is_server_error() {
380 let content = resp.text().await?;
381 serde_json::from_str(&content).map_err(Error::from)
382 } else {
383 let content = resp.text().await?;
384 let entity: Option<GetDraftWorkflowError> = serde_json::from_str(&content).ok();
385 Err(Error::ResponseError(ResponseContent { status, content, entity }))
386 }
387}
388
389pub async fn get_workflow_scheme_draft(configuration: &configuration::Configuration, id: i64) -> Result<models::WorkflowScheme, Error<GetWorkflowSchemeDraftError>> {
391 let p_id = id;
393
394 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft", configuration.base_path, id=p_id);
395 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
396
397 if let Some(ref user_agent) = configuration.user_agent {
398 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
399 }
400 if let Some(ref token) = configuration.oauth_access_token {
401 req_builder = req_builder.bearer_auth(token.to_owned());
402 };
403 if let Some(ref auth_conf) = configuration.basic_auth {
404 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
405 };
406
407 let req = req_builder.build()?;
408 let resp = configuration.client.execute(req).await?;
409
410 let status = resp.status();
411
412 if !status.is_client_error() && !status.is_server_error() {
413 let content = resp.text().await?;
414 serde_json::from_str(&content).map_err(Error::from)
415 } else {
416 let content = resp.text().await?;
417 let entity: Option<GetWorkflowSchemeDraftError> = serde_json::from_str(&content).ok();
418 Err(Error::ResponseError(ResponseContent { status, content, entity }))
419 }
420}
421
422pub async fn get_workflow_scheme_draft_issue_type(configuration: &configuration::Configuration, id: i64, issue_type: &str) -> Result<models::IssueTypeWorkflowMapping, Error<GetWorkflowSchemeDraftIssueTypeError>> {
424 let p_id = id;
426 let p_issue_type = issue_type;
427
428 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/issuetype/{issueType}", configuration.base_path, id=p_id, issueType=crate::apis::urlencode(p_issue_type));
429 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
430
431 if let Some(ref user_agent) = configuration.user_agent {
432 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
433 }
434 if let Some(ref token) = configuration.oauth_access_token {
435 req_builder = req_builder.bearer_auth(token.to_owned());
436 };
437 if let Some(ref auth_conf) = configuration.basic_auth {
438 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
439 };
440
441 let req = req_builder.build()?;
442 let resp = configuration.client.execute(req).await?;
443
444 let status = resp.status();
445
446 if !status.is_client_error() && !status.is_server_error() {
447 let content = resp.text().await?;
448 serde_json::from_str(&content).map_err(Error::from)
449 } else {
450 let content = resp.text().await?;
451 let entity: Option<GetWorkflowSchemeDraftIssueTypeError> = serde_json::from_str(&content).ok();
452 Err(Error::ResponseError(ResponseContent { status, content, entity }))
453 }
454}
455
456pub async fn set_workflow_scheme_draft_issue_type(configuration: &configuration::Configuration, id: i64, issue_type: &str, issue_type_workflow_mapping: models::IssueTypeWorkflowMapping) -> Result<models::WorkflowScheme, Error<SetWorkflowSchemeDraftIssueTypeError>> {
458 let p_id = id;
460 let p_issue_type = issue_type;
461 let p_issue_type_workflow_mapping = issue_type_workflow_mapping;
462
463 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/issuetype/{issueType}", configuration.base_path, id=p_id, issueType=crate::apis::urlencode(p_issue_type));
464 let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
465
466 if let Some(ref user_agent) = configuration.user_agent {
467 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
468 }
469 if let Some(ref token) = configuration.oauth_access_token {
470 req_builder = req_builder.bearer_auth(token.to_owned());
471 };
472 if let Some(ref auth_conf) = configuration.basic_auth {
473 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
474 };
475 req_builder = req_builder.json(&p_issue_type_workflow_mapping);
476
477 let req = req_builder.build()?;
478 let resp = configuration.client.execute(req).await?;
479
480 let status = resp.status();
481
482 if !status.is_client_error() && !status.is_server_error() {
483 let content = resp.text().await?;
484 serde_json::from_str(&content).map_err(Error::from)
485 } else {
486 let content = resp.text().await?;
487 let entity: Option<SetWorkflowSchemeDraftIssueTypeError> = serde_json::from_str(&content).ok();
488 Err(Error::ResponseError(ResponseContent { status, content, entity }))
489 }
490}
491
492pub async fn update_draft_default_workflow(configuration: &configuration::Configuration, id: i64, default_workflow: models::DefaultWorkflow) -> Result<models::WorkflowScheme, Error<UpdateDraftDefaultWorkflowError>> {
494 let p_id = id;
496 let p_default_workflow = default_workflow;
497
498 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/default", configuration.base_path, id=p_id);
499 let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
500
501 if let Some(ref user_agent) = configuration.user_agent {
502 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
503 }
504 if let Some(ref token) = configuration.oauth_access_token {
505 req_builder = req_builder.bearer_auth(token.to_owned());
506 };
507 if let Some(ref auth_conf) = configuration.basic_auth {
508 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
509 };
510 req_builder = req_builder.json(&p_default_workflow);
511
512 let req = req_builder.build()?;
513 let resp = configuration.client.execute(req).await?;
514
515 let status = resp.status();
516
517 if !status.is_client_error() && !status.is_server_error() {
518 let content = resp.text().await?;
519 serde_json::from_str(&content).map_err(Error::from)
520 } else {
521 let content = resp.text().await?;
522 let entity: Option<UpdateDraftDefaultWorkflowError> = serde_json::from_str(&content).ok();
523 Err(Error::ResponseError(ResponseContent { status, content, entity }))
524 }
525}
526
527pub async fn update_draft_workflow_mapping(configuration: &configuration::Configuration, id: i64, workflow_name: &str, issue_types_workflow_mapping: models::IssueTypesWorkflowMapping) -> Result<models::WorkflowScheme, Error<UpdateDraftWorkflowMappingError>> {
529 let p_id = id;
531 let p_workflow_name = workflow_name;
532 let p_issue_types_workflow_mapping = issue_types_workflow_mapping;
533
534 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft/workflow", configuration.base_path, id=p_id);
535 let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
536
537 req_builder = req_builder.query(&[("workflowName", &p_workflow_name.to_string())]);
538 if let Some(ref user_agent) = configuration.user_agent {
539 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
540 }
541 if let Some(ref token) = configuration.oauth_access_token {
542 req_builder = req_builder.bearer_auth(token.to_owned());
543 };
544 if let Some(ref auth_conf) = configuration.basic_auth {
545 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
546 };
547 req_builder = req_builder.json(&p_issue_types_workflow_mapping);
548
549 let req = req_builder.build()?;
550 let resp = configuration.client.execute(req).await?;
551
552 let status = resp.status();
553
554 if !status.is_client_error() && !status.is_server_error() {
555 let content = resp.text().await?;
556 serde_json::from_str(&content).map_err(Error::from)
557 } else {
558 let content = resp.text().await?;
559 let entity: Option<UpdateDraftWorkflowMappingError> = serde_json::from_str(&content).ok();
560 Err(Error::ResponseError(ResponseContent { status, content, entity }))
561 }
562}
563
564pub async fn update_workflow_scheme_draft(configuration: &configuration::Configuration, id: i64, workflow_scheme: models::WorkflowScheme) -> Result<models::WorkflowScheme, Error<UpdateWorkflowSchemeDraftError>> {
566 let p_id = id;
568 let p_workflow_scheme = workflow_scheme;
569
570 let uri_str = format!("{}/rest/api/2/workflowscheme/{id}/draft", configuration.base_path, id=p_id);
571 let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
572
573 if let Some(ref user_agent) = configuration.user_agent {
574 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
575 }
576 if let Some(ref token) = configuration.oauth_access_token {
577 req_builder = req_builder.bearer_auth(token.to_owned());
578 };
579 if let Some(ref auth_conf) = configuration.basic_auth {
580 req_builder = req_builder.basic_auth(auth_conf.0.to_owned(), auth_conf.1.to_owned());
581 };
582 req_builder = req_builder.json(&p_workflow_scheme);
583
584 let req = req_builder.build()?;
585 let resp = configuration.client.execute(req).await?;
586
587 let status = resp.status();
588
589 if !status.is_client_error() && !status.is_server_error() {
590 let content = resp.text().await?;
591 serde_json::from_str(&content).map_err(Error::from)
592 } else {
593 let content = resp.text().await?;
594 let entity: Option<UpdateWorkflowSchemeDraftError> = serde_json::from_str(&content).ok();
595 Err(Error::ResponseError(ResponseContent { status, content, entity }))
596 }
597}
598