Delete method for Monitors

This commit is contained in:
2013-08-18 12:08:08 +02:00
parent 88c40c5889
commit ef46303139
5 changed files with 77 additions and 3 deletions
@@ -67,5 +67,32 @@ namespace UptimeSharp
{
return Get<Get>("getMonitors", parameters.Convert()).Items;
}
/// <summary>
/// Deletes a monitor
/// </summary>
/// <param name="ID">The unique identifier for the monitor.</param>
/// <returns>success state</returns>
public bool Delete(int ID)
{
List<Parameter> parameters = new List<Parameter>()
{
new Parameter() { Name = "monitorID", Value = ID, Type = ParameterType.GetOrPost }
};
return Get<Default>("deleteMonitor", parameters).Status;
}
/// <summary>
/// Deletes a monitor
/// </summary>
/// <param name="monitor">The monitor.</param>
/// <returns>success state</returns>
public bool Delete(Monitor monitor)
{
return Delete(monitor.ID);
}
}
}
+14
View File
@@ -0,0 +1,14 @@
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace UptimeSharp.Models
{
/// <summary>
/// Default Response
/// </summary>
[DataContract]
internal class Default : ResponseBase
{
}
}
+17 -2
View File
@@ -12,9 +12,24 @@ namespace UptimeSharp.Models
/// Gets or sets a value indicating whether this <see cref="ResponseBase"/> is status.
/// </summary>
/// <value>
/// <c>true</c> if status is OK; otherwise, <c>false</c>.
/// "ok" or "fail"
/// </value>
[DataMember(Name = "stat")]
public bool Status { get; set; }
public string RawStatus { get; set; }
/// <summary>
/// Gets or sets a value indicating whether this <see cref="ResponseBase"/> is status.
/// </summary>
/// <value>
/// <c>true</c> if status is OK; otherwise, <c>false</c>.
/// </value>
[IgnoreDataMember]
public bool Status
{
get
{
return RawStatus == "ok";
}
}
}
}
+17
View File
@@ -123,6 +123,23 @@ namespace UptimeSharp
}
protected string Get(string resource, List<Parameter> parameters = null)
{
var request = new RestRequest(resource, Method.GET);
// enumeration for params
if (parameters != null)
{
parameters.ForEach(
param => request.AddParameter(param)
);
}
// do the request
return Request(request);
}
///// <summary>
///// Puts an action
///// </summary>
+2 -1
View File
@@ -52,12 +52,13 @@
</ItemGroup>
<ItemGroup>
<Compile Include="APIException.cs" />
<Compile Include="Components\Get.cs" />
<Compile Include="Components\Monitor.cs" />
<Compile Include="JsonDeserializer.cs" />
<Compile Include="Models\Alert.cs" />
<Compile Include="Models\Log.cs" />
<Compile Include="Models\Monitor.cs" />
<Compile Include="Models\Parameters\GetParameters.cs" />
<Compile Include="Models\Response\Default.cs" />
<Compile Include="Models\Response\Get.cs" />
<Compile Include="Models\Response\ResponseBase.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />