Skip to content

Commit 22e4ad9

Browse files
authored
Merge pull request #1 from Flowframe/refactor/clean-up
refactor: clean up
2 parents 943acec + 0235104 commit 22e4ad9

File tree

6 files changed

+35
-25
lines changed

6 files changed

+35
-25
lines changed

src/CachingStrategies/BaseCachingStrategy.php

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/CachingStrategies/FilesystemCachingStrategy.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33
namespace Flowframe\Drift\CachingStrategies;
44

55
use Flowframe\Drift\Config;
6+
use Flowframe\Drift\Contracts\CachingStrategy;
67
use Illuminate\Support\Facades\Storage;
78
use Intervention\Image\Image;
89

9-
class FilesystemCachingStrategy extends BaseCachingStrategy
10+
class FilesystemCachingStrategy implements CachingStrategy
1011
{
1112
public function validate(string $path, string $signature, Config $config): bool
1213
{

src/CachingStrategies/NullCachingStrategy.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@
33
namespace Flowframe\Drift\CachingStrategies;
44

55
use Flowframe\Drift\Config;
6+
use Flowframe\Drift\Contracts\CachingStrategy;
67
use Intervention\Image\Image;
78

8-
class NullCachingStrategy extends BaseCachingStrategy
9+
class NullCachingStrategy implements CachingStrategy
910
{
1011
public function validate(string $path, string $signature, Config $config): bool
1112
{

src/Contracts/CachingStrategy.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
namespace Flowframe\Drift\Contracts;
4+
5+
use Flowframe\Drift\Config;
6+
use Intervention\Image\Image;
7+
8+
interface CachingStrategy
9+
{
10+
public function validate(string $path, string $signature, Config $config): bool;
11+
12+
public function resolve(string $path, string $signature, Config $config): string;
13+
14+
public function cache(string $path, string $signature, Image $image, Config $config): void;
15+
}

src/Http/Controllers/ImagesController.php

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@
1010

1111
class ImagesController
1212
{
13+
public function __construct(
14+
public DriftManager $driftManager,
15+
public ManipulationsTransformer $manipulationsTransformer,
16+
) {
17+
}
18+
1319
public function __invoke(
1420
string $configName,
1521
string $manipulations,
@@ -18,7 +24,7 @@ public function __invoke(
1824
$signature = request('signature');
1925

2026
/** @var \Flowframe\Drift\Config|null $config */
21-
$config = app(DriftManager::class)
27+
$config = $this->driftManager
2228
->configs()
2329
->firstWhere('name', $configName);
2430

@@ -28,8 +34,8 @@ public function __invoke(
2834
'Config not found',
2935
);
3036

31-
/** @var \Flowframe\Drift\CachingStrategies\BaseCachingStrategy $cachingStrategy */
32-
$cachingStrategy = app($config->cachingStrategy);
37+
/** @var \Flowframe\Drift\Contracts\CachingStrategy $cachingStrategy */
38+
$cachingStrategy = new $config->cachingStrategy();
3339

3440
if ($cachingStrategy->validate($path, $signature, $config)) {
3541
$cachedImage = $cachingStrategy->resolve($path, $signature, $config);
@@ -51,10 +57,7 @@ public function __invoke(
5157
Storage::disk($config->filesystemDisk)->get($path),
5258
);
5359

54-
/** @var \Flowframe\Drift\ManipulationsTransformer $transformer */
55-
$transformer = app(ManipulationsTransformer::class);
56-
57-
foreach ($transformer->decode($manipulations) as $method => $arguments) {
60+
foreach ($this->manipulationsTransformer->decode($manipulations) as $method => $arguments) {
5861
is_array($arguments)
5962
? $image->{$method}(...$arguments)
6063
: $image->{$method}($arguments);

src/UrlBuilder.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,18 @@
66

77
class UrlBuilder
88
{
9+
public function __construct(
10+
public ManipulationsTransformer $manipulationsTransformer,
11+
) {
12+
}
13+
914
public function url(string $configName, string $path, array $manipulations = []): string
1015
{
1116
if (! isset($manipulations['encode'])) {
1217
$manipulations['encode'] = 'webp';
1318
}
1419

15-
$encodedManipulations = app(ManipulationsTransformer::class)->encode($manipulations);
20+
$encodedManipulations = $this->manipulationsTransformer->encode($manipulations);
1621

1722
return URL::signedRoute('__images.manipulate', [
1823
$configName,

0 commit comments

Comments
 (0)