namespace ClawdDotNet.Licensing; /// /// Wo der Lizenzschlüssel liegt — und wo die Adresse steht, gegen die geprüft wird. /// /// Eine Schnittstelle, weil es zwei Ablagen gibt (#528, E-M3). Die Anwendung /// führt den Schlüssel in Settings.json, der Instanzmanager in /// manager.json. Der Torwächter selbst soll von beidem nichts wissen: Er prüft /// Schlüssel, er verwaltet keine Dateien. /// /// Nach E-M3 gehört die Lizenz auf Dauer dem Manager — eine Lizenz gilt der /// Installation und erlaubt beliebig viele Instanzen. Bis eine Instanz feststellen kann, /// ob ein Manager da ist, führen beide ihren eigenen Schlüssel; sonst entstünde /// zwischendurch eine Fassung ganz ohne Durchsetzung. /// public interface ILicenseStore { /// Die Adresse des Deploymentcenters. Leer heißt: Vorgabe aus . string ServerUrl { get; } /// Der hinterlegte Schlüssel. Der Torwächter schreibt ihn zurück, wenn ein neuer eingegeben wurde. string LicenseKey { get; set; } /// /// Schreibt den Schlüssel fest. /// /// Darf werfen — der Aufrufer behandelt das als „gilt, ließ sich aber nicht /// sichern" und läuft weiter. /// void Save(); }