示例#1
0
        public ActionResult <Guid> Save([FromBody] GameClientDefinition definition)
        {
            try
            {
                Log.Info($"requested list of game client definitions.");
                using (var configContext = this.persistenceContextProvider.CreateNewContext())
                {
                    var client = configContext.GetById <DataModel.Configuration.GameClientDefinition>(definition.Id)
                                 ?? configContext.CreateNew <DataModel.Configuration.GameClientDefinition>();

                    client.Season      = definition.Season;
                    client.Episode     = definition.Episode;
                    client.Description = definition.Description;
                    client.Language    = definition.Language;
                    client.Serial      = definition.Serial;
                    client.Version     = definition.Version;
                    configContext.SaveChanges();
                    return(this.Ok(client.GetId()));
                }
            }
            catch (Exception ex)
            {
                Log.Error($"An unexpected exception occured during saving a game client definition", ex);
                throw;
            }
        }
示例#2
0
 /// <summary>
 /// Gets the observer.
 /// </summary>
 /// <param name="gameClient">The game client.</param>
 /// <returns>The observer for the client.</returns>
 public IGameServerStateObserver GetObserver(GameClientDefinition gameClient)
 {
     return(this.observers[gameClient]);
 }