private void listView_Click(object sender, MouseButtonEventArgs e) { DTO.Session item = (sender as ListView).SelectedItem as DTO.Session; if (item != null) { if (string.IsNullOrEmpty(PlayerName)) { MessageBox.Show("Player name can't be empty", "Warning", MessageBoxButton.OK, MessageBoxImage.Error); return; } HttpClientHandler clientHandler = new HttpClientHandler(); HttpClient client = new HttpClient(clientHandler); string connectionString = string.Format("{0}/session/{1}", ConnectionString, item.ID); HttpResponseMessage response = client.GetAsync(connectionString).Result; if (response.StatusCode == System.Net.HttpStatusCode.OK) { string responseContent = response.Content.ReadAsStringAsync().Result; DTO.Session session = Newtonsoft.Json.JsonConvert.DeserializeObject <DTO.Session>(responseContent); SessionView sessionView = new SessionView(session, PlayerName); sessionView.Show(); } else { MessageBox.Show("Server error!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } } }
public static DTO.Session DomainToDTO(Session session) { List <DTO.Log> logs = new List <DTO.Log>(); if (session.Logs != null) { foreach (var l in session.Logs) { logs.Add(LogConverter.DomainToDTO(l)); } } List <DTO.Character> characters = new List <DTO.Character>(); if (session.Characters != null) { foreach (var c in session.Characters) { characters.Add(CharacterConverter.DomainToDTO(c)); } } DTO.Session result = new DTO.Session() { ID = session.SessionID, Name = session.Name, Logs = logs.ToArray(), Characters = characters.ToArray() }; return(result); }
/// <summary> /// Creates an instance of the <see cref="MainViewModelNew"/> class. /// </summary> /// <param name="session">An autheticated session for the current user.</param> /// <param name="analyticService"An IAnalyticService provider.></param> /// <param name="userService">An IUserService provider.</param> public MainViewModelNew(DTO.Session <DTO.NullT> session, IAnalyticService analyticService, IUserService userService) : this() { if (session == null) { throw new ArgumentNullException("session", "session cannot be null."); } if (analyticService == null) { throw new ArgumentNullException("analyticService", "Value cannot be null."); } if (userService == null) { throw new ArgumentNullException("userService", "Value cannot be null."); } base.Session = session; base.UserServices = new UserDisplayServices(userService); _analyticService = analyticService; _userService = userService; //Modules = session.Modules.ToDisplayEntities(); CurrentUser = session.User.ToDisplayEntity(); Modules = session.Modules.ToDisplayEntities(); //Modules = userService.Authenticate(Session).Modules.ToDisplayEntities(); SelectedModule = Modules.Where(x => x.TypeId == DTO.ModuleType.Planning).FirstOrDefault(); }
public HttpResponseMessage Join(int ID, DTO.Character character) { string errorResponse = ""; try { DTO.Session session = SessionConverter.DomainToDTO(RepositoryProxy.Instance.SessionRepository.AddPlayer(ID, character)); HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); JObject JSession = JObject.FromObject(session); response.Content = new System.Net.Http.StringContent(JSession.ToString()); response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); return(response); } catch (Exception ex) { errorResponse = ex.Message; } return(new HttpResponseMessage(HttpStatusCode.BadRequest)); }
public Session Add(DTO.Session session) { Player domainPlayer = RepositoryProxy.Instance.PlayerRepository.Get(session.Characters.First().Player); Session domainSession = new Session() { Name = session.Name, }; _db.Set <Session>().Add(domainSession); _db.SaveChanges(); Character domainCharacter = new Character() { Name = session.Characters.First().Name, Health = 20, Player = domainPlayer, Session = domainSession }; _db.Set <Character>().Add(domainCharacter); _db.SaveChanges(); return(Get(domainSession.SessionID)); }
private void InitializeCommands() { ActionCommand = ReactiveCommand.Create(); ActionCommand.Subscribe(x => ActionCommandExecuted(x)); LoadAnalyticCommand = ReactiveCommand.CreateAsyncTask(async _ => await Task.Run(() => { var id = new DTO.Analytic(SelectedEntity.Id); var a = ((APLPX.UI.WPF.Data.MockAnalyticService)_analyticService).LoadAnalytic(new DTO.Session <DTO.Analytic>() { Data = id }); SelectedAnalytic = a.Data.ToDisplayEntity(); })); SaveAnalyticIdentityCommand = ReactiveCommand.CreateAsyncTask(async _ => await Task.Run(() => { var session = new DTO.Session <DTO.Analytic>() { Data = SelectedAnalytic.ToDto() }; var status = _analyticService.SaveIdentity(session); })); SaveFiltersCommand = ReactiveCommand.CreateAsyncTask(async _ => await Task.Run(() => { var session = new DTO.Session <DTO.Analytic>() { Data = SelectedAnalytic.ToDto() }; var status = _analyticService.SaveFilters(session); })); SavePriceListsCommand = ReactiveCommand.CreateAsyncTask(async _ => await Task.Run(() => { var session = new DTO.Session <DTO.Analytic>() { Data = SelectedAnalytic.ToDto() }; var status = _analyticService.SavePriceLists(session); })); SaveValueDriversCommand = ReactiveCommand.CreateAsyncTask(async _ => await Task.Run(() => { var session = new DTO.Session <DTO.Analytic>() { Data = SelectedAnalytic.ToDto() }; var status = _analyticService.SaveDrivers(session); })); }
public SessionView(DTO.Session session, string name) { DataContext = this; initialize_session(session, name); _dispatcherTimer = new DispatcherTimer(); InitializeComponent(); }
private DTO.Session <DTO.Analytic> CreateRequest(Analytic payload) { var p = payload.ToDto(); var session = new DTO.Session <DTO.Analytic>() { Data = p, SqlKey = _session.SqlKey, ClientCommand = _session.ClientCommand }; return(session); }
public List <Analytic> LoadAnalytics(DTO.Session <DTO.NullT> session) { DTO.Session <List <DTO.Analytic> > response = null;;//TODO: set to null until AnalyticService contract is updated.// _analyticService.LoadList(session); List <Analytic> displayList = new List <Analytic>(); foreach (DTO.Analytic analytic in response.Data) { displayList.Add(analytic.ToDisplayEntity()); } return(displayList); }
private Session <T> CreateDisplayResponse <T>(DTO.Session <DTO.Analytic> response) where T : class { Analytic display = response.Data != null?response.Data.ToDisplayEntity() : null; return(new Session <T> { Authenticated = response.Authenticated, SqlAuthorization = response.SqlAuthorization, ClientMessage = response.ClientMessage ?? null, Data = display ?? null, ServerMessage = response.ServerMessage ?? null, SessionOk = response.SessionOk, User = response.User != null?response.User.ToDisplayEntity() : null, }); }
public AnalyticDisplayServices(IAnalyticService analyticService, DTO.Session <DTO.NullT> session) { if (analyticService == null) { throw new ArgumentNullException("analyticService", "Value cannot be null."); } if (session == null) { throw new ArgumentNullException("session", "Value cannot be null."); } _analyticService = analyticService; _session = session; }
public PricingEverydayDisplayService(IPricingEverydayService pricingService, DTO.Session <DTO.NullT> session) { if (pricingService == null) { throw new ArgumentNullException("pricingService", "Value cannot be null."); } if (session == null) { throw new ArgumentNullException("session", "Value cannot be null."); } _pricingEverydayService = pricingService; _session = session; }
private void Create_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(PlayerName)) { MessageBox.Show("Player name can't be empty", "Warning", MessageBoxButton.OK, MessageBoxImage.Error); return; } CreateSession createSession = new CreateSession(); var result = createSession.ShowDialog(); if (result.Value) { JObject JSession = JObject.FromObject( new DTO.Session() { Name = createSession.SessionName, Characters = new DTO.Character[] { new DTO.Character() { Name = createSession.CharacterName, Player = new DTO.Player() { Name = PlayerName } } } }); HttpContent Content = new System.Net.Http.StringContent(JSession.ToString()); Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); HttpClientHandler clientHandler = new HttpClientHandler(); HttpClient client = new HttpClient(clientHandler); string connectionString = string.Format("{0}/session/create", ConnectionString); HttpResponseMessage response = client.PostAsync(connectionString, Content).Result; if (response.StatusCode == System.Net.HttpStatusCode.OK) { string responseContent = response.Content.ReadAsStringAsync().Result; DTO.Session session = Newtonsoft.Json.JsonConvert.DeserializeObject <DTO.Session>(responseContent); SessionView sessionView = new SessionView(session, PlayerName); sessionView.Show(); } else { MessageBox.Show("Server error!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } } }
public List <AnalyticValueDriver> LoadDrivers(Analytic displayAnalytic) { DTO.Analytic payload = displayAnalytic.ToDto(); var sessionDto = new DTO.Session <DTO.Analytic> { Data = payload }; DTO.Session <DTO.Analytic> response = null;//TODO: set to null until AnalyticService contract is updated. _analyticService.LoadDrivers(sessionDto); var displayList = new List <AnalyticValueDriver>(); foreach (var driver in response.Data.ValueDrivers) { displayList.Add(driver.ToDisplayEntity()); } return(displayList); }
public List <FilterGroup> LoadFilterGroups(Analytic displayAnalytic) { DTO.Analytic payload = displayAnalytic.ToDto(); var sessionDto = new DTO.Session <DTO.Analytic> { Data = payload }; DTO.Session <DTO.Analytic> response = null;//TODO: set to null until AnalyticService contract is updated. _analyticService.LoadFilters(sessionDto); var displayList = new List <FilterGroup>(); foreach (DTO.FilterGroup filterGroup in response.Data.FilterGroups) { displayList.Add(filterGroup.ToDisplayEntity()); } return(displayList); }
public List <AnalyticPriceListGroup> LoadPriceListGroupss(Analytic displayAnalytic) { DTO.Analytic payload = displayAnalytic.ToDto(); var sessionDto = new DTO.Session <DTO.Analytic> { Data = payload }; DTO.Session <DTO.Analytic> returnedSession = null; //TODO: set to null until AnalyticService contract is updated. _analyticService.LoadDrivers(sessionDto); var displayList = new List <AnalyticPriceListGroup>(); foreach (var group in returnedSession.Data.PriceListGroups) { displayList.Add(group.ToDisplayEntity()); } return(displayList); }
private void initialize_session(DTO.Session session, string name) { Character = session.Characters.Where(p => p.Player.Name == name).First(); Characters.Clear(); Logs.Clear(); foreach (var c in session.Characters) { if (!c.Equals(Character)) { Characters.Add(c); } } foreach (var l in session.Logs) { Logs.Add(l); } this._ID = session.ID; this.SessionName = session.Name; OnPropertyChanged("SessionName"); }
private void dispatcherTimer_Tick(object sender, EventArgs e) { HttpClientHandler clientHandler = new HttpClientHandler(); HttpClient client = new HttpClient(clientHandler); string connectionString = string.Format("{0}/session/{1}", _connectionString, _ID); HttpResponseMessage response = client.GetAsync(connectionString).Result; if (response.StatusCode == System.Net.HttpStatusCode.OK) { string responseContent = response.Content.ReadAsStringAsync().Result; DTO.Session session = Newtonsoft.Json.JsonConvert.DeserializeObject <DTO.Session>(responseContent); initialize_session(session, this.Character.Player.Name); } else { MessageBox.Show("Server error!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } }
public HttpResponseMessage Create(DTO.Session session) { string error = ""; try { session = SessionConverter.DomainToDTO(RepositoryProxy.Instance.SessionRepository.Add(session)); HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); JObject JSession = JObject.FromObject(session); response.Content = new System.Net.Http.StringContent(JSession.ToString()); response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); return(response); } catch (Exception ex) { error = ex.Message; } HttpResponseMessage errorResponse = new HttpResponseMessage(); errorResponse.StatusCode = HttpStatusCode.BadRequest; errorResponse.ReasonPhrase = error; return(errorResponse); }