Esempio n. 1
0
        IEnumerable <object> GetFromCache(ConcurrentDictionary <string, EntitiesCache> entities, IEntityInfo info, ICollection <IDataCriterion> criteria, string identityString, TimeSpan timeout)
        {
            EntitiesCache cache;

            if (!entities.TryGetValue(identityString, out cache) || (DateTime.UtcNow - cache.QueriedTime) > timeout)
            {
                cache = new EntitiesCache {
                    /*Entities = base.Read(info, criteria).ToArray(),*/
                    QueriedTime = DateTime.UtcNow
                };

                if (!entities.TryAdd(identityString, cache))
                {
                    cache = entities[identityString];
                }
            }

            if (cache.Entities == null)
            {
                lock (cache) {
                    if (cache.Entities == null)
                    {
                        cache.Entities = base.Read(info, criteria).ToArray();
                    }
                }
            }

            return(cache.Entities);
        }
Esempio n. 2
0
        void OnGUI()
        {
            if (CachedSelection != CurrentSelection)
            {
                RefreshEditor();
                CachedSelection = CurrentSelection;
            }

            CurrentSelection = EditorGUILayout.Popup("Entity", CurrentSelection, EntitiesCache.Select(c => c.Name).ToArray());
            ResourcesFolder  = EditorGUILayout.TextField("Resources folder", ResourcesFolder);
            EntityName       = EditorGUILayout.TextField("Entity Name", EntityName);
            EditorCache.OnInspectorGUI();
            var save = GUILayout.Button("Create entity");

            if (save)
            {
                SaveButton();
            }
        }
Esempio n. 3
0
 public ContestDatastore()
     : base(new SqliteDbEngine(ConfigurationManager.AppSettings["DatabasePath"], ""), new SqliteFactory())
 {
     AddType <Domain.Games.Contest>();
     AddType <GameSetting>();
     AddType <Address>();
     AddType <PhysicalSetting>();
     AddType <EliminationStepSetting>();
     AddType <QualificationStepSetting>();
     AddType <MatchSetting>();
     AddType <Team>();
     AddType <Match>();
     AddType <Person>();
     AddType <Phase>();
     AddType <EliminationStep>();
     AddType <QualificationStep>();
     AddType <Field>();
     AddType <TeamGameStepRelationship>();
     AddType <TeamPhaseRelationship>();
     AddType <TeamPersonRelationship>();
     Cache = new EntitiesCache();
 }
 internal FavoritesBatchActions(Favorites favorites, EntitiesCache<DbFavorite> cache, DataDispatcher dispatcher)
 {
     this.favorites = favorites;
     this.cache = cache;
     this.dispatcher = dispatcher;
 }
Esempio n. 5
0
 internal Groups()
 {
     this.cache = new EntitiesCache<DbGroup>();
 }
Esempio n. 6
0
 public void SetUp()
 {
     Cache = new EntitiesCache();
 }