diff options
Diffstat (limited to 'MediaBrowser.Model/Updates')
| -rw-r--r-- | MediaBrowser.Model/Updates/CheckForUpdateResult.cs | 30 | ||||
| -rw-r--r-- | MediaBrowser.Model/Updates/InstallationInfo.cs | 46 | ||||
| -rw-r--r-- | MediaBrowser.Model/Updates/PackageInfo.cs | 176 | ||||
| -rw-r--r-- | MediaBrowser.Model/Updates/PackageTargetSystem.cs | 21 | ||||
| -rw-r--r-- | MediaBrowser.Model/Updates/PackageVersionClass.cs | 21 | ||||
| -rw-r--r-- | MediaBrowser.Model/Updates/PackageVersionInfo.cs | 95 |
6 files changed, 389 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Updates/CheckForUpdateResult.cs b/MediaBrowser.Model/Updates/CheckForUpdateResult.cs new file mode 100644 index 000000000..ff0bba197 --- /dev/null +++ b/MediaBrowser.Model/Updates/CheckForUpdateResult.cs @@ -0,0 +1,30 @@ + +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Class CheckForUpdateResult + /// </summary> + public class CheckForUpdateResult + { + /// <summary> + /// Gets or sets a value indicating whether this instance is update available. + /// </summary> + /// <value><c>true</c> if this instance is update available; otherwise, <c>false</c>.</value> + public bool IsUpdateAvailable { get; set; } + + /// <summary> + /// Gets or sets the available version. + /// </summary> + /// <value>The available version.</value> + public string AvailableVersion + { + get { return Package != null ? Package.versionStr : "0.0.0.1"; } + set { } // need this for the serializer + } + + /// <summary> + /// Get or sets package information for an available update + /// </summary> + public PackageVersionInfo Package { get; set; } + } +} diff --git a/MediaBrowser.Model/Updates/InstallationInfo.cs b/MediaBrowser.Model/Updates/InstallationInfo.cs new file mode 100644 index 000000000..09b4975a8 --- /dev/null +++ b/MediaBrowser.Model/Updates/InstallationInfo.cs @@ -0,0 +1,46 @@ +using System; + +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Class InstallationInfo + /// </summary> + public class InstallationInfo + { + /// <summary> + /// Gets or sets the id. + /// </summary> + /// <value>The id.</value> + public Guid Id { get; set; } + + /// <summary> + /// Gets or sets the name. + /// </summary> + /// <value>The name.</value> + public string Name { get; set; } + + /// <summary> + /// Gets or sets the assembly guid. + /// </summary> + /// <value>The guid of the assembly.</value> + public string AssemblyGuid { get; set; } + + /// <summary> + /// Gets or sets the version. + /// </summary> + /// <value>The version.</value> + public string Version { get; set; } + + /// <summary> + /// Gets or sets the update class. + /// </summary> + /// <value>The update class.</value> + public PackageVersionClass UpdateClass { get; set; } + + /// <summary> + /// Gets or sets the percent complete. + /// </summary> + /// <value>The percent complete.</value> + public double? PercentComplete { get; set; } + } +} diff --git a/MediaBrowser.Model/Updates/PackageInfo.cs b/MediaBrowser.Model/Updates/PackageInfo.cs new file mode 100644 index 000000000..e46d59fc0 --- /dev/null +++ b/MediaBrowser.Model/Updates/PackageInfo.cs @@ -0,0 +1,176 @@ +using System; +using System.Collections.Generic; + +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Class PackageInfo + /// </summary> + public class PackageInfo + { + /// <summary> + /// The internal id of this package. + /// </summary> + /// <value>The id.</value> + public string id { get; set; } + + /// <summary> + /// Gets or sets the name. + /// </summary> + /// <value>The name.</value> + public string name { get; set; } + + /// <summary> + /// Gets or sets the short description. + /// </summary> + /// <value>The short description.</value> + public string shortDescription { get; set; } + + /// <summary> + /// Gets or sets the overview. + /// </summary> + /// <value>The overview.</value> + public string overview { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether this instance is premium. + /// </summary> + /// <value><c>true</c> if this instance is premium; otherwise, <c>false</c>.</value> + public bool isPremium { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether this instance is adult only content. + /// </summary> + /// <value><c>true</c> if this instance is adult; otherwise, <c>false</c>.</value> + public bool adult { get; set; } + + /// <summary> + /// Gets or sets the rich desc URL. + /// </summary> + /// <value>The rich desc URL.</value> + public string richDescUrl { get; set; } + + /// <summary> + /// Gets or sets the thumb image. + /// </summary> + /// <value>The thumb image.</value> + public string thumbImage { get; set; } + + /// <summary> + /// Gets or sets the preview image. + /// </summary> + /// <value>The preview image.</value> + public string previewImage { get; set; } + + /// <summary> + /// Gets or sets the type. + /// </summary> + /// <value>The type.</value> + public string type { get; set; } + + /// <summary> + /// Gets or sets the target filename. + /// </summary> + /// <value>The target filename.</value> + public string targetFilename { get; set; } + + /// <summary> + /// Gets or sets the owner. + /// </summary> + /// <value>The owner.</value> + public string owner { get; set; } + + /// <summary> + /// Gets or sets the category. + /// </summary> + /// <value>The category.</value> + public string category { get; set; } + + /// <summary> + /// Gets or sets the catalog tile color. + /// </summary> + /// <value>The owner.</value> + public string tileColor { get; set; } + + /// <summary> + /// Gets or sets the feature id of this package (if premium). + /// </summary> + /// <value>The feature id.</value> + public string featureId { get; set; } + + /// <summary> + /// Gets or sets the registration info for this package (if premium). + /// </summary> + /// <value>The registration info.</value> + public string regInfo { get; set; } + + /// <summary> + /// Gets or sets the price for this package (if premium). + /// </summary> + /// <value>The price.</value> + public float price { get; set; } + + /// <summary> + /// Gets or sets the target system for this plug-in (Server, MBTheater, MBClassic). + /// </summary> + /// <value>The target system.</value> + public PackageTargetSystem targetSystem { get; set; } + + /// <summary> + /// The guid of the assembly associated with this package (if a plug-in). + /// This is used to identify the proper item for automatic updates. + /// </summary> + /// <value>The name.</value> + public string guid { get; set; } + + /// <summary> + /// Gets or sets the total number of ratings for this package. + /// </summary> + /// <value>The total ratings.</value> + public int? totalRatings { get; set; } + + /// <summary> + /// Gets or sets the average rating for this package . + /// </summary> + /// <value>The rating.</value> + public float avgRating { get; set; } + + /// <summary> + /// Gets or sets whether or not this package is registered. + /// </summary> + /// <value>True if registered.</value> + public bool isRegistered { get; set; } + + /// <summary> + /// Gets or sets the expiration date for this package. + /// </summary> + /// <value>Expiration Date.</value> + public DateTime expDate { get; set; } + + /// <summary> + /// Gets or sets the versions. + /// </summary> + /// <value>The versions.</value> + public PackageVersionInfo[] versions { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether [enable in application store]. + /// </summary> + /// <value><c>true</c> if [enable in application store]; otherwise, <c>false</c>.</value> + public bool enableInAppStore { get; set; } + + /// <summary> + /// Gets or sets the installs. + /// </summary> + /// <value>The installs.</value> + public int installs { get; set; } + + /// <summary> + /// Initializes a new instance of the <see cref="PackageInfo"/> class. + /// </summary> + public PackageInfo() + { + versions = new PackageVersionInfo[] { }; + } + } +} diff --git a/MediaBrowser.Model/Updates/PackageTargetSystem.cs b/MediaBrowser.Model/Updates/PackageTargetSystem.cs new file mode 100644 index 000000000..c80dddde3 --- /dev/null +++ b/MediaBrowser.Model/Updates/PackageTargetSystem.cs @@ -0,0 +1,21 @@ +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Enum PackageType + /// </summary> + public enum PackageTargetSystem + { + /// <summary> + /// Server + /// </summary> + Server, + /// <summary> + /// MB Theater + /// </summary> + MBTheater, + /// <summary> + /// MB Classic + /// </summary> + MBClassic + } +}
\ No newline at end of file diff --git a/MediaBrowser.Model/Updates/PackageVersionClass.cs b/MediaBrowser.Model/Updates/PackageVersionClass.cs new file mode 100644 index 000000000..3f51e1b3c --- /dev/null +++ b/MediaBrowser.Model/Updates/PackageVersionClass.cs @@ -0,0 +1,21 @@ +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Enum PackageVersionClass + /// </summary> + public enum PackageVersionClass + { + /// <summary> + /// The release + /// </summary> + Release = 0, + /// <summary> + /// The beta + /// </summary> + Beta = 1, + /// <summary> + /// The dev + /// </summary> + Dev = 2 + } +}
\ No newline at end of file diff --git a/MediaBrowser.Model/Updates/PackageVersionInfo.cs b/MediaBrowser.Model/Updates/PackageVersionInfo.cs new file mode 100644 index 000000000..3ac518187 --- /dev/null +++ b/MediaBrowser.Model/Updates/PackageVersionInfo.cs @@ -0,0 +1,95 @@ +using System; +using MediaBrowser.Model.Serialization; + +namespace MediaBrowser.Model.Updates +{ + /// <summary> + /// Class PackageVersionInfo + /// </summary> + public class PackageVersionInfo + { + /// <summary> + /// Gets or sets the name. + /// </summary> + /// <value>The name.</value> + public string name { get; set; } + + /// <summary> + /// Gets or sets the guid. + /// </summary> + /// <value>The guid.</value> + public string guid { get; set; } + + /// <summary> + /// Gets or sets the version STR. + /// </summary> + /// <value>The version STR.</value> + public string versionStr { get; set; } + + /// <summary> + /// The _version + /// </summary> + private Version _version; + /// <summary> + /// Gets or sets the version. + /// Had to make this an interpreted property since Protobuf can't handle Version + /// </summary> + /// <value>The version.</value> + [IgnoreDataMember] + public Version version + { + get { return _version ?? (_version = new Version(ValueOrDefault(versionStr, "0.0.0.1"))); } + } + + /// <summary> + /// Values the or default. + /// </summary> + /// <param name="str">The STR.</param> + /// <param name="def">The def.</param> + /// <returns>System.String.</returns> + private static string ValueOrDefault(string str, string def) + { + return string.IsNullOrEmpty(str) ? def : str; + } + + /// <summary> + /// Gets or sets the classification. + /// </summary> + /// <value>The classification.</value> + public PackageVersionClass classification { get; set; } + + /// <summary> + /// Gets or sets the description. + /// </summary> + /// <value>The description.</value> + public string description { get; set; } + + /// <summary> + /// Gets or sets the required version STR. + /// </summary> + /// <value>The required version STR.</value> + public string requiredVersionStr { get; set; } + + /// <summary> + /// Gets or sets the source URL. + /// </summary> + /// <value>The source URL.</value> + public string sourceUrl { get; set; } + + /// <summary> + /// Gets or sets the source URL. + /// </summary> + /// <value>The source URL.</value> + public string checksum { get; set; } + + /// <summary> + /// Gets or sets the target filename. + /// </summary> + /// <value>The target filename.</value> + public string targetFilename { get; set; } + + public string infoUrl { get; set; } + + public string runtimes { get; set; } + } +}
\ No newline at end of file |
