IVersionProvider.cs 1021 B

1234567891011121314151617181920212223242526272829
  1. namespace Wayne.Lib
  2. {
  3. /// <summary>
  4. /// Keeps track of versions in an application.
  5. /// </summary>
  6. public interface IVersionProvider
  7. {
  8. /// <summary>
  9. /// Main component version of the current process.
  10. /// </summary>
  11. VersionNumber ReleaseComponentVersion { get; }
  12. /// <summary>
  13. /// Gets the version for a sub component.
  14. /// </summary>
  15. /// <typeparam name="TVersionIdentifier"></typeparam>
  16. /// <param name="versionIdentifier"></param>
  17. /// <returns></returns>
  18. VersionNumber GetVersion<TVersionIdentifier>(TVersionIdentifier versionIdentifier);
  19. ///<summary>
  20. /// Sets the version for a sub component
  21. ///</summary>
  22. ///<param name="versionIdentifier"></param>
  23. ///<param name="versionNumber"></param>
  24. ///<typeparam name="TVersionIdentifier"></typeparam>
  25. void SetVersion<TVersionIdentifier>(TVersionIdentifier versionIdentifier, VersionNumber versionNumber);
  26. }
  27. }