private void CreatePchinkoData(int id)
        {
            var pachinkoData = new PachinkoData()
            {
                Id = id
            };

            _pachinkoCache.Add(pachinkoData);
        }
 private void CheckPachinkoDataInCache()
 {
     foreach (var conf in _pachinkoConfigSet.PachinkoConfigList)
     {
         PachinkoData pachinkoData = null;
         if (!this.FindPachinkoData(conf.Id, out pachinkoData))
         {
             //Create PachinkoData
             this.CreatePchinkoData(conf.Id);
         }
         else
         {
             this.ModifyPachinkoDataState(null, pachinkoData, PachinkoStateType.Unoccupied);
         }
     }
 }
 private void ModifyPachinkoDataState(GameSession session, PachinkoData pachinkoData, PachinkoStateType stateType)
 {
     if (pachinkoData != null)
     {
         pachinkoData.ModifyLocked(() => {
             pachinkoData.StateType = stateType;
             if (session == null || stateType == PachinkoStateType.Unoccupied)
             {
                 pachinkoData.OwnerUserId = 0;
             }
             else
             {
                 /*
                  * if(stateType == PachinkoStateType.Unoccupied)
                  *  pachinkoData.OwnerUserId = 0;
                  * else
                  */
                 pachinkoData.OwnerUserId = session.UserId;
             }
         });
     }
 }
 public bool FindPachinkoData(int pachinkoId, out PachinkoData pachinkoData)
 {
     pachinkoData = _pachinkoCache.Find(p => p.Id == pachinkoId);
     return(pachinkoData != null);
 }