Tidy up integrations, use contracts

This commit is contained in:
James Brooks
2016-07-13 14:33:20 +01:00
parent ec0f0768f0
commit 503252c3a2
9 changed files with 145 additions and 57 deletions

View File

@@ -0,0 +1,27 @@
<?php
/*
* This file is part of Cachet.
*
* (c) Alt Three Services Limited
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations\Contracts;
/**
* This is the credits interface.
*
* @author James Brooks <james@alt-three.com>
*/
interface Credits
{
/**
* Returns the latest credits.
*
* @return array|null
*/
public function latest();
}

View File

@@ -0,0 +1,27 @@
<?php
/*
* This file is part of Cachet.
*
* (c) Alt Three Services Limited
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations\Contracts;
/**
* This is the feed interface.
*
* @author James Brooks <james@alt-three.com>
*/
interface Feed
{
/**
* Returns the latest entries.
*
* @return array|null
*/
public function latest();
}

View File

@@ -0,0 +1,27 @@
<?php
/*
* This file is part of Cachet.
*
* (c) Alt Three Services Limited
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations\Contracts;
/**
* This is the releases interface.
*
* @author James Brooks <james@alt-three.com>
*/
interface Releases
{
/**
* Returns the latest release.
*
* @return string
*/
public function latest();
}

View File

@@ -9,13 +9,14 @@
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations;
namespace CachetHQ\Cachet\Integrations\Core;
use CachetHQ\Cachet\Integrations\Contracts\Credits as CreditsContract;
use Exception;
use GuzzleHttp\Client;
use Illuminate\Contracts\Cache\Repository;
class Credits
class Credits implements CreditsContract
{
/**
* The default url.

View File

@@ -9,8 +9,9 @@
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations;
namespace CachetHQ\Cachet\Integrations\Core;
use CachetHQ\Cachet\Integrations\Contracts\Feed as FeedContract;
use Exception;
use GuzzleHttp\Client;
use Illuminate\Contracts\Cache\Repository;
@@ -20,7 +21,7 @@ use Illuminate\Contracts\Cache\Repository;
*
* @author James Brooks <james@alt-three.com>
*/
class Feed
class Feed implements FeedContract
{
/**
* The default url.

View File

@@ -9,12 +9,13 @@
* file that was distributed with this source code.
*/
namespace CachetHQ\Cachet\Integrations;
namespace CachetHQ\Cachet\Integrations\GitHub;
use CachetHQ\Cachet\Integrations\Contracts\Releases as ReleasesContract;
use GuzzleHttp\Client;
use Illuminate\Contracts\Cache\Repository;
class Releases
class Releases implements ReleasesContract
{
/**
* The default url.