added autogenerated rust server code
This commit is contained in:
		
							
								
								
									
										22
									
								
								Cargo.toml
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								Cargo.toml
									
									
									
									
									
								
							@@ -6,15 +6,9 @@ edition = "2021"
 | 
				
			|||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 | 
					# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[dependencies]
 | 
					[dependencies]
 | 
				
			||||||
# for web server
 | 
					
 | 
				
			||||||
rocket = { version = "0.5.0", features = ["json", "uuid"] }
 | 
					 | 
				
			||||||
rocket_dyn_templates = { version = "0.1.0", features = ["handlebars", "tera"] }
 | 
					 | 
				
			||||||
# for json serialization
 | 
					 | 
				
			||||||
serde = "1.0.196"
 | 
					 | 
				
			||||||
# for random number generation
 | 
					# for random number generation
 | 
				
			||||||
rand = "0.8.5"
 | 
					rand = "0.8.5"
 | 
				
			||||||
# for json serialization
 | 
					 | 
				
			||||||
serde_json = "1.0.113"
 | 
					 | 
				
			||||||
# for uuid generation
 | 
					# for uuid generation
 | 
				
			||||||
uuid = { version = "1.7.0", features = ["serde", "v4"] }
 | 
					uuid = { version = "1.7.0", features = ["serde", "v4"] }
 | 
				
			||||||
# for command line arguments
 | 
					# for command line arguments
 | 
				
			||||||
@@ -23,5 +17,17 @@ structopt = "0.3.23"
 | 
				
			|||||||
csv = "1.1.6"
 | 
					csv = "1.1.6"
 | 
				
			||||||
clap = { version = "4.3.24", features = ["derive"] }
 | 
					clap = { version = "4.3.24", features = ["derive"] }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					stv-rs = "0.3.0"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
stv-rs = "0.3.0"
 | 
					
 | 
				
			||||||
 | 
					serde = "1.0"
 | 
				
			||||||
 | 
					serde_derive = "1.0"
 | 
				
			||||||
 | 
					serde_yaml = "0.7"
 | 
				
			||||||
 | 
					serde_json = "1.0"
 | 
				
			||||||
 | 
					base64 = "~0.7.0"
 | 
				
			||||||
 | 
					futures = "0.1.16"
 | 
				
			||||||
 | 
					hyper = "0.11.6"
 | 
				
			||||||
 | 
					url = "1.5"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[dev-dependencies]
 | 
				
			||||||
 | 
					tokio-core = "*"
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										12
									
								
								docs/Authorization.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								docs/Authorization.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					# Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**to_date** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**from_date** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**user** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										11
									
								
								docs/Credentials.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								docs/Credentials.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					# Credentials
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**username** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**password** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										174
									
								
								docs/DefaultApi.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										174
									
								
								docs/DefaultApi.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,174 @@
 | 
				
			|||||||
 | 
					# \DefaultApi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					All URIs are relative to *https://localhost/api*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Method | HTTP request | Description
 | 
				
			||||||
 | 
					------------- | ------------- | -------------
 | 
				
			||||||
 | 
					[**auth_login_post**](DefaultApi.md#auth_login_post) | **Post** /auth/login | Authenticate user
 | 
				
			||||||
 | 
					[**auth_token_post**](DefaultApi.md#auth_token_post) | **Post** /auth/token | Generate authentication token for another user
 | 
				
			||||||
 | 
					[**elections_all_get**](DefaultApi.md#elections_all_get) | **Get** /elections/all | Get all existing elections
 | 
				
			||||||
 | 
					[**elections_create_post**](DefaultApi.md#elections_create_post) | **Post** /elections/create | Create new election
 | 
				
			||||||
 | 
					[**elections_id_get**](DefaultApi.md#elections_id_get) | **Get** /elections/{id} | Get all existing elections
 | 
				
			||||||
 | 
					[**elections_id_post**](DefaultApi.md#elections_id_post) | **Post** /elections/{id} | Vote in exsisting election
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **auth_login_post**
 | 
				
			||||||
 | 
					> ::models::InlineResponse200 auth_login_post(ctx, credentials)
 | 
				
			||||||
 | 
					Authenticate user
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **credentials** | [**Credentials**](Credentials.md)|  | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::InlineResponse200**](inline_response_200.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **auth_token_post**
 | 
				
			||||||
 | 
					> ::models::InlineResponse2001 auth_token_post(ctx, authorization, token)
 | 
				
			||||||
 | 
					Generate authentication token for another user
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **authorization** | **String**| Your authorization token | 
 | 
				
			||||||
 | 
					  **token** | [**Authorization**](Authorization.md)|  | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::InlineResponse2001**](inline_response_200_1.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **elections_all_get**
 | 
				
			||||||
 | 
					> ::models::ElectionList elections_all_get(ctx, authorization)
 | 
				
			||||||
 | 
					Get all existing elections
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **authorization** | **String**| Your authorization token | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::ElectionList**](ElectionList.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **elections_create_post**
 | 
				
			||||||
 | 
					> ::models::Election elections_create_post(ctx, authorization, election)
 | 
				
			||||||
 | 
					Create new election
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **authorization** | **String**| Your authorization token | 
 | 
				
			||||||
 | 
					  **election** | [**Election**](Election.md)|  | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::Election**](Election.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **elections_id_get**
 | 
				
			||||||
 | 
					> ::models::Election elections_id_get(ctx, authorization, id)
 | 
				
			||||||
 | 
					Get all existing elections
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **authorization** | **String**| Your authorization token | 
 | 
				
			||||||
 | 
					  **id** | **String**|  | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::Election**](Election.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# **elections_id_post**
 | 
				
			||||||
 | 
					> ::models::Vote elections_id_post(ctx, authorization, election)
 | 
				
			||||||
 | 
					Vote in exsisting election
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Required Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Name | Type | Description  | Notes
 | 
				
			||||||
 | 
					------------- | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					 **ctx** | **context.Context** | context containing the authentication | nil if no authentication
 | 
				
			||||||
 | 
					  **authorization** | **String**| Your authorization token | 
 | 
				
			||||||
 | 
					  **election** | [**Vote**](Vote.md)|  | 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Return type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[**::models::Vote**](Vote.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Authorization
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[JWT](../README.md#JWT)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### HTTP request headers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - **Content-Type**: application/json
 | 
				
			||||||
 | 
					 - **Accept**: application/json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										16
									
								
								docs/Election.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								docs/Election.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
				
			|||||||
 | 
					# Election
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**id** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**username** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**name** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**description** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**start_date** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**end_date** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**items** | [**Vec<::models::ElectionItem>**](ElectionItem.md) |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										11
									
								
								docs/ElectionItem.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								docs/ElectionItem.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					# ElectionItem
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**id** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**name** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										9
									
								
								docs/ElectionList.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								docs/ElectionList.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					# ElectionList
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										10
									
								
								docs/InlineResponse200.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								docs/InlineResponse200.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					# InlineResponse200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**token** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										10
									
								
								docs/InlineResponse2001.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								docs/InlineResponse2001.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					# InlineResponse2001
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**token** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								docs/User.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								docs/User.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					# User
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**id** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**username** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**password** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								docs/Vote.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								docs/Vote.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					# Vote
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**authorization** | [***::models::Authorization**](Authorization.md) |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**userid** | **String** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**data** | [**Vec<::models::VoteItem>**](VoteItem.md) |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										11
									
								
								docs/VoteItem.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								docs/VoteItem.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					# VoteItem
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Properties
 | 
				
			||||||
 | 
					Name | Type | Description | Notes
 | 
				
			||||||
 | 
					------------ | ------------- | ------------- | -------------
 | 
				
			||||||
 | 
					**item** | [***::models::ElectionItem**](ElectionItem.md) |  | [optional] [default to null]
 | 
				
			||||||
 | 
					**value** | **f32** |  | [optional] [default to null]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										26
									
								
								src/apis/client.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								src/apis/client.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					use std::rc::Rc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use hyper;
 | 
				
			||||||
 | 
					use super::configuration::Configuration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub struct APIClient<C: hyper::client::Connect> {
 | 
				
			||||||
 | 
					  configuration: Rc<Configuration<C>>,
 | 
				
			||||||
 | 
					  default_api: Box<::apis::DefaultApi>,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<C: hyper::client::Connect> APIClient<C> {
 | 
				
			||||||
 | 
					  pub fn new(configuration: Configuration<C>) -> APIClient<C> {
 | 
				
			||||||
 | 
					    let rc = Rc::new(configuration);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    APIClient {
 | 
				
			||||||
 | 
					      configuration: rc.clone(),
 | 
				
			||||||
 | 
					      default_api: Box::new(::apis::DefaultApiClient::new(rc.clone())),
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn default_api(&self) -> &::apis::DefaultApi{
 | 
				
			||||||
 | 
					    self.default_api.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										42
									
								
								src/apis/configuration.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								src/apis/configuration.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use hyper;
 | 
				
			||||||
 | 
					use std::collections::HashMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub struct Configuration<C: hyper::client::Connect> {
 | 
				
			||||||
 | 
					  pub base_path: String,
 | 
				
			||||||
 | 
					  pub user_agent: Option<String>,
 | 
				
			||||||
 | 
					  pub client: hyper::client::Client<C>,
 | 
				
			||||||
 | 
					  pub basic_auth: Option<BasicAuth>,
 | 
				
			||||||
 | 
					  pub oauth_access_token: Option<String>,
 | 
				
			||||||
 | 
					  pub api_key: Option<ApiKey>,
 | 
				
			||||||
 | 
					  // TODO: take an oauth2 token source, similar to the go one
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub type BasicAuth = (String, Option<String>);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub struct ApiKey {
 | 
				
			||||||
 | 
					  pub prefix: Option<String>,
 | 
				
			||||||
 | 
					  pub key: String,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<C: hyper::client::Connect> Configuration<C> {
 | 
				
			||||||
 | 
					  pub fn new(client: hyper::client::Client<C>) -> Configuration<C> {
 | 
				
			||||||
 | 
					    Configuration {
 | 
				
			||||||
 | 
					      base_path: "https://localhost/api".to_owned(),
 | 
				
			||||||
 | 
					      user_agent: Some("Swagger-Codegen/0.0.1/rust".to_owned()),
 | 
				
			||||||
 | 
					      client: client,
 | 
				
			||||||
 | 
					      basic_auth: None,
 | 
				
			||||||
 | 
					      oauth_access_token: None,
 | 
				
			||||||
 | 
					      api_key: None,
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										480
									
								
								src/apis/default_api.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										480
									
								
								src/apis/default_api.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,480 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use std::rc::Rc;
 | 
				
			||||||
 | 
					use std::borrow::Borrow;
 | 
				
			||||||
 | 
					use std::borrow::Cow;
 | 
				
			||||||
 | 
					use std::collections::HashMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use hyper;
 | 
				
			||||||
 | 
					use serde_json;
 | 
				
			||||||
 | 
					use futures;
 | 
				
			||||||
 | 
					use futures::{Future, Stream};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use hyper::header::UserAgent;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use super::{Error, configuration};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub struct DefaultApiClient<C: hyper::client::Connect> {
 | 
				
			||||||
 | 
					    configuration: Rc<configuration::Configuration<C>>,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<C: hyper::client::Connect> DefaultApiClient<C> {
 | 
				
			||||||
 | 
					    pub fn new(configuration: Rc<configuration::Configuration<C>>) -> DefaultApiClient<C> {
 | 
				
			||||||
 | 
					        DefaultApiClient {
 | 
				
			||||||
 | 
					            configuration: configuration,
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub trait DefaultApi {
 | 
				
			||||||
 | 
					    fn auth_login_post(&self, credentials: ::models::Credentials) -> Box<Future<Item = ::models::InlineResponse200, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					    fn auth_token_post(&self, authorization: &str, token: ::models::Authorization) -> Box<Future<Item = ::models::InlineResponse2001, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					    fn elections_all_get(&self, authorization: &str) -> Box<Future<Item = ::models::ElectionList, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					    fn elections_create_post(&self, authorization: &str, election: ::models::Election) -> Box<Future<Item = ::models::Election, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					    fn elections_id_get(&self, authorization: &str, id: &str) -> Box<Future<Item = ::models::Election, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					    fn elections_id_post(&self, authorization: &str, election: ::models::Vote) -> Box<Future<Item = ::models::Vote, Error = Error<serde_json::Value>>>;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<C: hyper::client::Connect>DefaultApi for DefaultApiClient<C> {
 | 
				
			||||||
 | 
					    fn auth_login_post(&self, credentials: ::models::Credentials) -> Box<Future<Item = ::models::InlineResponse200, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Post;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/auth/login?{}", configuration.base_path, query_string);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let serialized = serde_json::to_string(&credentials).unwrap();
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentType::json());
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentLength(serialized.len() as u64));
 | 
				
			||||||
 | 
					        req.set_body(serialized);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::InlineResponse200, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fn auth_token_post(&self, authorization: &str, token: ::models::Authorization) -> Box<Future<Item = ::models::InlineResponse2001, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Post;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/auth/token?{}", configuration.base_path, query_string);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            let mut headers = req.headers_mut();
 | 
				
			||||||
 | 
					            headers.set_raw("Authorization", authorization);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let serialized = serde_json::to_string(&token).unwrap();
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentType::json());
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentLength(serialized.len() as u64));
 | 
				
			||||||
 | 
					        req.set_body(serialized);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::InlineResponse2001, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fn elections_all_get(&self, authorization: &str) -> Box<Future<Item = ::models::ElectionList, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Get;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/elections/all?{}", configuration.base_path, query_string);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            let mut headers = req.headers_mut();
 | 
				
			||||||
 | 
					            headers.set_raw("Authorization", authorization);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::ElectionList, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fn elections_create_post(&self, authorization: &str, election: ::models::Election) -> Box<Future<Item = ::models::Election, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Post;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/elections/create?{}", configuration.base_path, query_string);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            let mut headers = req.headers_mut();
 | 
				
			||||||
 | 
					            headers.set_raw("Authorization", authorization);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let serialized = serde_json::to_string(&election).unwrap();
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentType::json());
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentLength(serialized.len() as u64));
 | 
				
			||||||
 | 
					        req.set_body(serialized);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::Election, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fn elections_id_get(&self, authorization: &str, id: &str) -> Box<Future<Item = ::models::Election, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Get;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/elections/{id}?{}", configuration.base_path, query_string, id=id);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            let mut headers = req.headers_mut();
 | 
				
			||||||
 | 
					            headers.set_raw("Authorization", authorization);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::Election, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fn elections_id_post(&self, authorization: &str, election: ::models::Vote) -> Box<Future<Item = ::models::Vote, Error = Error<serde_json::Value>>> {
 | 
				
			||||||
 | 
					        let configuration: &configuration::Configuration<C> = self.configuration.borrow();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut auth_headers = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        let mut auth_query = HashMap::<String, String>::new();
 | 
				
			||||||
 | 
					        if let Some(ref apikey) = configuration.api_key {
 | 
				
			||||||
 | 
					            let key = apikey.key.clone();
 | 
				
			||||||
 | 
					            let val = match apikey.prefix {
 | 
				
			||||||
 | 
					                Some(ref prefix) => format!("{} {}", prefix, key),
 | 
				
			||||||
 | 
					                None => key,
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					            auth_headers.insert("Authorization".to_owned(), val);
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let method = hyper::Method::Post;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let query_string = {
 | 
				
			||||||
 | 
					            let mut query = ::url::form_urlencoded::Serializer::new(String::new());
 | 
				
			||||||
 | 
					            for (key, val) in &auth_query {
 | 
				
			||||||
 | 
					                query.append_pair(key, val);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            query.finish()
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        let uri_str = format!("{}/elections/{id}?{}", configuration.base_path, query_string);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // TODO(farcaller): handle error
 | 
				
			||||||
 | 
					        // if let Err(e) = uri {
 | 
				
			||||||
 | 
					        //     return Box::new(futures::future::err(e));
 | 
				
			||||||
 | 
					        // }
 | 
				
			||||||
 | 
					        let mut uri: hyper::Uri = uri_str.parse().unwrap();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let mut req = hyper::Request::new(method, uri);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if let Some(ref user_agent) = configuration.user_agent {
 | 
				
			||||||
 | 
					            req.headers_mut().set(UserAgent::new(Cow::Owned(user_agent.clone())));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            let mut headers = req.headers_mut();
 | 
				
			||||||
 | 
					            headers.set_raw("Authorization", authorization);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for (key, val) in auth_headers {
 | 
				
			||||||
 | 
					            req.headers_mut().set_raw(key, val);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        let serialized = serde_json::to_string(&election).unwrap();
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentType::json());
 | 
				
			||||||
 | 
					        req.headers_mut().set(hyper::header::ContentLength(serialized.len() as u64));
 | 
				
			||||||
 | 
					        req.set_body(serialized);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // send request
 | 
				
			||||||
 | 
					        Box::new(
 | 
				
			||||||
 | 
					        configuration.client.request(req)
 | 
				
			||||||
 | 
					            .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            .and_then(|resp| {
 | 
				
			||||||
 | 
					                let status = resp.status();
 | 
				
			||||||
 | 
					                resp.body().concat2()
 | 
				
			||||||
 | 
					                    .and_then(move |body| Ok((status, body)))
 | 
				
			||||||
 | 
					                    .map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|(status, body)| {
 | 
				
			||||||
 | 
					                if status.is_success() {
 | 
				
			||||||
 | 
					                    Ok(body)
 | 
				
			||||||
 | 
					                } else {
 | 
				
			||||||
 | 
					                    Err(Error::from((status, &*body)))
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            .and_then(|body| {
 | 
				
			||||||
 | 
					                let parsed: Result<::models::Vote, _> = serde_json::from_slice(&body);
 | 
				
			||||||
 | 
					                parsed.map_err(|e| Error::from(e))
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										57
									
								
								src/apis/mod.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								src/apis/mod.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,57 @@
 | 
				
			|||||||
 | 
					use hyper;
 | 
				
			||||||
 | 
					use serde;
 | 
				
			||||||
 | 
					use serde_json;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug)]
 | 
				
			||||||
 | 
					pub enum Error<T> {
 | 
				
			||||||
 | 
					    Hyper(hyper::Error),
 | 
				
			||||||
 | 
					    Serde(serde_json::Error),
 | 
				
			||||||
 | 
					    ApiError(ApiError<T>),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug)]
 | 
				
			||||||
 | 
					pub struct ApiError<T> {
 | 
				
			||||||
 | 
					    pub code: hyper::StatusCode,
 | 
				
			||||||
 | 
					    pub content: Option<T>,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<'de, T> From<(hyper::StatusCode, &'de [u8])> for Error<T> 
 | 
				
			||||||
 | 
					    where T: serde::Deserialize<'de> {
 | 
				
			||||||
 | 
					    fn from(e: (hyper::StatusCode, &'de [u8])) -> Self {
 | 
				
			||||||
 | 
					        if e.1.len() == 0 {
 | 
				
			||||||
 | 
					            return Error::ApiError(ApiError{
 | 
				
			||||||
 | 
					                code: e.0,
 | 
				
			||||||
 | 
					                content: None,
 | 
				
			||||||
 | 
					            });
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        match serde_json::from_slice::<T>(e.1) {
 | 
				
			||||||
 | 
					            Ok(t) => Error::ApiError(ApiError{
 | 
				
			||||||
 | 
					                code: e.0,
 | 
				
			||||||
 | 
					                content: Some(t),
 | 
				
			||||||
 | 
					            }),
 | 
				
			||||||
 | 
					            Err(e) => {
 | 
				
			||||||
 | 
					                Error::from(e)
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<T> From<hyper::Error> for Error<T> {
 | 
				
			||||||
 | 
					    fn from(e: hyper::Error) -> Self {
 | 
				
			||||||
 | 
					        return Error::Hyper(e)
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl<T> From<serde_json::Error> for Error<T> {
 | 
				
			||||||
 | 
					    fn from(e: serde_json::Error) -> Self {
 | 
				
			||||||
 | 
					        return Error::Serde(e)
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use super::models::*;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mod default_api;
 | 
				
			||||||
 | 
					pub use self::default_api::{ DefaultApi, DefaultApiClient };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub mod configuration;
 | 
				
			||||||
 | 
					pub mod client;
 | 
				
			||||||
							
								
								
									
										11
									
								
								src/lib.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								src/lib.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					#[macro_use]
 | 
				
			||||||
 | 
					extern crate serde_derive;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					extern crate hyper;
 | 
				
			||||||
 | 
					extern crate serde;
 | 
				
			||||||
 | 
					extern crate serde_json;
 | 
				
			||||||
 | 
					extern crate futures;
 | 
				
			||||||
 | 
					extern crate url;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pub mod apis;
 | 
				
			||||||
 | 
					pub mod models;
 | 
				
			||||||
							
								
								
									
										88
									
								
								src/models/authorization.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								src/models/authorization.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct Authorization {
 | 
				
			||||||
 | 
					  #[serde(rename = "to_date")]
 | 
				
			||||||
 | 
					  to_date: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "from_date")]
 | 
				
			||||||
 | 
					  from_date: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "user")]
 | 
				
			||||||
 | 
					  user: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl Authorization {
 | 
				
			||||||
 | 
					  pub fn new() -> Authorization {
 | 
				
			||||||
 | 
					    Authorization {
 | 
				
			||||||
 | 
					      to_date: None,
 | 
				
			||||||
 | 
					      from_date: None,
 | 
				
			||||||
 | 
					      user: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_to_date(&mut self, to_date: String) {
 | 
				
			||||||
 | 
					    self.to_date = Some(to_date);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_to_date(mut self, to_date: String) -> Authorization {
 | 
				
			||||||
 | 
					    self.to_date = Some(to_date);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn to_date(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.to_date.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_to_date(&mut self) {
 | 
				
			||||||
 | 
					    self.to_date = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_from_date(&mut self, from_date: String) {
 | 
				
			||||||
 | 
					    self.from_date = Some(from_date);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_from_date(mut self, from_date: String) -> Authorization {
 | 
				
			||||||
 | 
					    self.from_date = Some(from_date);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn from_date(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.from_date.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_from_date(&mut self) {
 | 
				
			||||||
 | 
					    self.from_date = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_user(&mut self, user: String) {
 | 
				
			||||||
 | 
					    self.user = Some(user);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_user(mut self, user: String) -> Authorization {
 | 
				
			||||||
 | 
					    self.user = Some(user);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn user(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.user.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_user(&mut self) {
 | 
				
			||||||
 | 
					    self.user = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										68
									
								
								src/models/credentials.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								src/models/credentials.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,68 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct Credentials {
 | 
				
			||||||
 | 
					  #[serde(rename = "username")]
 | 
				
			||||||
 | 
					  username: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "password")]
 | 
				
			||||||
 | 
					  password: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl Credentials {
 | 
				
			||||||
 | 
					  pub fn new() -> Credentials {
 | 
				
			||||||
 | 
					    Credentials {
 | 
				
			||||||
 | 
					      username: None,
 | 
				
			||||||
 | 
					      password: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_username(&mut self, username: String) {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_username(mut self, username: String) -> Credentials {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn username(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.username.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_username(&mut self) {
 | 
				
			||||||
 | 
					    self.username = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_password(&mut self, password: String) {
 | 
				
			||||||
 | 
					    self.password = Some(password);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_password(mut self, password: String) -> Credentials {
 | 
				
			||||||
 | 
					    self.password = Some(password);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn password(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.password.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_password(&mut self) {
 | 
				
			||||||
 | 
					    self.password = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										168
									
								
								src/models/election.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										168
									
								
								src/models/election.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,168 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct Election {
 | 
				
			||||||
 | 
					  #[serde(rename = "id")]
 | 
				
			||||||
 | 
					  id: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "username")]
 | 
				
			||||||
 | 
					  username: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "name")]
 | 
				
			||||||
 | 
					  name: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "description")]
 | 
				
			||||||
 | 
					  description: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "start_date")]
 | 
				
			||||||
 | 
					  start_date: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "end_date")]
 | 
				
			||||||
 | 
					  end_date: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "items")]
 | 
				
			||||||
 | 
					  items: Option<Vec<::models::ElectionItem>>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl Election {
 | 
				
			||||||
 | 
					  pub fn new() -> Election {
 | 
				
			||||||
 | 
					    Election {
 | 
				
			||||||
 | 
					      id: None,
 | 
				
			||||||
 | 
					      username: None,
 | 
				
			||||||
 | 
					      name: None,
 | 
				
			||||||
 | 
					      description: None,
 | 
				
			||||||
 | 
					      start_date: None,
 | 
				
			||||||
 | 
					      end_date: None,
 | 
				
			||||||
 | 
					      items: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_id(&mut self, id: String) {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_id(mut self, id: String) -> Election {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn id(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.id.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_id(&mut self) {
 | 
				
			||||||
 | 
					    self.id = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_username(&mut self, username: String) {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_username(mut self, username: String) -> Election {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn username(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.username.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_username(&mut self) {
 | 
				
			||||||
 | 
					    self.username = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_name(&mut self, name: String) {
 | 
				
			||||||
 | 
					    self.name = Some(name);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_name(mut self, name: String) -> Election {
 | 
				
			||||||
 | 
					    self.name = Some(name);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn name(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.name.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_name(&mut self) {
 | 
				
			||||||
 | 
					    self.name = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_description(&mut self, description: String) {
 | 
				
			||||||
 | 
					    self.description = Some(description);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_description(mut self, description: String) -> Election {
 | 
				
			||||||
 | 
					    self.description = Some(description);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn description(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.description.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_description(&mut self) {
 | 
				
			||||||
 | 
					    self.description = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_start_date(&mut self, start_date: String) {
 | 
				
			||||||
 | 
					    self.start_date = Some(start_date);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_start_date(mut self, start_date: String) -> Election {
 | 
				
			||||||
 | 
					    self.start_date = Some(start_date);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn start_date(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.start_date.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_start_date(&mut self) {
 | 
				
			||||||
 | 
					    self.start_date = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_end_date(&mut self, end_date: String) {
 | 
				
			||||||
 | 
					    self.end_date = Some(end_date);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_end_date(mut self, end_date: String) -> Election {
 | 
				
			||||||
 | 
					    self.end_date = Some(end_date);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn end_date(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.end_date.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_end_date(&mut self) {
 | 
				
			||||||
 | 
					    self.end_date = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_items(&mut self, items: Vec<::models::ElectionItem>) {
 | 
				
			||||||
 | 
					    self.items = Some(items);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_items(mut self, items: Vec<::models::ElectionItem>) -> Election {
 | 
				
			||||||
 | 
					    self.items = Some(items);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn items(&self) -> Option<&Vec<::models::ElectionItem>> {
 | 
				
			||||||
 | 
					    self.items.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_items(&mut self) {
 | 
				
			||||||
 | 
					    self.items = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										68
									
								
								src/models/election_item.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								src/models/election_item.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,68 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct ElectionItem {
 | 
				
			||||||
 | 
					  #[serde(rename = "id")]
 | 
				
			||||||
 | 
					  id: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "name")]
 | 
				
			||||||
 | 
					  name: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl ElectionItem {
 | 
				
			||||||
 | 
					  pub fn new() -> ElectionItem {
 | 
				
			||||||
 | 
					    ElectionItem {
 | 
				
			||||||
 | 
					      id: None,
 | 
				
			||||||
 | 
					      name: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_id(&mut self, id: String) {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_id(mut self, id: String) -> ElectionItem {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn id(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.id.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_id(&mut self) {
 | 
				
			||||||
 | 
					    self.id = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_name(&mut self, name: String) {
 | 
				
			||||||
 | 
					    self.name = Some(name);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_name(mut self, name: String) -> ElectionItem {
 | 
				
			||||||
 | 
					    self.name = Some(name);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn name(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.name.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_name(&mut self) {
 | 
				
			||||||
 | 
					    self.name = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										28
									
								
								src/models/election_list.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/models/election_list.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct ElectionList {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl ElectionList {
 | 
				
			||||||
 | 
					  pub fn new() -> ElectionList {
 | 
				
			||||||
 | 
					    ElectionList {
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										48
									
								
								src/models/inline_response_200.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								src/models/inline_response_200.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct InlineResponse200 {
 | 
				
			||||||
 | 
					  #[serde(rename = "token")]
 | 
				
			||||||
 | 
					  token: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl InlineResponse200 {
 | 
				
			||||||
 | 
					  pub fn new() -> InlineResponse200 {
 | 
				
			||||||
 | 
					    InlineResponse200 {
 | 
				
			||||||
 | 
					      token: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_token(&mut self, token: String) {
 | 
				
			||||||
 | 
					    self.token = Some(token);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_token(mut self, token: String) -> InlineResponse200 {
 | 
				
			||||||
 | 
					    self.token = Some(token);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn token(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.token.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_token(&mut self) {
 | 
				
			||||||
 | 
					    self.token = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										48
									
								
								src/models/inline_response_200_1.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								src/models/inline_response_200_1.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct InlineResponse2001 {
 | 
				
			||||||
 | 
					  #[serde(rename = "token")]
 | 
				
			||||||
 | 
					  token: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl InlineResponse2001 {
 | 
				
			||||||
 | 
					  pub fn new() -> InlineResponse2001 {
 | 
				
			||||||
 | 
					    InlineResponse2001 {
 | 
				
			||||||
 | 
					      token: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_token(&mut self, token: String) {
 | 
				
			||||||
 | 
					    self.token = Some(token);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_token(mut self, token: String) -> InlineResponse2001 {
 | 
				
			||||||
 | 
					    self.token = Some(token);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn token(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.token.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_token(&mut self) {
 | 
				
			||||||
 | 
					    self.token = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										23
									
								
								src/models/mod.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								src/models/mod.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					mod authorization;
 | 
				
			||||||
 | 
					pub use self::authorization::Authorization;
 | 
				
			||||||
 | 
					mod credentials;
 | 
				
			||||||
 | 
					pub use self::credentials::Credentials;
 | 
				
			||||||
 | 
					mod election;
 | 
				
			||||||
 | 
					pub use self::election::Election;
 | 
				
			||||||
 | 
					mod election_item;
 | 
				
			||||||
 | 
					pub use self::election_item::ElectionItem;
 | 
				
			||||||
 | 
					mod election_list;
 | 
				
			||||||
 | 
					pub use self::election_list::ElectionList;
 | 
				
			||||||
 | 
					mod inline_response_200;
 | 
				
			||||||
 | 
					pub use self::inline_response_200::InlineResponse200;
 | 
				
			||||||
 | 
					mod inline_response_200_1;
 | 
				
			||||||
 | 
					pub use self::inline_response_200_1::InlineResponse2001;
 | 
				
			||||||
 | 
					mod user;
 | 
				
			||||||
 | 
					pub use self::user::User;
 | 
				
			||||||
 | 
					mod vote;
 | 
				
			||||||
 | 
					pub use self::vote::Vote;
 | 
				
			||||||
 | 
					mod vote_item;
 | 
				
			||||||
 | 
					pub use self::vote_item::VoteItem;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// TODO(farcaller): sort out files
 | 
				
			||||||
 | 
					pub struct File;
 | 
				
			||||||
							
								
								
									
										88
									
								
								src/models/user.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								src/models/user.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct User {
 | 
				
			||||||
 | 
					  #[serde(rename = "id")]
 | 
				
			||||||
 | 
					  id: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "username")]
 | 
				
			||||||
 | 
					  username: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "password")]
 | 
				
			||||||
 | 
					  password: Option<String>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl User {
 | 
				
			||||||
 | 
					  pub fn new() -> User {
 | 
				
			||||||
 | 
					    User {
 | 
				
			||||||
 | 
					      id: None,
 | 
				
			||||||
 | 
					      username: None,
 | 
				
			||||||
 | 
					      password: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_id(&mut self, id: String) {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_id(mut self, id: String) -> User {
 | 
				
			||||||
 | 
					    self.id = Some(id);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn id(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.id.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_id(&mut self) {
 | 
				
			||||||
 | 
					    self.id = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_username(&mut self, username: String) {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_username(mut self, username: String) -> User {
 | 
				
			||||||
 | 
					    self.username = Some(username);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn username(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.username.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_username(&mut self) {
 | 
				
			||||||
 | 
					    self.username = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_password(&mut self, password: String) {
 | 
				
			||||||
 | 
					    self.password = Some(password);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_password(mut self, password: String) -> User {
 | 
				
			||||||
 | 
					    self.password = Some(password);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn password(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.password.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_password(&mut self) {
 | 
				
			||||||
 | 
					    self.password = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										88
									
								
								src/models/vote.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								src/models/vote.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct Vote {
 | 
				
			||||||
 | 
					  #[serde(rename = "authorization")]
 | 
				
			||||||
 | 
					  authorization: Option<::models::Authorization>,
 | 
				
			||||||
 | 
					  #[serde(rename = "userid")]
 | 
				
			||||||
 | 
					  userid: Option<String>,
 | 
				
			||||||
 | 
					  #[serde(rename = "data")]
 | 
				
			||||||
 | 
					  data: Option<Vec<::models::VoteItem>>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl Vote {
 | 
				
			||||||
 | 
					  pub fn new() -> Vote {
 | 
				
			||||||
 | 
					    Vote {
 | 
				
			||||||
 | 
					      authorization: None,
 | 
				
			||||||
 | 
					      userid: None,
 | 
				
			||||||
 | 
					      data: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_authorization(&mut self, authorization: ::models::Authorization) {
 | 
				
			||||||
 | 
					    self.authorization = Some(authorization);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_authorization(mut self, authorization: ::models::Authorization) -> Vote {
 | 
				
			||||||
 | 
					    self.authorization = Some(authorization);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn authorization(&self) -> Option<&::models::Authorization> {
 | 
				
			||||||
 | 
					    self.authorization.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_authorization(&mut self) {
 | 
				
			||||||
 | 
					    self.authorization = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_userid(&mut self, userid: String) {
 | 
				
			||||||
 | 
					    self.userid = Some(userid);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_userid(mut self, userid: String) -> Vote {
 | 
				
			||||||
 | 
					    self.userid = Some(userid);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn userid(&self) -> Option<&String> {
 | 
				
			||||||
 | 
					    self.userid.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_userid(&mut self) {
 | 
				
			||||||
 | 
					    self.userid = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_data(&mut self, data: Vec<::models::VoteItem>) {
 | 
				
			||||||
 | 
					    self.data = Some(data);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_data(mut self, data: Vec<::models::VoteItem>) -> Vote {
 | 
				
			||||||
 | 
					    self.data = Some(data);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn data(&self) -> Option<&Vec<::models::VoteItem>> {
 | 
				
			||||||
 | 
					    self.data.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_data(&mut self) {
 | 
				
			||||||
 | 
					    self.data = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										68
									
								
								src/models/vote_item.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								src/models/vote_item.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,68 @@
 | 
				
			|||||||
 | 
					/* 
 | 
				
			||||||
 | 
					 * vote-rs API
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * API for conducting electronic voting
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * OpenAPI spec version: 0.0.1
 | 
				
			||||||
 | 
					 * 
 | 
				
			||||||
 | 
					 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[allow(unused_imports)]
 | 
				
			||||||
 | 
					use serde_json::Value;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#[derive(Debug, Serialize, Deserialize)]
 | 
				
			||||||
 | 
					pub struct VoteItem {
 | 
				
			||||||
 | 
					  #[serde(rename = "item")]
 | 
				
			||||||
 | 
					  item: Option<::models::ElectionItem>,
 | 
				
			||||||
 | 
					  #[serde(rename = "value")]
 | 
				
			||||||
 | 
					  value: Option<f32>
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					impl VoteItem {
 | 
				
			||||||
 | 
					  pub fn new() -> VoteItem {
 | 
				
			||||||
 | 
					    VoteItem {
 | 
				
			||||||
 | 
					      item: None,
 | 
				
			||||||
 | 
					      value: None
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_item(&mut self, item: ::models::ElectionItem) {
 | 
				
			||||||
 | 
					    self.item = Some(item);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_item(mut self, item: ::models::ElectionItem) -> VoteItem {
 | 
				
			||||||
 | 
					    self.item = Some(item);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn item(&self) -> Option<&::models::ElectionItem> {
 | 
				
			||||||
 | 
					    self.item.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_item(&mut self) {
 | 
				
			||||||
 | 
					    self.item = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn set_value(&mut self, value: f32) {
 | 
				
			||||||
 | 
					    self.value = Some(value);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn with_value(mut self, value: f32) -> VoteItem {
 | 
				
			||||||
 | 
					    self.value = Some(value);
 | 
				
			||||||
 | 
					    self
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn value(&self) -> Option<&f32> {
 | 
				
			||||||
 | 
					    self.value.as_ref()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  pub fn reset_value(&mut self) {
 | 
				
			||||||
 | 
					    self.value = None;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -8,7 +8,6 @@ use std::path::Path;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
use stv_rs::parse::parse_election;
 | 
					use stv_rs::parse::parse_election;
 | 
				
			||||||
use stv_rs::meek::stv_droop;
 | 
					use stv_rs::meek::stv_droop;
 | 
				
			||||||
use stv_rs::types::Election;
 | 
					use stv_rs::types::Election;
 | 
				
			||||||
@@ -29,9 +28,6 @@ pub fn blt_to_string_results(blt: String) -> String {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#[derive(Clone)]
 | 
					#[derive(Clone)]
 | 
				
			||||||
struct Ballot {
 | 
					struct Ballot {
 | 
				
			||||||
    weight: i32,
 | 
					    weight: i32,
 | 
				
			||||||
@@ -85,7 +81,10 @@ pub fn election_data_to_blt(election_data: ElectionData) -> String {
 | 
				
			|||||||
    return blt;
 | 
					    return blt;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
pub fn csv_to_election_data(csv: &str, num_seats: i32, title: String) -> ElectionData {
 | 
					pub fn csv_to_election_data(csv: &str, num_seats: i32, title: String) -> ElectionData {
 | 
				
			||||||
 | 
					    //TODO: use a proper csv parser, instead of splitting by delimiter
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //read the csv file and convert it to a ballot
 | 
					    //read the csv file and convert it to a ballot
 | 
				
			||||||
    let delimiter = ",";
 | 
					    let delimiter = ",";
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
@@ -139,7 +138,6 @@ pub fn csv_to_election_data(csv: &str, num_seats: i32, title: String) -> Electio
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
        ballots.push(ballot);
 | 
					        ballots.push(ballot);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    //deduplicate the ballots
 | 
					    //deduplicate the ballots
 | 
				
			||||||
    let mut deduped_ballots: Vec<Ballot> = Vec::new();
 | 
					    let mut deduped_ballots: Vec<Ballot> = Vec::new();
 | 
				
			||||||
    for ballot in ballots {
 | 
					    for ballot in ballots {
 | 
				
			||||||
@@ -155,7 +153,6 @@ pub fn csv_to_election_data(csv: &str, num_seats: i32, title: String) -> Electio
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    ballots = deduped_ballots;
 | 
					    ballots = deduped_ballots;
 | 
				
			||||||
 | 
					 | 
				
			||||||
    let election_data = ElectionData {
 | 
					    let election_data = ElectionData {
 | 
				
			||||||
        num_candidates: num_candidates,
 | 
					        num_candidates: num_candidates,
 | 
				
			||||||
        num_seats: num_seats,
 | 
					        num_seats: num_seats,
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user