/// <summary> /// Restores UI control settings stored in the data parameter. /// Converts the activity settings part data to a list of definitions /// which can be applied to the available definition listings (web controls) /// Assigning a definition to a listing will make it active and visible /// </summary> /// <param name="data">Contains data about the values of UI controls.</param> public void RestoreSettings(ActivitySettingsPartData data) { this.ResetListings(); DefinitionsConverter converter = new DefinitionsConverter(data, this.Id); for (int i = 0; i < converter.Definitions.Count; i++) { this.definitionListings[i].Definition = converter.Definitions[i]; } }
/// <summary> /// This method initializes definitions listing with data from the definitions hash table. /// </summary> /// <param name="definitionsTable">The definitions hash table.</param> public void LoadActivitySettings(Hashtable definitionsTable) { // Convert the update definitions hashtable to a list of update definitions // which can be applied to the available update definition listings (web controls) // Assigning an update definition to a listing will make it active and visible this.ResetListings(); DefinitionsConverter converter = new DefinitionsConverter(definitionsTable); for (int i = 0; i < converter.Definitions.Count; i++) { this.definitionListings[i].Definition = converter.Definitions[i]; } }
/// <summary> /// Saves the current UI control settings. /// Converts the definition listings (web controls) to settings part data entries /// If an existing settings part data object (presumably created by the form controller) was supplied, /// all settings part data for the definition listings will be added to the existing data /// </summary> /// <param name="data">The <see cref="ActivitySettingsPartData"/> data created by the form controller.</param> /// <returns>Returns <see cref="ActivitySettingsPartData"/>.</returns> public ActivitySettingsPartData PersistSettings(ActivitySettingsPartData data) { DefinitionsConverter converter = new DefinitionsConverter(this.definitionListings, data, this.Id); return converter.SettingsPartData; }
public override Activity GenerateActivityOnWorkflow(SequentialWorkflow workflow) { Logger.Instance.WriteMethodEntry(); try { // Generate a new instance of the Run PowerShell Script activity // and add properties based on specified values RunPowerShellScript wfa = new RunPowerShellScript { ActivityDisplayName = this.activityDisplayName.Value, Advanced = this.advanced.Value, ActivityExecutionCondition = this.activityExecutionCondition.Value, PowerShellUser = this.powerShellUser.Value, PowerShellUserPassword = this.powerShellUserPassword.Value, ImpersonatePowerShellUser = this.impersonatePowerShellUser.Value, ImpersonatePowerShellUserLoadUserProfile = this.loadUserProfile.Value, ImpersonatePowerShellUserLogOnType = this.impersonatePowerShellUser.Value ? GetImpersonationLogOnType(this.impersonationLogOnType.Value) : LogOnType.None, ScriptLocation = GetScriptLocation(this.scriptLocation.Value), Script = this.script.Value, FailOnMissing = this.failOnMissing.Value, InputType = GetInputType(this.inputType.Value), ReturnType = GetReturnType(this.returnType.Value), ReturnValueLookup = this.returnValueLookup.Value }; // Depending on the input type selection, // the activity will be configured with parameters or arguments, but not both switch (wfa.InputType) { case PowerShellInputType.Parameters: { DefinitionsConverter parametersConverter = new DefinitionsConverter(this.parameters.DefinitionListings); wfa.ParametersTable = parametersConverter.DefinitionsTable; } break; case PowerShellInputType.Arguments: { wfa.Arguments = this.FetchArguments(); } break; } return wfa; } catch (Exception e) { Logger.Instance.ReportError(e); throw; } finally { Logger.Instance.WriteMethodExit(); } }
public override Activity GenerateActivityOnWorkflow(SequentialWorkflow workflow) { Logger.Instance.WriteMethodEntry(); try { // Create a new instance of the GenerateUniqueValue activity and assign // dependenty property values based on inputs to standard activity controls GenerateUniqueValue wfa = new GenerateUniqueValue { ActivityDisplayName = this.activityDisplayName.Value, ActivityExecutionCondition = this.activityExecutionCondition.Value, PublicationTarget = this.publicationTarget.Value, ConflictFilter = this.conflictFilter.Value, QueryLdap = this.queryLdap.Value, UniquenessSeed = this.uniquenessSeed.Value, ValueExpressions = this.FetchValueExpressions() }; DefinitionsConverter ldapQueriesConverter = new DefinitionsConverter(this.ldapQueries.DefinitionListings); wfa.LdapQueriesTable = ldapQueriesConverter.DefinitionsTable; return wfa; } catch (Exception e) { Logger.Instance.ReportError(e); throw; } finally { Logger.Instance.WriteMethodExit(); } }
public override Activity GenerateActivityOnWorkflow(SequentialWorkflow workflow) { Logger.Instance.WriteMethodEntry(); try { // Create a new instance of the UpdateResources activity and assign // dependenty property values based on inputs to standard activity controls UpdateResources wfa = new UpdateResources { ActivityDisplayName = this.activityDisplayName.Value, QueryResources = this.queryResources.Value, Advanced = this.advanced.Value, ActivityExecutionCondition = this.activityExecutionCondition.Value, Iteration = this.iteration.Value, ActorType = GetActorType(this.actorType.Value), ActorString = this.actorString.Value, ApplyAuthorizationPolicy = this.applyAuthorizationPolicy.Value, ResolveDynamicGrammar = this.resolveDynamicGrammar.Value }; // Convert the definition listings (web controls) to hash tables which can be serialized to the XOML workflow definition // A hash table is used due to issues with deserialization of lists and other structured data DefinitionsConverter queriesConverter = new DefinitionsConverter(this.queries.DefinitionListings); DefinitionsConverter updatesConverter = new DefinitionsConverter(this.updates.DefinitionListings); wfa.QueriesTable = queriesConverter.DefinitionsTable; wfa.UpdatesTable = updatesConverter.DefinitionsTable; return wfa; } catch (Exception e) { Logger.Instance.ReportError(e); throw; } finally { Logger.Instance.WriteMethodExit(); } }
/// <summary> /// Saves the current UI control settings. /// Converts the definition listings (web controls) to settings part data entries /// If an existing settings part data object (presumably created by the form controller) was supplied, /// all settings part data for the definition listings will be added to the existing data /// </summary> /// <param name="data">The <see cref="ActivitySettingsPartData"/> data created by the form controller.</param> /// <returns>Returns <see cref="ActivitySettingsPartData"/>.</returns> public ActivitySettingsPartData PersistSettings(ActivitySettingsPartData data) { DefinitionsConverter converter = new DefinitionsConverter(this.definitionListings, data, this.Id); return(converter.SettingsPartData); }
public override Activity GenerateActivityOnWorkflow(SequentialWorkflow workflow) { Logger.Instance.WriteMethodEntry(); try { // Create a new instance of the VerifyRequest activity and assign // dependenty property values based on inputs to standard activity controls VerifyRequest wfa = new VerifyRequest { ActivityDisplayName = this.activityDisplayName.Value, Advanced = this.advanced.Value, ActivityExecutionCondition = this.activityExecutionCondition.Value, CheckForConflict = this.checkForConflict.Value, ConflictFilter = this.conflictFilter.Value, ConflictDenialMessage = this.conflictDenialMessage.Value, CheckForRequestConflict = this.checkForRequestConflict.Value, RequestConflictAdvancedFilter = this.requestConflictAdvancedFilter.Value, RequestConflictMatchCondition = this.requestConflictMatchCondition.Value, RequestConflictDenialMessage = this.requestConflictDenialMessage.Value }; // Convert the definition listings (web controls) to a hash table which can be serialized to the XOML workflow definition // A hash table is used due to issues with deserialization of lists and other structured data DefinitionsConverter converter = new DefinitionsConverter(this.conditions.DefinitionListings); wfa.ConditionsTable = converter.DefinitionsTable; return wfa; } catch (Exception e) { Logger.Instance.ReportError(e); throw; } finally { Logger.Instance.WriteMethodExit(); } }