static void Main(string[] args)
        {
            if (args.Length < 2)
            {
                Console.WriteLine("Usage: post-commit <path to repository> <revision>");
                return;
            }

            string repos = args[0];
            string rev   = args[1];

            log.Info(string.Format("Starting pull for {0}, rev {1}", repos, rev));

            try
            {
                CommitInformation ci = new CommitInformation(repos, rev);
                ci.Read();
                ci.PostToMailingList();
            }
            catch (Exception e)
            {
                log.Fatal("Exception in Main()", e);
            }

            log.Info(string.Format("Finishing pull for {0}, rev {1}", repos, rev));
        }
        static void Main(string[] args)
        {
            if (args.Length < 2)
            {
                Console.WriteLine("Usage: post-commit <path to repository> <revision>");
                return;
            }

            string repos = args[0];
            string rev = args[1];
            log.Info(string.Format("Starting pull for {0}, rev {1}", repos, rev));

            try
            {
                CommitInformation ci = new CommitInformation(repos, rev);
                ci.Read();
                ci.PostToMailingList();
            }
            catch(Exception e)
            {
                log.Fatal("Exception in Main()", e);
            }

            log.Info(string.Format("Finishing pull for {0}, rev {1}", repos, rev));
        }
        public override void Format(Mailer mailer, CommitInformation commit)
        {
            // {0} = revision
            // {1} = author
            // {2} = timestamp
            // {3} = message
            string htmlHeadAndMeta = @"
<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.01//EN"">
<html>
  <head>
    <title>Subversion Commit For Revision {0}</title>
  </head>
  <style>
{4}
  </style>
  <body>
    <h1>Commit log for Revision {0}</h1>
    <dl>
      <dt>Author</dt>
      <dd>{1}</dd>
      <dt>Timestamp</dt>
      <dd>{2:yyyy-MM-dd hh:mm:ss}</dd>
    </dl>
    <p id=""message"">{3}</p>";

            StringWriter writer      = new StringWriter();
            string       safeMessage = HttpUtility.HtmlEncode(commit.LookInfo.Message).Replace(Environment.NewLine, "<br />");

            writer.WriteLine(htmlHeadAndMeta, commit.Revision, commit.LookInfo.Author, commit.LookInfo.Timestamp, safeMessage, CssForHtml());
            AppendHtmlLogMessage(writer, commit.LookInfo.Added, "Added");
            AppendHtmlLogMessage(writer, commit.LookInfo.Modified, "Modified");
            AppendHtmlLogMessage(writer, commit.LookInfo.Deleted, "Deleted");

            AppendDiff(writer, commit.LookInfo.DiffLines);
            writer.WriteLine(@"<h5>{0}</h5>", SvnPostCommitHookApplication.InfoMessage());

            writer.WriteLine(@"</body></html>");

            mailer.HtmlBody = writer.ToString();
        }
        public override void Format(Mailer mailer, CommitInformation commit)
        {
            // {0} = revision
            // {1} = author
            // {2} = timestamp
            // {3} = message
            string htmlHeadAndMeta = @"
            <!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.01//EN"">
            <html>
              <head>
            <title>Subversion Commit For Revision {0}</title>
              </head>
              <style>
            {4}
              </style>
              <body>
            <h1>Commit log for Revision {0}</h1>
            <dl>
              <dt>Author</dt>
              <dd>{1}</dd>
              <dt>Timestamp</dt>
              <dd>{2:yyyy-MM-dd hh:mm:ss}</dd>
            </dl>
            <p id=""message"">{3}</p>";

            StringWriter writer = new StringWriter();
            string safeMessage = HttpUtility.HtmlEncode(commit.LookInfo.Message).Replace(Environment.NewLine, "<br />");
            writer.WriteLine(htmlHeadAndMeta, commit.Revision, commit.LookInfo.Author, commit.LookInfo.Timestamp, safeMessage, CssForHtml());
            AppendHtmlLogMessage(writer, commit.LookInfo.Added, "Added");
            AppendHtmlLogMessage(writer, commit.LookInfo.Modified, "Modified");
            AppendHtmlLogMessage(writer, commit.LookInfo.Deleted, "Deleted");

            AppendDiff(writer, commit.LookInfo.DiffLines);
            writer.WriteLine(@"<h5>{0}</h5>", SvnPostCommitHookApplication.InfoMessage());

            writer.WriteLine(@"</body></html>");

            mailer.HtmlBody = writer.ToString();
        }
        public override void Format(Mailer mailer, CommitInformation commit)
        {
            StringWriter writer = new StringWriter();

            writer.WriteLine("Author: {0}", commit.LookInfo.Author);
            writer.WriteLine("Date: {0:yyyy-MM-dd hh:mm:ss}", commit.LookInfo.Timestamp);
            writer.WriteLine("Revision: {0}", commit.Revision);
            writer.WriteLine("Message:");
            writer.WriteLine(commit.LookInfo.Message);
            writer.WriteLine();
            writer.WriteLine();

            AppendLogMessage(writer, commit.LookInfo.Added, "Added");
            AppendLogMessage(writer, commit.LookInfo.Modified, "Modified");
            AppendLogMessage(writer, commit.LookInfo.Deleted, "Deleted");

            writer.WriteLine();
            writer.WriteLine();
            writer.WriteLine(SvnPostCommitHookApplication.InfoMessage());

            mailer.TextBody = writer.ToString();
        }
        public override void Format(Mailer mailer, CommitInformation commit)
        {
            StringWriter writer = new StringWriter();

            writer.WriteLine("Author: {0}", commit.LookInfo.Author);
            writer.WriteLine("Date: {0:yyyy-MM-dd hh:mm:ss}", commit.LookInfo.Timestamp);
            writer.WriteLine("Revision: {0}", commit.Revision);
            writer.WriteLine("Message:");
            writer.WriteLine(commit.LookInfo.Message);
            writer.WriteLine();
            writer.WriteLine();

            AppendLogMessage(writer, commit.LookInfo.Added, "Added");
            AppendLogMessage(writer, commit.LookInfo.Modified, "Modified");
            AppendLogMessage(writer, commit.LookInfo.Deleted, "Deleted");

            writer.WriteLine();
            writer.WriteLine();
            writer.WriteLine(SvnPostCommitHookApplication.InfoMessage());

            mailer.TextBody = writer.ToString();
        }
Exemple #7
0
 public abstract void Format(Mailer mailer, CommitInformation commit);
 public abstract void Format(Mailer mailer, CommitInformation commit);