public StateAdmin Clone() { TestStateAdmin sa = new TestStateAdmin { ActionAssignToUser = this.ActionAssignToUser, ActionAssignToUserDefinition = this.ActionAssignToUserDefinition.Clone(), ActionConvertToPDF = this.ActionConvertToPDF, ActionConvertToPDFDefinition = this.ActionConvertToPDFDefinition.Clone(), ActionCreateSeparateAssignment = this.ActionCreateSeparateAssignment, ActionCreateSeparateAssignmentDefinition = this.ActionCreateSeparateAssignmentDefinition.Clone(), ActionDelete = this.ActionDelete, ActionMarkForArchiving = this.ActionMarkForArchiving, ActionRunVBScript = this.ActionRunVBScript, ActionRunVBScriptDefinition = this.ActionRunVBScriptDefinition, ActionSendNotification = this.ActionSendNotification, ActionSendNotificationDefinition = this.ActionSendNotificationDefinition.Clone(), ActionSetPermissions = this.ActionSetPermissions, ActionSetPermissionsDetailedDefinition = this.ActionSetPermissionsDetailedDefinition.Clone(), ActionSetProperties = this.ActionSetProperties, ActionSetPropertiesDefinition = this.ActionSetPropertiesDefinition.Clone(), AutomaticStateTransitionAllowedByVBScript = this.AutomaticStateTransitionAllowedByVBScript, AutomaticStateTransitionCriteria = new SearchConditions() }; for (int i = 1; i <= this.AutomaticStateTransitionCriteria.Count; ++i) { SearchCondition sc = this.AutomaticStateTransitionCriteria[i]; sa.AutomaticStateTransitionCriteria.Add(-1, sc.Clone()); } sa.AutomaticStateTransitionInDays = this.AutomaticStateTransitionInDays; sa.AutomaticStateTransitionMode = this.AutomaticStateTransitionMode; sa.AutomaticStateTransitionNextState = this.AutomaticStateTransitionNextState; sa.CheckInOutPermissions = this.CheckInOutPermissions; sa.Description = this.Description; sa.ID = this.ID; sa.InOutPermissions = this.InOutPermissions.Clone(); sa.Name = this.Name; sa.Postconditions = this.Postconditions.Clone(); sa.Preconditions = this.Preconditions.Clone(); sa.RestrictTransitions = this.RestrictTransitions; sa.SemanticAliases = new SemanticAliases { Value = this.SemanticAliases.Value }; sa.TransitionsRequireEditAccessToObject = this.TransitionsRequireEditAccessToObject; return(sa); }
public void Add(int index, StateAdmin stateAdmin) { TestStateAdmin newState = (stateAdmin as TestStateAdmin) ?? new TestStateAdmin(stateAdmin); if (index == -1 || index == States.Count + 1) { States.Add(newState); } else if (index > States.Count) { throw new Exception("Index out of range: " + index); } else { // I hate 1 indexing States[index - 1] = newState; } }
internal TestState(TestStateAdmin sa) { ID = sa.ID; Name = sa.Name; }