예제 #1
0
 protected override void OnRelationChanged(RelationChangedEventArgs args)
 {
     base.OnRelationChanged(args);
     if (args.IsRelation(this, "StatefulAccessControlLists"))
     {
         HandleStatefulAccessControlListsChanged((StatefulAccessControlList)args.NewRelatedObject);
     }
 }
예제 #2
0
 protected override void OnRelationChanged(RelationChangedEventArgs args)
 {
     base.OnRelationChanged(args);
     if (args.IsRelation(this, "StateCombinationsInternal"))
     {
         HandleStateCombinationsChanged((StateCombination)args.NewRelatedObject);
     }
 }
예제 #3
0
 protected override void OnRelationChanged(RelationChangedEventArgs args)
 {
     base.OnRelationChanged(args);
     if (args.IsRelation(this, "AccessControlEntries"))
     {
         HandleAccessControlEntriesChanged((AccessControlEntry)args.NewRelatedObject);
     }
 }
        protected virtual void DomainObject_RelationChanged(object sender, RelationChangedEventArgs args)
        {
            _hasRelationChangedEventBeenCalled = true;
            _changedRelationPropertyName       = args.RelationEndPointDefinition.PropertyName;
            _changedOldRelatedObject           = args.OldRelatedObject;
            _changedNewRelatedObject           = args.NewRelatedObject;

            VerifyTransaction();
        }
예제 #5
0
        public static bool IsRelation <TDoaminObject> (this RelationChangedEventArgs args, TDoaminObject domainObject, string shortPropertyName)
            where TDoaminObject : IDomainObject
        {
            ArgumentUtility.CheckNotNull("args", args);
            ArgumentUtility.CheckNotNull("domainObject", domainObject);
            ArgumentUtility.CheckNotNullOrEmpty("shortPropertyName", shortPropertyName);

            var properties       = new PropertyIndexer(domainObject);
            var propertyAccessor = properties[typeof(TDoaminObject), shortPropertyName];

            return(args.RelationEndPointDefinition == propertyAccessor.PropertyData.RelationEndPointDefinition);
        }
예제 #6
0
        protected override void DomainObject_RelationChanged(object sender, RelationChangedEventArgs args)
        {
            TestDomainBase domainObject = (TestDomainBase)sender;

            changedObjectState = domainObject.State;

            string changedProperty = args.RelationEndPointDefinition.PropertyName;

            if (CardinalityType.One == domainObject.InternalDataContainer.ClassDefinition.GetRelationEndPointDefinition(changedProperty).Cardinality)
            {
                DomainObject relatedDomainObject = domainObject.GetRelatedObject(changedProperty);
                changedRelatedObjects.Add(changedProperty, relatedDomainObject);
            }
            else
            {
                DomainObjectCollection relatedDomainObjectCollection = domainObject.GetRelatedObjects(changedProperty);
                changedRelatedObjects.Add(changedProperty, relatedDomainObjectCollection.Clone(true));
            }

            base.DomainObject_RelationChanged(sender, args);
        }
 public void DomainObject_RelationChanged(object sender, RelationChangedEventArgs args)
 {
     _states.Add(new RelationChangeState(sender, args.RelationEndPointDefinition.PropertyName, null, null));
 }
 public abstract void RelationChanged(object sender, RelationChangedEventArgs args);