public JsonResult SorceTypeChange(string sorceType) { return(ExecuteFunctionRun(() => { List <ListItem> items = new List <ListItem>(); ReportSourceType SorceType = (ReportSourceType)Enum.Parse(typeof(ReportSourceType), sorceType ?? ReportSourceType.H3System.ToString()); switch (SorceType) { case ReportSourceType.H3System: DataModel.BizObjectSchema[] schemas = this.Engine.BizObjectManager.GetPublishedSchemas(); FunctionNode[] packages = this.Engine.FunctionAclManager.GetFunctionNodesByNodeType(FunctionNodeType.BizWorkflowPackage); foreach (DataModel.BizObjectSchema schema in schemas) { for (int i = 0, j = packages.Length; i < j; i++) { if (packages[i].Code.Equals(schema.SchemaCode, StringComparison.InvariantCultureIgnoreCase)) { items.Add(new ListItem(packages[i].DisplayName, schema.SchemaCode + "@" + schema.TableName)); } } } break; case ReportSourceType.DbConnection: BizDbConnectionConfig[] configs = this.Engine.SettingManager.GetBizDbConnectionConfigList(); foreach (BizDbConnectionConfig config in configs) { items.Add(new ListItem(config.DisplayName, config.DbCode)); } break; } return Json(items, JsonRequestBehavior.AllowGet); })); }
private IReportGenerator getReportGenerator(ReportSourceType? reportSourceType) { IReportGenerator reportGenerator = null; if (reportSourceType.HasValue) { reportGenerator = getReportGeneratorByType(reportSourceType.ToString()); } if (reportGenerator == null) { reportGenerator = _reportGenerator.Count() == 1 ? _reportGenerator.FirstOrDefault() : getReportGeneratorByType(Configurator.DefaultReportSource.ToString()); } return reportGenerator; }
static public void Send(DbApi db, string message, ReportSourceType source_type, string source_id = null, bool error = true) { try { if (string.IsNullOrWhiteSpace(Properties.Settings.Default.SmtpHost)) { Log.Main.Warning("Message not emailed as SmtpHost is not specified:\n" + (error ? "ERROR:" : "" + source_id) + ":\n" + message); return; } if (error) { Log.Main.Error(message); } else { Log.Main.Inform(message); } string AdminEmails = null; if (source_id != null) { switch (source_type) { case ReportSourceType.CRAWLER: AdminEmails = (string)db["SELECT AdminEmails FROM Crawlers WHERE Id=@Id"].GetSingleValue("@Id", source_id); break; case ReportSourceType.SERVICE: AdminEmails = (string)db["SELECT AdminEmails FROM Services WHERE Id=@Id"].GetSingleValue("@Id", source_id); break; case ReportSourceType.MANAGER: break; default: throw new Exception("Option is not defined."); } } if (AdminEmails == null) { AdminEmails = Properties.Settings.Default.DefaultAdminEmails; } if (AdminEmails != null) { AdminEmails = Regex.Replace(AdminEmails.Trim(), @"[\s+\,]+", ",", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Singleline); } else { Log.Main.Error("No email is defined to send messages."); } MailMessage m = new MailMessage(); m.From = new MailAddress(Properties.Settings.Default.EmailSender); m.To.Add(AdminEmails); string subject = "Crawler Host Service Manager:"; if (source_id != null) { subject += " " + source_id; } if (error) { subject += " error"; } subject += " notification"; m.Subject = subject; m.Body = message; System.Net.Mail.SmtpClient c = new SmtpClient(Properties.Settings.Default.SmtpHost, Properties.Settings.Default.SmtpPort); c.EnableSsl = true; c.DeliveryMethod = SmtpDeliveryMethod.Network; c.UseDefaultCredentials = false; c.Credentials = new System.Net.NetworkCredential(Properties.Settings.Default.SmtpLogin, Properties.Settings.Default.SmtpPassword); try { c.Send(m); } catch (Exception e) { Log.Main.Error(e); } } catch (Exception e) { Log.Main.Error(e); } }
static public void Send(DbApi db, string message, ReportSourceType source_type, string source_id = null, bool error = true) { try { if (string.IsNullOrWhiteSpace(Properties.Settings.Default.SmtpHost)) { Log.Main.Warning("Message not emailed as SmtpHost is not specified:\n" + (error ? "ERROR:" : "" + source_id) + ":\n" + message); return; } if (error) Log.Main.Error(message); else Log.Main.Inform(message); string AdminEmails = null; if (source_id != null) switch (source_type) { case ReportSourceType.CRAWLER: AdminEmails = (string)db["SELECT AdminEmails FROM Crawlers WHERE Id=@Id"].GetSingleValue("@Id", source_id); break; case ReportSourceType.SERVICE: AdminEmails = (string)db["SELECT AdminEmails FROM Services WHERE Id=@Id"].GetSingleValue("@Id", source_id); break; case ReportSourceType.MANAGER: break; default: throw new Exception("Option is not defined."); } if (AdminEmails == null) AdminEmails = Properties.Settings.Default.DefaultAdminEmails; if (AdminEmails != null) AdminEmails = Regex.Replace(AdminEmails.Trim(), @"[\s+\,]+", ",", RegexOptions.Compiled | RegexOptions.IgnoreCase | RegexOptions.Singleline); else Log.Main.Error("No email is defined to send messages."); MailMessage m = new MailMessage(); m.From = new MailAddress(Properties.Settings.Default.EmailSender); m.To.Add(AdminEmails); string subject = "Crawler Host Service Manager:"; if (source_id != null) subject += " " + source_id; if (error) subject += " error"; subject += " notification"; m.Subject = subject; m.Body = message; System.Net.Mail.SmtpClient c = new SmtpClient(Properties.Settings.Default.SmtpHost, Properties.Settings.Default.SmtpPort); c.EnableSsl = true; c.DeliveryMethod = SmtpDeliveryMethod.Network; c.UseDefaultCredentials = false; c.Credentials = new System.Net.NetworkCredential(Properties.Settings.Default.SmtpLogin, Properties.Settings.Default.SmtpPassword); try { c.Send(m); } catch (Exception e) { Log.Main.Error(e); } } catch (Exception e) { Log.Main.Error(e); } }