public override void ExecuteCmdlet() { base.ExecuteCmdlet(); var ssisMigrationInfo = new SsisMigrationInfo { SsisStoreType = SsisStoreType.SsisCatalog, ProjectOverwriteOption = MyInvocation.BoundParameters.ContainsKey("ProjectOverwriteOption") ? this.ProjectOverwriteOption.ToString() : SsisMigrationOverwriteOption.Ignore.ToString(), EnvironmentOverwriteOption = MyInvocation.BoundParameters.ContainsKey("EnvironmentOverwriteOption") ? this.EnvironmentOverwriteOption.ToString() : SsisMigrationOverwriteOption.Ignore.ToString() }; WriteObject(ssisMigrationInfo); }
public override ProjectTaskProperties ProcessTaskCmdlet() { SqlConnectionInfo targetConnectionInfo = null; SqlConnectionInfo sourceConnectionInfo = null; SsisMigrationInfo ssisMigrationInfo = null; if (MyInvocation.BoundParameters.ContainsKey(TargetConnection)) { targetConnectionInfo = (SqlConnectionInfo)MyInvocation.BoundParameters[TargetConnection]; PSCredential cred = (PSCredential)MyInvocation.BoundParameters[TargetCred]; targetConnectionInfo.UserName = cred.UserName; targetConnectionInfo.Password = Decrypt(cred.Password); } if (MyInvocation.BoundParameters.ContainsKey(SourceConnection)) { sourceConnectionInfo = (SqlConnectionInfo)MyInvocation.BoundParameters[SourceConnection]; PSCredential cred = (PSCredential)MyInvocation.BoundParameters[SourceCred]; sourceConnectionInfo.UserName = cred.UserName; sourceConnectionInfo.Password = Decrypt(cred.Password); } if (MyInvocation.BoundParameters.ContainsKey(SsisMigrationInfo)) { ssisMigrationInfo = (SsisMigrationInfo)MyInvocation.BoundParameters[SsisMigrationInfo]; } else { ssisMigrationInfo = new SsisMigrationInfo { SsisStoreType = SsisStoreType.SsisCatalog, ProjectOverwriteOption = SsisMigrationOverwriteOption.Ignore, EnvironmentOverwriteOption = SsisMigrationOverwriteOption.Ignore }; } var properties = new MigrateSsisTaskProperties { Input = new MigrateSsisTaskInput { TargetConnectionInfo = targetConnectionInfo, SourceConnectionInfo = sourceConnectionInfo, SsisMigrationInfo = ssisMigrationInfo } }; return(properties); }