1 //---------------------------------------------------------------------
2 // <copyright file="EntityStoreSchemaFilterEntry.cs" company="Microsoft">
3 // Copyright (c) Microsoft Corporation. All rights reserved.
7 // @backupOwner Microsoft
8 //---------------------------------------------------------------------
10 using System.Collections.Generic;
12 using System.Diagnostics;
13 using System.Data.Entity.Design.Common;
15 namespace System.Data.Entity.Design
18 /// This class represent a single filter entry
20 public class EntityStoreSchemaFilterEntry
22 private string _catalog;
23 private string _schema;
25 private EntityStoreSchemaFilterObjectTypes _types;
26 private EntityStoreSchemaFilterEffect _effect;
29 /// Creates a EntityStoreSchemaFilterEntry
31 /// <param name="catalog">The pattern to use to select the appropriate catalog or null to not limit by catalog.</param>
32 /// <param name="schema">The pattern to use to select the appropriate schema or null to not limit by schema.</param>
33 /// <param name="name">The pattern to use to select the appropriate name or null to not limit by name.</param>
34 /// <param name="types">The type of objects to apply this filter to.</param>
35 /// <param name="effect">The effect that this filter should have on the results.</param>
36 public EntityStoreSchemaFilterEntry(string catalog, string schema, string name, EntityStoreSchemaFilterObjectTypes types, EntityStoreSchemaFilterEffect effect)
38 if (types == EntityStoreSchemaFilterObjectTypes.None)
40 throw EDesignUtil.Argument("types");
50 /// Creates a EntityStoreSchemaFilterEntry
52 /// <param name="catalog">The pattern to use to select the appropriate catalog or null to not limit by catalog.</param>
53 /// <param name="schema">The pattern to use to select the appropriate schema or null to not limit by schema.</param>
54 /// <param name="name">The pattern to use to select the appropriate name or null to not limit by name.</param>
55 public EntityStoreSchemaFilterEntry(string catalog, string schema, string name)
56 :this(catalog, schema, name, EntityStoreSchemaFilterObjectTypes.All, EntityStoreSchemaFilterEffect.Allow)
61 /// Gets the pattern that will be used to select the appropriate catalog.
65 [DebuggerStepThroughAttribute]
66 get { return _catalog; }
70 /// Gets the pattern that will be used to select the appropriate schema.
74 [DebuggerStepThroughAttribute]
75 get { return _schema; }
79 /// Gets the pattern that will be used to select the appropriate name.
83 [DebuggerStepThroughAttribute]
88 /// Gets the types of objects that this filter applies to.
90 public EntityStoreSchemaFilterObjectTypes Types
92 [DebuggerStepThroughAttribute]
93 get { return _types; }
97 /// Gets the effect that this filter has on results.
99 public EntityStoreSchemaFilterEffect Effect
101 [DebuggerStepThroughAttribute]
102 get { return _effect; }