예제 #1
0
 private static void ClearLocal <T>(KatushaDbContext context) where T : class
 {
     context.Set <T>().Local.Clear();
     foreach (var item in context.Set <T>().Local)
     {
         context.Set <T>().Local.Remove(item);
     }
 }
예제 #2
0
        private ResourceManager()
        {
            var dbContext = new KatushaDbContext();

            ListLock.EnterReadLock();
            var isEmpty = ResourceLookupList.Count <= 0;

            ListLock.ExitReadLock();
            if (isEmpty)
            {
                LoadResourceLookupFromDb(new ResourceLookupRepositoryDB(dbContext));
            }

            ListLock.EnterReadLock();
            isEmpty = ResourceList.Count <= 0;
            ListLock.ExitReadLock();
            if (isEmpty)
            {
                LoadResourceFromDb(new ResourceRepositoryDB(dbContext));
            }

            ListLock.EnterReadLock();
            isEmpty = ConfigurationList.Count <= 0;
            ListLock.ExitReadLock();
            if (isEmpty)
            {
                LoadConfigurationDataFromDb(new ConfigurationDataRepositoryDB(dbContext));
            }

            ListLock.EnterReadLock();
            isEmpty = !Location.Initialized;
            ListLock.ExitReadLock();
            if (isEmpty)
            {
                LoadGeoLocationDataFromDb(new GeoCountryRepositoryDB(dbContext), new GeoLanguageRepositoryDB(dbContext), new GeoNameRepositoryDB(dbContext), new GeoTimeZoneRepositoryDB(dbContext));
            }
            ListLock.EnterReadLock();
            ConfigParser.BlockedIpList(BlockedIpList);
            ListLock.ExitReadLock();
        }
예제 #3
0
 public GeoCountryRepositoryDB(IKatushaDbContext dbContext)
 {
     _dbContext = dbContext as KatushaDbContext;
 }
예제 #4
0
 public StateRepositoryDB(IKatushaDbContext dbContext)
 {
     _dbContext = dbContext as KatushaDbContext;
 }
예제 #5
0
 public GeoLanguageRepositoryDB(IKatushaDbContext dbContext)
 {
     _dbContext = dbContext as KatushaDbContext;
 }
예제 #6
0
 public GeoTimeZoneRepositoryDB(IKatushaDbContext dbContext)
 {
     _dbContext = dbContext as KatushaDbContext;
 }
 public GeoNameRepositoryDB(IKatushaDbContext dbContext)
 {
     _dbContext = dbContext as KatushaDbContext;
 }