PolicyCategory Class

Represents a category that classifies policies in SQL Server Policy-Based Management. Policy Categories are used to group policies together to which target objects can subscribe.

Inheritance Hierarchy

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

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

Syntax

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

The PolicyCategory type exposes the following members.

Constructors

  Name Description
Public method PolicyCategory() Initializes a new instance of the PolicyCategory class.
Public method PolicyCategory(PolicyStore, String) Initializes a new instance of the PolicyCategory class.

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 propertyStatic member DefaultCategory Gets the category to which the policy is assigned by default.
Public property ID Gets the ID value that uniquely identifies the policy category.
Public property IdentityKey Gets the key that uniquely identifies the policy category.
Public property MandateDatabaseSubscriptions Gets or sets the Boolean value that determines whether the database subscriptions are permitted.
Public property Metadata Returns metadata about the instance and its domain. (Inherited from SfcInstance.)
Public property Name Gets the name of the policy category.
Public property Parent Gets or sets the parent instance via the keychain.
Public property Properties Returns a collection instance properties. (Inherited from SfcInstance.)
Protected property State Returns the state of the SfcInstance object. (Inherited from SfcInstance.)
Public property Urn Returns the uniform resource name of the SfcInstance object. (Inherited from SfcInstance.)

Top

Methods

  Name Description
Public method Alter Updates any PolicyCategory object property changes on the instance of SQL Server.
Public method Create Creates a category for the PolicyCategory class.
Protected method CreateIdentityKey Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Discover Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Drop Removes the policy category from the instance of SQL Server.
Public method Equals (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 for the object.
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 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.)
Public method Refresh Refreshes the object's properties by reading them from the server. (Inherited from SfcInstance.)
Public method Rename Renames the policy.
Protected method ResetKey Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SfcInstance.)
Public method Serialize Serializes the instance to XML. (Inherited from SfcInstance.)
Public method ToString Returns a string representation of the instance Urn. (Inherited from SfcInstance.)

Top

Events

  Name Description
Public event PropertyChanged CLS-compliant event for property changes. (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 ISfcAlterable.ScriptAlter Alters the script that is used to create the policy. Do not reference this member directly in your code. It supports the SQL Server infrastructure..
Explicit interface implemetationPrivate method ISfcCreatable.ScriptCreate Creates a script that is used to create the policy. Do not reference this member directly in your code. It supports the SQL Server infrastructure..
Explicit interface implemetationPrivate method ISfcDroppable.ScriptDrop Drops the script that is used to create the policy. Do not reference this member directly in your code. It supports the SQL Server infrastructure.
Explicit interface implemetationPrivate method ISfcRenamable.Rename Renames the policy with the specified key.
Explicit interface implemetationPrivate method ISfcRenamable.ScriptRename Renames the script that is used to create the policy with the specified key.

Top

Remarks

Using the PolicyCategory object you can:

  • Create a policy category to which target objects can subscribe.

  • Specify the policy category to use in a subscription

Examples

C#

PolicyCategorySubscription policyCatSub = new PolicyCategorySubscription(ps);
policyCatSub.PolicyCategory = category;
policyCatSub.TargetType = targetType;
policyCatSub.Target = targetObject;
policyCatSub.Create();

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.

See Also

Reference

Microsoft.SqlServer.Management.Dmf Namespace