Fix Restsharp / Move to Postgresql
This commit is contained in:
@@ -2,9 +2,10 @@
|
||||
using System.Collections.Generic;
|
||||
using LaDOSE.DTO;
|
||||
using LaDOSE.REST.Event;
|
||||
using Newtonsoft.Json;
|
||||
using RestSharp;
|
||||
using RestSharp.Authenticators;
|
||||
using RestSharp.Serialization.Json;
|
||||
|
||||
|
||||
namespace LaDOSE.REST
|
||||
{
|
||||
@@ -29,33 +30,29 @@ namespace LaDOSE.REST
|
||||
public void Connect(Uri url, string user, string password)
|
||||
{
|
||||
Client = new RestClient(url);
|
||||
string token = GetToken(user, password);
|
||||
Client = new RestClient(url, options =>
|
||||
{
|
||||
#if DEBUG
|
||||
Client.Timeout = 999*1000;
|
||||
options.MaxTimeout = Int32.MaxValue;
|
||||
#endif
|
||||
options.Authenticator = new JwtAuthenticator("token");
|
||||
});
|
||||
|
||||
this.username = user;
|
||||
this.password = password;
|
||||
GetToken(user, password);
|
||||
|
||||
}
|
||||
|
||||
private void GetToken(string user, string password)
|
||||
private string GetToken(string user, string password)
|
||||
{
|
||||
var restRequest = new RestRequest("users/auth", Method.POST);
|
||||
var restRequest = new RestRequest("users/auth", Method.Post);
|
||||
restRequest.AddJsonBody(new {username = user, password = password});
|
||||
|
||||
var response = Client.Post(restRequest);
|
||||
if (response.IsSuccessful)
|
||||
{
|
||||
JsonDeserializer d = new JsonDeserializer();
|
||||
var applicationUser = d.Deserialize<ApplicationUserDTO>(response);
|
||||
this.Auth = applicationUser;
|
||||
Client.Authenticator = new JwtAuthenticator($"{applicationUser.Token}");
|
||||
RaiseUpdatedJwtEvent(new UpdatedJwtEventHandler(this.Auth));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
throw new Exception("unable to contact services");
|
||||
}
|
||||
|
||||
var response = Client.Post<ApplicationUserDTO>(restRequest);
|
||||
//var applicationUser = JsonConvert.DeserializeObject<ApplicationUserDTO>(response.Content);
|
||||
this.Auth = response;
|
||||
return response.Token;
|
||||
}
|
||||
|
||||
private void RaiseUpdatedJwtEvent(UpdatedJwtEventHandler auth)
|
||||
@@ -75,120 +72,122 @@ namespace LaDOSE.REST
|
||||
}
|
||||
}
|
||||
|
||||
#region PostFix
|
||||
|
||||
private T Post<T>(string resource,T entity)
|
||||
{
|
||||
var json = new RestSharp.Serialization.Json.JsonSerializer();
|
||||
var jsonD = new RestSharp.Serialization.Json.JsonDeserializer();
|
||||
var request = new RestRequest();
|
||||
request.Method = Method.POST;
|
||||
request.Resource = resource;
|
||||
request.AddHeader("Accept", "application/json");
|
||||
request.AddHeader("Content-type", "application/json");
|
||||
request.Parameters.Clear();
|
||||
request.AddParameter("application/json; charset=utf-8", json.Serialize(entity), ParameterType.RequestBody);
|
||||
request.AddObject(entity);
|
||||
var response = Client.Execute(request);
|
||||
//var content = response.Content; // raw content as string
|
||||
try
|
||||
{
|
||||
return jsonD.Deserialize<T>(response);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return default(T);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
private R Post<P,R>(string resource, P entity)
|
||||
{
|
||||
var json = new RestSharp.Serialization.Json.JsonSerializer();
|
||||
var jsonD = new RestSharp.Serialization.Json.JsonDeserializer();
|
||||
var request = new RestRequest();
|
||||
request.Method = Method.POST;
|
||||
request.Resource = resource;
|
||||
request.AddHeader("Accept", "application/json");
|
||||
request.AddHeader("Content-type", "application/json");
|
||||
request.Parameters.Clear();
|
||||
request.AddParameter("application/json; charset=utf-8", json.Serialize(entity), ParameterType.RequestBody);
|
||||
//request.AddObject(entity);
|
||||
var response = Client.Execute(request);
|
||||
//var content = response.Content; // raw content as string
|
||||
try
|
||||
{
|
||||
return jsonD.Deserialize<R>(response);
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
return default(R);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
// #region PostFix
|
||||
//
|
||||
// private T Post<T>(string resource,T entity)
|
||||
// {
|
||||
// var json = new RestSharp.Serialization.Json.JsonSerializer();
|
||||
// var jsonD = new RestSharp.Serialization.Json.JsonDeserializer();
|
||||
// var request = new RestRequest();
|
||||
// request.Method = Method.Post;
|
||||
// request.Resource = resource;
|
||||
// request.AddHeader("Accept", "application/json");
|
||||
// request.AddHeader("Content-type", "application/json");
|
||||
// request.Parameters.Clear();
|
||||
// request.AddParameter("application/json; charset=utf-8", json.Serialize(entity), ParameterType.RequestBody);
|
||||
// request.AddObject(entity);
|
||||
// var response = Client.Execute(request);
|
||||
// //var content = response.Content; // raw content as string
|
||||
// try
|
||||
// {
|
||||
// return jsonD.Deserialize<T>(response);
|
||||
// }
|
||||
// catch (Exception)
|
||||
// {
|
||||
// return default(T);
|
||||
// }
|
||||
//
|
||||
//
|
||||
// }
|
||||
// private R Post<P,R>(string resource, P entity)
|
||||
// {
|
||||
// var json = new RestSharp.Serialization.Json.JsonSerializer();
|
||||
// var jsonD = new RestSharp.Serialization.Json.JsonDeserializer();
|
||||
// var request = new RestRequest();
|
||||
// request.Method = Method.Post;
|
||||
// request.Resource = resource;
|
||||
// request.AddHeader("Accept", "application/json");
|
||||
// request.AddHeader("Content-type", "application/json");
|
||||
// request.Parameters.Clear();
|
||||
// request.AddParameter("application/json; charset=utf-8", json.Serialize(entity), ParameterType.RequestBody);
|
||||
// //request.AddObject(entity);
|
||||
// var response = Client.Execute(request);
|
||||
// //var content = response.Content; // raw content as string
|
||||
// try
|
||||
// {
|
||||
// return jsonD.Deserialize<R>(response);
|
||||
// }
|
||||
// catch (Exception)
|
||||
// {
|
||||
// return default(R);
|
||||
// }
|
||||
//
|
||||
//
|
||||
// }
|
||||
//
|
||||
// #endregion
|
||||
|
||||
#region WordPress
|
||||
public List<WPEventDTO> GetEvents()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/wordpress/WPEvent", Method.GET);
|
||||
var restRequest = new RestRequest("/api/wordpress/WPEvent", Method.Get);
|
||||
var restResponse = Client.Get<List<WPEventDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
public WPEventDTO GetNextEvent()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/wordpress/NextEvent", Method.GET);
|
||||
var restRequest = new RestRequest("/api/wordpress/NextEvent", Method.Get);
|
||||
var restResponse = Client.Get<WPEventDTO>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
|
||||
public string GetLastChallonge()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/wordpress/GetLastChallonge/", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/wordpress/GetLastChallonge/", Method.Get);
|
||||
var restResponse = Client.Get(restRequest);
|
||||
return restResponse.Content;
|
||||
}
|
||||
public string CreateChallonge(int gameId, int eventId)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/wordpress/CreateChallonge/{gameId}/{eventId}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/wordpress/CreateChallonge/{gameId}/{eventId}", Method.Get);
|
||||
var restResponse = Client.Get(restRequest);
|
||||
return restResponse.Content;
|
||||
}
|
||||
public string CreateChallonge2(int gameId, int eventId, List<WPUserDTO> optionalPlayers)
|
||||
{
|
||||
CheckToken();
|
||||
var restResponse = Post<List<WPUserDTO>,string>($"/api/wordpress/CreateChallonge/{gameId}/{eventId}",optionalPlayers);
|
||||
RestRequest r =
|
||||
new RestRequest($"/api/wordpress/CreateChallonge/{gameId}/{eventId}").AddJsonBody(optionalPlayers);
|
||||
var restResponse = Client.Post<string>(r);
|
||||
return restResponse;
|
||||
}
|
||||
public bool RefreshDb()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/Wordpress/UpdateDb", Method.GET);
|
||||
var restRequest = new RestRequest("/api/Wordpress/UpdateDb", Method.Get);
|
||||
var restResponse = Client.Get<bool>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public List<WPUserDTO> GetUsers(int wpEventId, int gameId)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Wordpress/GetUsers/{wpEventId}/{gameId}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/Wordpress/GetUsers/{wpEventId}/{gameId}", Method.Get);
|
||||
var restResponse = Client.Get<List<WPUserDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public List<WPUserDTO> GetUsersOptions(int wpEventId, int gameId)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Wordpress/GetUsersOptions/{wpEventId}/{gameId}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/Wordpress/GetUsersOptions/{wpEventId}/{gameId}", Method.Get);
|
||||
var restResponse = Client.Get<List<WPUserDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
|
||||
@@ -198,20 +197,21 @@ namespace LaDOSE.REST
|
||||
public List<GameDTO> GetGames()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/Game", Method.GET);
|
||||
var restRequest = new RestRequest("/api/Game", Method.Get);
|
||||
var restResponse = Client.Get<List<GameDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public GameDTO UpdateGame(GameDTO game)
|
||||
{
|
||||
CheckToken();
|
||||
return Post("Api/Game", game);
|
||||
RestRequest r = new RestRequest("Api/Game").AddJsonBody(game);
|
||||
return Client.Post<GameDTO>(r);
|
||||
}
|
||||
public bool DeleteGame(int gameId)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Game/{gameId}", Method.DELETE);
|
||||
var restRequest = new RestRequest($"/api/Game/{gameId}", Method.Delete);
|
||||
var restResponse = Client.Execute(restRequest);
|
||||
return restResponse.IsSuccessful;
|
||||
}
|
||||
@@ -227,26 +227,27 @@ namespace LaDOSE.REST
|
||||
public List<TodoDTO> GetTodos()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/Todo", Method.GET);
|
||||
var restRequest = new RestRequest("/api/Todo", Method.Get);
|
||||
var restResponse = Client.Get<List<TodoDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
public TodoDTO GetTodoById(int id)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Todo/{id}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/Todo/{id}", Method.Get);
|
||||
var restResponse = Client.Get<TodoDTO>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
public TodoDTO UpdateTodo(TodoDTO Todo)
|
||||
{
|
||||
CheckToken();
|
||||
return Post("Api/Todo", Todo);
|
||||
var restRequest = new RestRequest($"/api/Todo/", Method.Post).AddJsonBody(Todo);
|
||||
return Client.Post<TodoDTO>(restRequest);
|
||||
}
|
||||
public bool DeleteTodo(int todoId)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Todo/{todoId}", Method.DELETE);
|
||||
var restRequest = new RestRequest($"/api/Todo/{todoId}", Method.Delete);
|
||||
var restResponse = Client.Execute(restRequest);
|
||||
return restResponse.IsSuccessful;
|
||||
}
|
||||
@@ -258,9 +259,9 @@ namespace LaDOSE.REST
|
||||
public TournamentsResultDTO Test(string test)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"Api/Test/Test/{test}", Method.GET);
|
||||
var restRequest = new RestRequest($"Api/Test/Test/{test}", Method.Get);
|
||||
var restResponse = Client.Get<TournamentsResultDTO>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
|
||||
}
|
||||
|
||||
@@ -270,14 +271,17 @@ namespace LaDOSE.REST
|
||||
public List<TournamentDTO> GetTournaments(TimeRangeDTO timeRange)
|
||||
{
|
||||
CheckToken();
|
||||
List<TournamentDTO> tournamentDtos = Post<TimeRangeDTO, List<TournamentDTO>>("/api/Tournament/GetTournaments",timeRange);
|
||||
RestRequest r = new RestRequest("/api/Tournament/GetTournaments").AddJsonBody(timeRange);
|
||||
List<TournamentDTO> tournamentDtos = Client.Post<List<TournamentDTO>>(r);
|
||||
return tournamentDtos;
|
||||
}
|
||||
|
||||
public TournamentsResultDTO GetResults(List<int> ids)
|
||||
{
|
||||
|
||||
CheckToken();
|
||||
return Post<List<int>,TournamentsResultDTO>("Api/Tournament/GetResults", ids);
|
||||
var restRequest = new RestRequest("Api/Tournament/GetResults", Method.Post).AddJsonBody(ids);
|
||||
return Client.Post<TournamentsResultDTO>(restRequest);
|
||||
|
||||
}
|
||||
|
||||
@@ -285,33 +289,34 @@ namespace LaDOSE.REST
|
||||
public bool ParseSmash(string slug)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"Api/Tournament/ParseSmash/{slug}", Method.GET);
|
||||
var restRequest = new RestRequest($"Api/Tournament/ParseSmash/{slug}", Method.Get);
|
||||
var restResponse = Client.Get<bool>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
|
||||
}
|
||||
|
||||
public bool ParseChallonge(List<int> ids)
|
||||
{
|
||||
CheckToken();
|
||||
return Post<List<int>, bool>("Api/Tournament/ParseChallonge", ids);
|
||||
var restRequest = new RestRequest("Api/Tournament/ParseChallonge", Method.Post).AddJsonBody(ids);
|
||||
return Client.Post<bool>(restRequest);
|
||||
}
|
||||
#endregion
|
||||
#region Tournamenet Event / Player
|
||||
public List<EventDTO> GetAllEvents()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest("/api/Event", Method.GET);
|
||||
var restRequest = new RestRequest("/api/Event", Method.Get);
|
||||
var restResponse = Client.Get<List<EventDTO>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public List<string> GetPlayers(string slug)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/Tournament/GetPLayers/{slug}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/Tournament/GetPLayers/{slug}", Method.Get);
|
||||
var restResponse = Client.Get<List<string>>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
#endregion
|
||||
|
||||
@@ -321,23 +326,24 @@ namespace LaDOSE.REST
|
||||
public bool CreateBotEvent(string eventName)
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/BotEvent/CreateBotEvent/{eventName}", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/BotEvent/CreateBotEvent/{eventName}", Method.Get);
|
||||
var restResponse = Client.Get<bool>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public BotEventDTO GetLastBotEvent()
|
||||
{
|
||||
CheckToken();
|
||||
var restRequest = new RestRequest($"/api/BotEvent/GetLastBotEvent/", Method.GET);
|
||||
var restRequest = new RestRequest($"/api/BotEvent/GetLastBotEvent/", Method.Get);
|
||||
var restResponse = Client.Post<BotEventDTO>(restRequest);
|
||||
return restResponse.Data;
|
||||
return restResponse;
|
||||
}
|
||||
|
||||
public bool ResultBotEvent(BotEventSendDTO result)
|
||||
{
|
||||
CheckToken();
|
||||
return Post<BotEventSendDTO,bool>("/api/BotEvent/ResultBotEvent", result);
|
||||
var restRequest = new RestRequest("/api/BotEvent/ResultBotEvent", Method.Post).AddJsonBody(result);
|
||||
return Client.Post<bool>(restRequest);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
Reference in New Issue
Block a user