// // Copyright (C) Microsoft. All rights reserved. // using Microsoft.PowerShell.Activities; using System.Management.Automation; using System.Activities; using System.Collections.Generic; using System.ComponentModel; namespace Microsoft.PowerShell.Utility.Activities { /// /// Activity to invoke the Microsoft.PowerShell.Utility\Send-MailMessage command in a Workflow. /// [System.CodeDom.Compiler.GeneratedCode("Microsoft.PowerShell.Activities.ActivityGenerator.GenerateFromName", "3.0")] public sealed class SendMailMessage : PSRemotingActivity { /// /// Gets the display name of the command invoked by this activity. /// public SendMailMessage() { this.DisplayName = "Send-MailMessage"; } /// /// Gets the fully qualified name of the command invoked by this activity. /// public override string PSCommandName { get { return "Microsoft.PowerShell.Utility\\Send-MailMessage"; } } // Arguments /// /// Provides access to the Attachments parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Attachments { get; set; } /// /// Provides access to the Bcc parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Bcc { get; set; } /// /// Provides access to the Body parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Body { get; set; } /// /// Provides access to the BodyAsHtml parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument BodyAsHtml { get; set; } /// /// Provides access to the Encoding parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Encoding { get; set; } /// /// Provides access to the Cc parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Cc { get; set; } /// /// Provides access to the DeliveryNotificationOption parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument DeliveryNotificationOption { get; set; } /// /// Provides access to the From parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument From { get; set; } /// /// Provides access to the SmtpServer parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument SmtpServer { get; set; } /// /// Provides access to the Priority parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Priority { get; set; } /// /// Provides access to the Subject parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Subject { get; set; } /// /// Provides access to the To parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument To { get; set; } /// /// Provides access to the Credential parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Credential { get; set; } /// /// Provides access to the UseSsl parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument UseSsl { get; set; } /// /// Provides access to the Port parameter. /// [ParameterSpecificCategory] [DefaultValue(null)] public InArgument Port { get; set; } // Module defining this command // Optional custom code for this activity /// /// Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. /// /// The NativeActivityContext for the currently running activity. /// A populated instance of Sytem.Management.Automation.PowerShell /// The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. protected override ActivityImplementationContext GetPowerShell(NativeActivityContext context) { System.Management.Automation.PowerShell invoker = global::System.Management.Automation.PowerShell.Create(); System.Management.Automation.PowerShell targetCommand = invoker.AddCommand(PSCommandName); // Initialize the arguments if(Attachments.Expression != null) { targetCommand.AddParameter("Attachments", Attachments.Get(context)); } if(Bcc.Expression != null) { targetCommand.AddParameter("Bcc", Bcc.Get(context)); } if(Body.Expression != null) { targetCommand.AddParameter("Body", Body.Get(context)); } if(BodyAsHtml.Expression != null) { targetCommand.AddParameter("BodyAsHtml", BodyAsHtml.Get(context)); } if(Encoding.Expression != null) { targetCommand.AddParameter("Encoding", Encoding.Get(context)); } if(Cc.Expression != null) { targetCommand.AddParameter("Cc", Cc.Get(context)); } if(DeliveryNotificationOption.Expression != null) { targetCommand.AddParameter("DeliveryNotificationOption", DeliveryNotificationOption.Get(context)); } if(From.Expression != null) { targetCommand.AddParameter("From", From.Get(context)); } if(SmtpServer.Expression != null) { targetCommand.AddParameter("SmtpServer", SmtpServer.Get(context)); } if(Priority.Expression != null) { targetCommand.AddParameter("Priority", Priority.Get(context)); } if(Subject.Expression != null) { targetCommand.AddParameter("Subject", Subject.Get(context)); } if(To.Expression != null) { targetCommand.AddParameter("To", To.Get(context)); } if(Credential.Expression != null) { targetCommand.AddParameter("Credential", Credential.Get(context)); } if(UseSsl.Expression != null) { targetCommand.AddParameter("UseSsl", UseSsl.Get(context)); } if(Port.Expression != null) { targetCommand.AddParameter("Port", Port.Get(context)); } return new ActivityImplementationContext() { PowerShellInstance = invoker }; } } }