Skip to content
This repository has been archived by the owner on Jul 29, 2022. It is now read-only.

Commit

Permalink
Add ICakeMailRestClient interface
Browse files Browse the repository at this point in the history
  • Loading branch information
Jericho committed Mar 10, 2016
1 parent c8b1b02 commit 6d2981c
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 1 deletion.
1 change: 1 addition & 0 deletions CakeMail.RestClient/CakeMail.RestClient.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
<Compile Include="CakeMailRestClient.cs" />
<Compile Include="Exceptions\CakeMailPostException.cs" />
<Compile Include="Exceptions\CakeMailException.cs" />
<Compile Include="ICakeMailRestClient.cs" />
<Compile Include="Models\LinkStats.cs" />
<Compile Include="Models\TriggerAction.cs" />
<Compile Include="Models\FieldType.cs" />
Expand Down
2 changes: 1 addition & 1 deletion CakeMail.RestClient/CakeMailRestClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ namespace CakeMail.RestClient
/// <summary>
/// Core class for using the CakeMail Api
/// </summary>
public class CakeMailRestClient
public class CakeMailRestClient : ICakeMailRestClient
{
#region Fields

Expand Down
53 changes: 53 additions & 0 deletions CakeMail.RestClient/ICakeMailRestClient.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
using CakeMail.RestClient.Models;
using CakeMail.RestClient.Resources;
using System;
using System.Collections.Generic;
using System.Net;

namespace CakeMail.RestClient
{
/// <summary>
/// Provides the base interface for implementation of access to the CakeMail API
/// </summary>
interface ICakeMailRestClient
{
/// <summary>
/// The API key provided by CakeMail
/// </summary>
string ApiKey { get; }

/// <summary>
/// The web proxy
/// </summary>
IWebProxy Proxy { get; }

/// <summary>
/// The user agent
/// </summary>
string UserAgent { get; }

/// <summary>
/// The timeout
/// </summary>
int Timeout { get; }

/// <summary>
/// The URL where all API requests are sent
/// </summary>
Uri BaseUrl { get; }

Campaigns Campaigns { get; }
Clients Clients { get; }
Countries Countries { get; }
Permissions Permissions { get; }
Lists Lists { get; }
Timezones Timezones { get; }
Mailings Mailings { get; }
Relays Relays { get; }
Segments Segments { get; }
Users Users { get; }
SuppressionLists SuppressionLists { get; }
Templates Templates { get; }
Triggers Triggers { get; }
}
}

0 comments on commit 6d2981c

Please sign in to comment.