Imports Microsoft.ResourceManagement.WebServices.WSResourceManagement Imports Microsoft.ResourceManagement.Workflow.Activities Imports System.Text Imports System.Globalization Imports System.Text.RegularExpressions Imports System.Diagnostics Public Class CustomUpdate Inherits SequenceActivity #Region "Workflow UI Properties" Public Shared AttributeProperty As DependencyProperty = DependencyProperty.Register("Attribute", GetType(System.String), GetType(CustomUpdate)) <Description("Please specify the target attribute")> _ <DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)> _ <Browsable(True)> _ Public Property Attribute() As String Get Return DirectCast(MyBase.GetValue(CustomUpdate.AttributeProperty), [String]) End Get Set(ByVal value As String) MyBase.SetValue(CustomUpdate.AttributeProperty, value) End Set End Property Public Shared ValueProperty As DependencyProperty = DependencyProperty.Register("Value", GetType(System.String), GetType(CustomUpdate)) <Description("Please specify the target attribute")> _ <DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)> _ <Browsable(True)> _ Public Property Value() As String Get Return DirectCast(MyBase.GetValue(CustomUpdate.ValueProperty), [String]) End Get Set(ByVal value As String) MyBase.SetValue(CustomUpdate.ValueProperty, value) End Set End Property Public Shared AuthZAfterActionProperty As DependencyProperty = DependencyProperty.Register("AuthZAfterAction", GetType(System.Boolean), GetType(CustomUpdate)) <Description("Please specify the target attribute")> _ <DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)> _ <Browsable(True)> _ Public Property AuthZAfterAction() As Boolean Get Return DirectCast(MyBase.GetValue(CustomUpdate.AuthZAfterActionProperty), [Boolean]) End Get Set(ByVal value As Boolean) MyBase.SetValue(CustomUpdate.AuthZAfterActionProperty, value) End Set End Property #End Region #Region "Workflow Properties" Public Shared updateResourceActivity1_ActorId1Property As System.Workflow.ComponentModel.DependencyProperty = DependencyProperty.Register("updateResourceActivity1_ActorId1", GetType(System.Guid), GetType(FIM.CustomWorkflowsActivityLibrary.CustomUpdate)) <System.ComponentModel.DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)> _ <System.ComponentModel.BrowsableAttribute(True)> _ <System.ComponentModel.CategoryAttribute("Parameters")> _ Public Property updateResourceActivity1_ActorId1 As System.Guid Get Return CType(MyBase.GetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ActorId1Property), System.Guid) End Get Set(ByVal value As System.Guid) MyBase.SetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ActorId1Property, value) End Set End Property Public Shared updateResourceActivity1_ApplyAuthorizationPolicy1Property As System.Workflow.ComponentModel.DependencyProperty = DependencyProperty.Register("updateResourceActivity1_ApplyAuthorizationPolicy1", GetType(System.Boolean), GetType(FIM.CustomWorkflowsActivityLibrary.CustomUpdate)) <System.ComponentModel.DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)> _ <System.ComponentModel.BrowsableAttribute(True)> _ <System.ComponentModel.CategoryAttribute("Parameters")> _ Public Property updateResourceActivity1_ApplyAuthorizationPolicy1 As System.Boolean Get Return CType(MyBase.GetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ApplyAuthorizationPolicy1Property), Boolean) End Get Set(ByVal value As System.Boolean) MyBase.SetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ApplyAuthorizationPolicy1Property, value) End Set End Property Public Shared updateResourceActivity1_ResourceId1Property As System.Workflow.ComponentModel.DependencyProperty = DependencyProperty.Register("updateResourceActivity1_ResourceId1", GetType(System.Guid), GetType(FIM.CustomWorkflowsActivityLibrary.CustomUpdate)) <System.ComponentModel.DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)> _ <System.ComponentModel.BrowsableAttribute(True)> _ <System.ComponentModel.CategoryAttribute("Parameters")> _ Public Property updateResourceActivity1_ResourceId1 As System.Guid Get Return CType(MyBase.GetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ResourceId1Property), System.Guid) End Get Set(ByVal value As System.Guid) MyBase.SetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_ResourceId1Property, value) End Set End Property Public Shared updateResourceActivity1_UpdateParameters1Property As System.Workflow.ComponentModel.DependencyProperty = DependencyProperty.Register("updateResourceActivity1_UpdateParameters1", GetType(Microsoft.ResourceManagement.WebServices.WSResourceManagement.UpdateRequestParameter()), GetType(FIM.CustomWorkflowsActivityLibrary.CustomUpdate)) <System.ComponentModel.DesignerSerializationVisibilityAttribute(DesignerSerializationVisibility.Visible)> _ <System.ComponentModel.BrowsableAttribute(True)> _ <System.ComponentModel.CategoryAttribute("Parameters")> _ Public Property updateResourceActivity1_UpdateParameters1 As UpdateRequestParameter() Get Return CType(MyBase.GetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_UpdateParameters1Property), Microsoft.ResourceManagement.WebServices.WSResourceManagement.UpdateRequestParameter()) End Get Set(ByVal value As UpdateRequestParameter()) MyBase.SetValue(FIM.CustomWorkflowsActivityLibrary.CustomUpdate.updateResourceActivity1_UpdateParameters1Property, value) End Set End Property #End Region #Region "Code Activities" Private Sub InitializeUpdateActivity_ExecuteCode(ByVal sender As System.Object, ByVal e As System.EventArgs) '' Get containing Workflow Dim containingWorkflow As SequentialWorkflow = Nothing If Not SequentialWorkflow.TryGetContainingWorkflow(Me, containingWorkflow) Then Throw New InvalidOperationException("Could not get parent workflow!") End If Me.updateResourceActivity1.UpdateParameters = New UpdateRequestParameter() {New UpdateRequestParameter(Me.Attribute, UpdateMode.Modify, Me.Value)} Me.updateResourceActivity1_ActorId1 = containingWorkflow.ActorId Me.updateResourceActivity1_ResourceId1 = containingWorkflow.TargetId If Me.AuthZAfterAction = True Then Me.updateResourceActivity1_ApplyAuthorizationPolicy1 = True End Sub #End Region End Class