Share via


ObjectSet Class

The ObjectSet object represents a policy-based management set of objects.

Inheritance Hierarchy

System.Object
  Microsoft.SqlServer.Management.Sdk.Sfc.SfcInstance
    Microsoft.SqlServer.Management.Dmf.ObjectSet

Namespace:  Microsoft.SqlServer.Management.Dmf
Assembly:  Microsoft.SqlServer.Dmf (in Microsoft.SqlServer.Dmf.dll)

Syntax

'Declaration
<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey := "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")> _
Public NotInheritable Class ObjectSet _
    Inherits SfcInstance _
    Implements ISfcCreatable, ICreatable, ISfcDroppable, IDroppable,  _
    ISfcAlterable, IAlterable, ISfcValidate
'Usage
Dim instance As ObjectSet
[StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
public sealed class ObjectSet : SfcInstance, 
    ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, 
    IAlterable, ISfcValidate
[StrongNameIdentityPermissionAttribute(SecurityAction::LinkDemand, PublicKey = L"0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")]
public ref class ObjectSet sealed : public SfcInstance, 
    ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, 
    IAlterable, ISfcValidate
[<SealedAttribute>]
[<StrongNameIdentityPermissionAttribute(SecurityAction.LinkDemand, PublicKey = "0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8")>]
type ObjectSet =  
    class
        inherit SfcInstance
        interface ISfcCreatable
        interface ICreatable
        interface ISfcDroppable
        interface IDroppable
        interface ISfcAlterable
        interface IAlterable
        interface ISfcValidate
    end
public final class ObjectSet extends SfcInstance implements ISfcCreatable, ICreatable, ISfcDroppable, IDroppable, ISfcAlterable, IAlterable, ISfcValidate

The ObjectSet type exposes the following members.

Constructors

  Name Description
Public method ObjectSet() Initializes a new instance of the ObjectSet class.
Public method ObjectSet(PolicyStore, String) Initializes a new instance of the ObjectSet class that has the specified parent policy store and the specified name.

Top

Properties

  Name Description
Protected property AbstractIdentityKey Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public property Facet Gets or sets the facet value for the object set.
Public property ID Gets the ID value that uniquely identifies the object set.
Public property IdentityKey Gets the SfcKey object.
Public property IsSystemObject Determines whether the ObjectSet is a Object.
Public property Metadata Returns metadata about the instance and its domain. (Inherited from SfcInstance.)
Public property Name Gets the name of the object set.
Public property Parent Gets or sets the parent of the ObjectSet object.
Public property Properties Returns a collection instance properties. (Inherited from SfcInstance.)
Protected property PropertyStorageProvider Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected property State Returns the state of the SfcInstance object. (Inherited from SfcInstance.)
Public property TargetSets Gets the TargetSetCollection.
Public property Urn Returns the uniform resource name of the SfcInstance object. (Inherited from SfcInstance.)

Top

Methods

  Name Description
Public method Alter Alters the definition of an ObjectSet created previously.
Protected method AlterImpl Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method CalculateTargets(ISfcConnection) Calculates an expression with results applied to the targets.
Public methodStatic member CalculateTargets(ISfcConnection, SfcQueryExpression) Calculates an expression with results applied to the targets.
Public method CalculateTargets(SqlStoreConnection, String) Calculates an expression with results applied to the targets.
Public method CalculateTargets(SqlStoreConnection, Condition, AdHocPolicyEvaluationMode, String, array<Object[]%, array<TargetEvaluation[]%) Calculates an expression with results applied to the targets.
Protected method CheckObjectCreated Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method CheckObjectState Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Create Creates an ObjectSet without parent.
Protected method CreateIdentityKey Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method CreateImpl Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Discover Discovers an ObjectSet and adds it to the sink object identified by the parameter. (Overrides SfcInstance.Discover(ISfcDependencyDiscoveryObjectSink).)
Public method Drop Drops an ObjectSet.
Protected method DropImpl Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Equals (Inherited from Object.)
Protected method Finalize (Inherited from Object.)
Protected method GetChildCollection Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method GetDomain Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method GetHashCode (Inherited from Object.)
Public methodStatic member GetObjectFactory Gets the object factory.
Public method GetPropertySet Returns the set of properties for the SfcInstance object. (Inherited from SfcInstance.)
Public method GetType (Inherited from Object.)
Protected method GetTypeMetadataImpl Indicates the domains that override by returning the right TypeMetadata class directly. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method InitializeUIPropertyState Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method MarkForDropImpl Returns a value that indicates the existing objects to be dropped. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method MarkRootAsConnected Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method MemberwiseClone (Inherited from Object.)
Protected method MoveImpl Indicates the new parent object to move in an instance. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method OnPropertyMetadataChanges Invoked whenever the effective value of any SfcInstance metadata is updated. (Inherited from SfcInstance.)
Protected method OnPropertyValueChanges Invoked whenever the effective value of any SfcInstance property is updated. (Inherited from SfcInstance.)
Protected method PostAlter Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method PostCreate Indicates the default implementor that creates the execution result. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method PostDrop Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method PostMove Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method PostRename Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Refresh Refreshes the object's properties by reading them from the server. (Inherited from SfcInstance.)
Protected method RenameImpl Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method ResetKey Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method ScriptAlter Alters a previously created ISfcScript object.
Public method ScriptCreate Creates a ISfcScript object.
Public method ScriptDrop Drops an ISfcScript object.
Public method Serialize Serializes the instance to XML. (Inherited from SfcInstance.)
Public method SetFacetWithDomain Sets a facet on the ObjectSet with an ISfcDomain object specified by the domain parameter.
Public method ToString Returns a string representation of the instance Urn. (Inherited from SfcInstance.)
Protected method UpdateUIPropertyState Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Protected method Validate() Indicates the basic child object's validation. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Validate(String) Validates the ObjectSet object.

Top

Events

  Name Description
Protected event propertyChanged Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public event PropertyChanged CLS-compliant event for property changes. (Inherited from SfcInstance.)
Protected event propertyMetadataChanged Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public event PropertyMetadataChanged CLS-compliant event for property metadata changes. (Inherited from SfcInstance.)

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate method ISfcValidate.Validate Validates an ObjectSet.

Top

Remarks

A target object set is the resulting set of target objects after applying a filter to an instance of SQL Server. Using a Filter object, you can create a Urn object which you can use to create an XPath expression. The XPath expression can be used to specify a skeleton XPath expression which filters the target objects out of the object set.

Examples

C#

SFC.Urn urn = new SFC.Urn(filter);
SFC.XPathExpression xpe = urn.XPathExpression;

string ts_skeleton = urn.XPathExpression.ExpressionSkeleton;
ObjectSet os = new ObjectSet(p.Parent, p.Name + "ObjectSet");
os.Facet = p.Parent.Conditions[p.Condition].Facet;
TargetSet ts = os.TargetSets[ts_skeleton];
ts.Enabled = true;
for (int i = 1; i < xpe.Length; i++)
{
   if (null != xpe[i].Filter)
   {
      string skeleton = urn.XPathExpression.BlockExpressionSkeleton(i);
      TargetSetLevel cr = ts.GetLevel(skeleton);

      ExpressionNode expr = ExpressionNode.ConvertFromFilterNode(xpe[i].Filter);
      Condition c = ConditionObject.Create(p.Parent, cr.TargetType.Name, expr);
      ts.SetLevelCondition(cr, c.Name);
   }
}
os.Create();
p.ObjectSet = os.Name;

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.