GitHub-Updater

09/01/2016 13:16 Else#1
[Only registered and activated users can see links. Click Here To Register...]
Die Bibliothek stellt Synchrone-/Asynchrone Funktionen bereit, um die Prüfsumme der Dateien, die sich in der Validierungsdatei befinden, zu Überprüfen.
Es werden fehlende/unterschiedliche Dateien heruntergeladen und die alten nach einem Neustart der Anwendung gelöscht. Zudem kann die Prüfsumme/Download-URL für die jeweilige Datei festgelegt werden.


Validierungsdatei

Diese Datei beinhaltet i.d.R. eine Auflistung der Dateien, die für die eigentliche Anwendung relevant sind. Das können hierbei zusätzliche Bibliotheken sein, oder auch die eigene Anwendung selbst. Die Datei hat immer die Endung .json. Ein Beispiel zum Inhalt:

Code:
[
  {
    "md5": "231b05834f55d23ad8573c21be3eccf1",
    "url": "https://raw.github.com/my_username/my_repository/my_branch/test_a.txt"
  }
]
Beispiel

Code:
using BotNix.GitHub.Updater;
using BotNix.GitHub.Updater.Services;

using System;
using System.Collections.Generic;

namespace ConsoleApplication
{
  /// <summary>
  /// Shows the program startup.
  /// </summary>
  public class Program {
    #region Public
    #region Methods
    /// <summary>
    /// The main entry point for the application.
    /// </summary>
    /// <param name="args"><see cref="System.String"/></param>
    public static void Main(string[] args) {
      IList<string> ValidationFilenames = new List<string>() { "test_a", "test_b" };
      Client Updater = Client.GetInstance();
      // declare repository variables
      Updater.Configuration.Repository.Username = "my_username";
      Updater.Configuration.Repository.Name = "my_repository";
      Updater.Configuration.Repository.Branch = "master";
      // declare files to validate; dsiable auto restart
      Updater.Configuration.Repository.ValidationFilenames.AddRange(ValidationFilenames);
      Updater.Configuration.Restart = false;

      Updater.CheckForUpdateAsync(CheckForUpdateAsync);
      Console.ReadLine();
    }

    static void CheckForUpdateAsync(IEnumerable<UpdateException> Asserts) {
      foreach (UpdateException Assert in Asserts)
        Console.WriteLine(Assert.Message);
    }
    #endregion
    #endregion
  }
}
09/01/2016 14:10 Fevii#2
Sieht mir nicht nach einem groß release aus also -> [Only registered and activated users can see links. Click Here To Register...]
09/01/2016 14:18 Devsome#3
Quote:
Originally Posted by Else View Post
[...]unterschiedliche Dateien heruntergeladen und die alten nach einem Neustart der Anwendung gelöscht[...]
Was ist bei einem merge ?

Quote:
Originally Posted by Fevii View Post
Sieht mir nicht nach einem groß release aus also -> [Only registered and activated users can see links. Click Here To Register...]
Sehe ich auch so.