コード例 #1
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddInstanceof(IAssociationType association, IComposite type)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationInstanceOf(this.extent, association, type, CompositePredicate.GetConcreteSubClasses(type));
     return this;
 }
コード例 #2
0
ファイル: Not.cs プロジェクト: whesius/allors
        public ICompositePredicate AddLessThan(IRoleType role, object value)
        {
            this.CheckUnarity();
            this.extent.FlushCache();
            var lessThanRole = value as IRoleType;
            var lessThanAssociation = value as IAssociationType;
            if (lessThanRole != null)
            {
                this.filter = new RoleLessThanRole(this.extent, role, lessThanRole);
            }
            else if (lessThanAssociation != null)
            {
                throw new NotImplementedException();
            }
            else
            {
                this.filter = new RoleLessThanValue(this.extent, role, value);
            }

            return this;
        }
コード例 #3
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddExists(IAssociationType association)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationExists(this.extent, association);
     return this;
 }
コード例 #4
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddInstanceof(IRoleType role, IComposite type)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleInstanceof(this.extent, role, type, CompositePredicate.GetConcreteSubClasses(type));
     return this;
 }
コード例 #5
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddEquals(IAssociationType association, IObject allorsObject)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationEquals(this.extent, association, allorsObject);
     return this;
 }
コード例 #6
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddExists(IRoleType role)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleExists(this.extent, role);
     return this;
 }
コード例 #7
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddEquals(IObject allorsObject)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new Equals(allorsObject);
     return this;
 }
コード例 #8
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContainedIn(IRoleType role, Allors.Extent containingExtent)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleContainedInExtent(this.extent, role, containingExtent);
     return this;
 }
コード例 #9
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContains(IRoleType role, IObject containedObject)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleContains(this.extent, role, containedObject);
     return this;
 }
コード例 #10
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContains(IAssociationType association, IObject containedObject)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationContains(this.extent, association, containedObject);
     return this;
 }
コード例 #11
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContainedIn(IAssociationType association, IEnumerable<IObject> containingEnumerable)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationContainedInEnumerable(this.extent, association, containingEnumerable);
     return this;
 }
コード例 #12
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContainedIn(IAssociationType association, Allors.Extent containingExtent)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AssociationContainedInExtent(this.extent, association, containingExtent);
     return this;
 }
コード例 #13
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddContainedIn(IRoleType role, IEnumerable<IObject> containingEnumerable)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleContainedInEnumerable(this.extent, role, containingEnumerable);
     return this;
 }
コード例 #14
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddLike(IRoleType role, string value)
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new RoleLike(this.extent, role, value);
     return this;
 }
コード例 #15
0
ファイル: Not.cs プロジェクト: whesius/allors
        public ICompositePredicate AddEquals(IRoleType role, object obj)
        {
            this.CheckUnarity();
            this.extent.FlushCache();
            var equalsRole = obj as IRoleType;
            var equalsAssociation = obj as IAssociationType;
            if (equalsRole != null)
            {
                this.filter = new RoleEqualsRole(this.extent, role, equalsRole);
            }
            else if (equalsAssociation != null)
            {
                throw new NotImplementedException();
            }
            else
            {
                this.filter = new RoleEqualsValue(this.extent, role, obj);
            }

            return this;
        }
コード例 #16
0
ファイル: Not.cs プロジェクト: whesius/allors
 public ICompositePredicate AddAnd()
 {
     this.CheckUnarity();
     this.extent.FlushCache();
     this.filter = new AndPredicate(this.extent);
     return (ICompositePredicate)this.filter;
 }
コード例 #17
0
ファイル: Not.cs プロジェクト: whesius/allors
        public ICompositePredicate AddBetween(IRoleType role, object firstValue, object secondValue)
        {
            this.CheckUnarity();
            this.extent.FlushCache();
            var betweenRoleA = firstValue as IRoleType;
            var betweenRoleB = secondValue as IRoleType;
            var betweenAssociationA = firstValue as IAssociationType;
            var betweenAssociationB = secondValue as IAssociationType;
            if (betweenRoleA != null && betweenRoleB != null)
            {
                this.filter = new RoleBetweenRole(this.extent, role, betweenRoleA, betweenRoleB);
            }
            else if (betweenAssociationA != null && betweenAssociationB != null)
            {
                throw new NotImplementedException();
            }
            else
            {
                this.filter = new RoleBetweenValue(this.extent, role, firstValue, secondValue);
            }

            return this;
        }