aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model/Updates
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-02-20 20:33:05 -0500
committerLukePulverenti <luke.pulverenti@gmail.com>2013-02-20 20:33:05 -0500
commit767cdc1f6f6a63ce997fc9476911e2c361f9d402 (patch)
tree49add55976f895441167c66cfa95e5c7688d18ce /MediaBrowser.Model/Updates
parent845554722efaed872948a9e0f7202e3ef52f1b6e (diff)
Pushing missing changes
Diffstat (limited to 'MediaBrowser.Model/Updates')
-rw-r--r--MediaBrowser.Model/Updates/InstallationInfo.cs47
-rw-r--r--MediaBrowser.Model/Updates/PackageInfo.cs139
-rw-r--r--MediaBrowser.Model/Updates/PackageType.cs21
-rw-r--r--MediaBrowser.Model/Updates/PackageVersionClass.cs21
-rw-r--r--MediaBrowser.Model/Updates/PackageVersionInfo.cs85
5 files changed, 313 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Updates/InstallationInfo.cs b/MediaBrowser.Model/Updates/InstallationInfo.cs
new file mode 100644
index 000000000..2e0cdb8e2
--- /dev/null
+++ b/MediaBrowser.Model/Updates/InstallationInfo.cs
@@ -0,0 +1,47 @@
+using ProtoBuf;
+using System;
+
+namespace MediaBrowser.Model.Updates
+{
+ /// <summary>
+ /// Class InstallationInfo
+ /// </summary>
+ [ProtoContract]
+ public class InstallationInfo
+ {
+ /// <summary>
+ /// Gets or sets the id.
+ /// </summary>
+ /// <value>The id.</value>
+ [ProtoMember(1)]
+ public Guid Id { get; set; }
+
+ /// <summary>
+ /// Gets or sets the name.
+ /// </summary>
+ /// <value>The name.</value>
+ [ProtoMember(2)]
+ public string Name { get; set; }
+
+ /// <summary>
+ /// Gets or sets the version.
+ /// </summary>
+ /// <value>The version.</value>
+ [ProtoMember(3)]
+ public string Version { get; set; }
+
+ /// <summary>
+ /// Gets or sets the update class.
+ /// </summary>
+ /// <value>The update class.</value>
+ [ProtoMember(4)]
+ public PackageVersionClass UpdateClass { get; set; }
+
+ /// <summary>
+ /// Gets or sets the percent complete.
+ /// </summary>
+ /// <value>The percent complete.</value>
+ [ProtoMember(5)]
+ 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..18aa226ca
--- /dev/null
+++ b/MediaBrowser.Model/Updates/PackageInfo.cs
@@ -0,0 +1,139 @@
+using System;
+using ProtoBuf;
+using System.Collections.Generic;
+
+namespace MediaBrowser.Model.Updates
+{
+ /// <summary>
+ /// Class PackageInfo
+ /// </summary>
+ [ProtoContract]
+ public class PackageInfo
+ {
+ /// <summary>
+ /// Gets or sets the name.
+ /// </summary>
+ /// <value>The name.</value>
+ [ProtoMember(1)]
+ public string name { get; set; }
+
+ /// <summary>
+ /// Gets or sets the short description.
+ /// </summary>
+ /// <value>The short description.</value>
+ [ProtoMember(2)]
+ public string shortDescription { get; set; }
+
+ /// <summary>
+ /// Gets or sets the overview.
+ /// </summary>
+ /// <value>The overview.</value>
+ [ProtoMember(3)]
+ 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>
+ [ProtoMember(4)]
+ public bool isPremium { get; set; }
+
+ /// <summary>
+ /// Gets or sets the rich desc URL.
+ /// </summary>
+ /// <value>The rich desc URL.</value>
+ [ProtoMember(5)]
+ public string richDescUrl { get; set; }
+
+ /// <summary>
+ /// Gets or sets the thumb image.
+ /// </summary>
+ /// <value>The thumb image.</value>
+ [ProtoMember(6)]
+ public string thumbImage { get; set; }
+
+ /// <summary>
+ /// Gets or sets the preview image.
+ /// </summary>
+ /// <value>The preview image.</value>
+ [ProtoMember(7)]
+ public string previewImage { get; set; }
+
+ /// <summary>
+ /// Gets or sets the type.
+ /// </summary>
+ /// <value>The type.</value>
+ [ProtoMember(8)]
+ public PackageType type { get; set; }
+
+ /// <summary>
+ /// Gets or sets the target filename.
+ /// </summary>
+ /// <value>The target filename.</value>
+ [ProtoMember(9)]
+ public string targetFilename { get; set; }
+
+ /// <summary>
+ /// Gets or sets the owner.
+ /// </summary>
+ /// <value>The owner.</value>
+ [ProtoMember(10)]
+ public string owner { get; set; }
+
+ /// <summary>
+ /// Gets or sets the category.
+ /// </summary>
+ /// <value>The category.</value>
+ [ProtoMember(11)]
+ public string category { get; set; }
+
+ /// <summary>
+ /// Gets or sets the catalog tile color.
+ /// </summary>
+ /// <value>The owner.</value>
+ [ProtoMember(12)]
+ public string tileColor { get; set; }
+
+ /// <summary>
+ /// Gets or sets the feature id of this package (if premium).
+ /// </summary>
+ /// <value>The feature id.</value>
+ [ProtoMember(13)]
+ public string featureId { get; set; }
+
+ /// <summary>
+ /// Gets or sets the registration info for this package (if premium).
+ /// </summary>
+ /// <value>The registration info.</value>
+ [ProtoMember(14)]
+ public string regInfo { get; set; }
+
+ /// <summary>
+ /// Gets or sets the price for this package (if premium).
+ /// </summary>
+ /// <value>The price.</value>
+ [ProtoMember(15)]
+ public float price { get; set; }
+
+ /// <summary>
+ /// Gets or sets whether or not this package is registered.
+ /// </summary>
+ /// <value>True if registered.</value>
+ [ProtoMember(16)]
+ public bool isRegistered { get; set; }
+
+ /// <summary>
+ /// Gets or sets the expiration date for this package.
+ /// </summary>
+ /// <value>Expiration Date.</value>
+ [ProtoMember(17)]
+ public DateTime expDate { get; set; }
+
+ /// <summary>
+ /// Gets or sets the versions.
+ /// </summary>
+ /// <value>The versions.</value>
+ [ProtoMember(18)]
+ public List<PackageVersionInfo> versions { get; set; }
+ }
+}
diff --git a/MediaBrowser.Model/Updates/PackageType.cs b/MediaBrowser.Model/Updates/PackageType.cs
new file mode 100644
index 000000000..a00196e71
--- /dev/null
+++ b/MediaBrowser.Model/Updates/PackageType.cs
@@ -0,0 +1,21 @@
+namespace MediaBrowser.Model.Updates
+{
+ /// <summary>
+ /// Enum PackageType
+ /// </summary>
+ public enum PackageType
+ {
+ /// <summary>
+ /// All
+ /// </summary>
+ All,
+ /// <summary>
+ /// The system
+ /// </summary>
+ System,
+ /// <summary>
+ /// The user installed
+ /// </summary>
+ UserInstalled
+ }
+} \ 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..7f29ae174
--- /dev/null
+++ b/MediaBrowser.Model/Updates/PackageVersionInfo.cs
@@ -0,0 +1,85 @@
+using MediaBrowser.Model.Extensions;
+using ProtoBuf;
+using System;
+using System.Runtime.Serialization;
+
+namespace MediaBrowser.Model.Updates
+{
+ /// <summary>
+ /// Class PackageVersionInfo
+ /// </summary>
+ [ProtoContract]
+ public class PackageVersionInfo
+ {
+ /// <summary>
+ /// Gets or sets the name.
+ /// </summary>
+ /// <value>The name.</value>
+ [ProtoMember(1)]
+ public string name { get; set; }
+
+ /// <summary>
+ /// Gets or sets the version STR.
+ /// </summary>
+ /// <value>The version STR.</value>
+ [ProtoMember(2)]
+ 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(versionStr.ValueOrDefault("0.0.0.1"))); }
+ }
+
+ /// <summary>
+ /// Gets or sets the classification.
+ /// </summary>
+ /// <value>The classification.</value>
+ [ProtoMember(4)]
+ public PackageVersionClass classification { get; set; }
+
+ /// <summary>
+ /// Gets or sets the description.
+ /// </summary>
+ /// <value>The description.</value>
+ [ProtoMember(5)]
+ public string description { get; set; }
+
+ /// <summary>
+ /// Gets or sets the required version STR.
+ /// </summary>
+ /// <value>The required version STR.</value>
+ [ProtoMember(6)]
+ public string requiredVersionStr { get; set; }
+
+ /// <summary>
+ /// Gets or sets the source URL.
+ /// </summary>
+ /// <value>The source URL.</value>
+ [ProtoMember(8)]
+ public string sourceUrl { get; set; }
+
+ /// <summary>
+ /// Gets or sets the source URL.
+ /// </summary>
+ /// <value>The source URL.</value>
+ [ProtoMember(9)]
+ public Guid checksum { get; set; }
+
+ /// <summary>
+ /// Gets or sets the target filename.
+ /// </summary>
+ /// <value>The target filename.</value>
+ [ProtoMember(10)]
+ public string targetFilename { get; set; }
+ }
+}