Exemplo n.º 1
0
 protected EntityIndexBase(
     string name,
     IEntityGroup <TEntity> group,
     IKeyValueGetter <TEntity, TKey> keyValueGetter)
 {
     Name           = name;
     KeyValueGetter = keyValueGetter;
     group.AddListener(this);
     Group = group;
 }
Exemplo n.º 2
0
 public EntityRelationship(string name,
                           IEntityGroup <TEntity> referencingGroup,
                           IEntityGroup <TEntity> referencedGroup,
                           IKeyValueGetter <TEntity, int> keyValueGetter,
                           Action <TEntity, TEntity, Component> handleReferencedDeleted,
                           bool referencedKeepAlive  = false,
                           bool referencingKeepAlive = false)
     : base(
         name,
         referencingGroup,
         referencedGroup,
         keyValueGetter,
         handleReferencedDeleted,
         referencedKeepAlive,
         referencingKeepAlive)
     => referencedGroup.AddListener(new ReferencedGroupListener(this));
 protected EntityRelationshipBase(
     string name,
     IEntityGroup <TEntity> referencingGroup,
     IEntityGroup <TEntity> referencedGroup,
     IKeyValueGetter <TEntity, int> keyValueGetter,
     Action <TEntity, TEntity, Component> handleReferencedDeleted,
     bool referencedKeepAlive,
     bool referencingKeepAlive)
     : base(name, referencingGroup, keyValueGetter)
 {
     ReferencingGroup         = referencingGroup;
     ReferencedGroup          = referencedGroup;
     _handleReferencedDeleted = handleReferencedDeleted;
     _referencedKeepAlive     = referencedKeepAlive;
     _referencingKeepAlive    = referencingKeepAlive;
 }
 public SortedEntityRelationship(
     string name,
     IEntityGroup <TEntity> referencingGroup,
     IEntityGroup <TEntity> referencedGroup,
     IKeyValueGetter <TEntity, int> keyValueGetter,
     IKeyValueGetter <TEntity, TKey> sortValueGetter,
     Action <TEntity, TEntity, Component> handleReferencedDeleted,
     bool referencedKeepAlive  = false,
     bool referencingKeepAlive = false)
     : this(
         name,
         referencingGroup,
         referencedGroup,
         keyValueGetter,
         sortValueGetter,
         handleReferencedDeleted,
         referencedKeepAlive,
         referencingKeepAlive,
         comparer : null)
 {
 }
 public SortedEntityRelationship(string name,
                                 IEntityGroup <TEntity> referencingGroup,
                                 IEntityGroup <TEntity> referencedGroup,
                                 IKeyValueGetter <TEntity, int> keyValueGetter,
                                 IKeyValueGetter <TEntity, TKey> sortValueGetter,
                                 Action <TEntity, TEntity, Component> handleReferencedDeleted,
                                 bool referencedKeepAlive,
                                 bool referencingKeepAlive,
                                 IComparer <TKey> comparer)
     : base(
         name,
         referencingGroup,
         referencedGroup,
         keyValueGetter,
         handleReferencedDeleted,
         referencedKeepAlive,
         referencingKeepAlive)
 {
     _sortValueGetter = sortValueGetter;
     _comparer        = comparer;
     referencedGroup.AddListener(new ReferencedGroupListener(this));
 }