⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 emailaction.cs

📁 工作流的基本资料(文档资料
💻 CS
字号:
using System;
using System.Collections;
using log4net;
using NetBpm.Workflow.Organisation;

namespace NetBpm.Workflow.Delegation.Impl.Action
{
	/// <summary> sends an email.</summary>
	public class EmailAction : IActionHandler
	{
		private static readonly ILog log = LogManager.GetLogger(typeof (EmailAction));
		private static readonly AttributeExpressionResolver _attributeExpressionResolver;
		private static readonly ActorExpressionResolver _actorExpressionResolver;

		static EmailAction()
		{
			_attributeExpressionResolver = AttributeExpressionResolver.Instance;
			_actorExpressionResolver = ActorExpressionResolver.Instance;
		}

		public void Run(IActionContext actionContext)
		{
			IDictionary configuration = actionContext.GetConfiguration();
			String subject = (String) configuration["subject"];
			String message = (String) configuration["message"];
			String from = (String) configuration["from"];
			String to = (String) configuration["to"];

			// resolving the texts
			subject = _attributeExpressionResolver.ResolveAttributeExpression(subject, actionContext);
			message = _attributeExpressionResolver.ResolveAttributeExpression(message, actionContext);
			IUser user = (IUser) _actorExpressionResolver.ResolveArgument(to, actionContext);
			to = user.Email;
			if ((Object) from == null)
			{
				from = actionContext.GetProcessDefinition().Name;
				from = from.ToLower();
				from = from.Replace(' ', '.');
				from += "@netbpm.org";
			}

			SendMail(from, to, subject, message, actionContext);
		}

		public void SendMail(String from, String to, String subject, String body, IActionContext interactionContext)
		{
			log.Info("sending mail from '+ from +'to '" + to + "' with subject '" + subject + "' and body '" + body + "'");

		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -