Skip to content

Commit 8ce6409

Browse files
committed
driver: remove download and delete functionality
1 parent da74b77 commit 8ce6409

File tree

5 files changed

+1
-163
lines changed

5 files changed

+1
-163
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ Method | Description
108108

109109
"Handle" is quite vague but there is a reason for that. This library tries to provide more functionality than just
110110
saving the uploaded chunks. It is also adds functionality for resumable uploads which depending on the client side
111-
library can differ very much. Also, when possible the library gives the opportunity to download the uploaded file.
111+
library can differ very much.
112112

113113
### Events
114114

src/Driver/BlueimpHandler.php

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
use Illuminate\Http\JsonResponse;
1212
use Illuminate\Http\Request;
1313
use Illuminate\Support\Arr;
14-
use Illuminate\Support\Facades\Storage;
1514
use Illuminate\Support\Str;
1615
use InvalidArgumentException;
1716
use Symfony\Component\HttpFoundation\Response;
@@ -61,18 +60,13 @@ public function handle(Request $request, StorageConfig $config, Closure $fileUpl
6160
return $this->save($request, $config, $fileUploaded);
6261
}
6362

64-
if ($this->isRequestMethodIn($request, [Request::METHOD_DELETE])) {
65-
return $this->delete($request, $config);
66-
}
67-
6863
throw new MethodNotAllowedHttpException([
6964
Request::METHOD_HEAD,
7065
Request::METHOD_OPTIONS,
7166
Request::METHOD_GET,
7267
Request::METHOD_POST,
7368
Request::METHOD_PUT,
7469
Request::METHOD_PATCH,
75-
Request::METHOD_DELETE,
7670
]);
7771
}
7872

@@ -98,13 +92,6 @@ public function info(): Response
9892
*/
9993
public function download(Request $request, StorageConfig $config): Response
10094
{
101-
$download = $request->query('download', false);
102-
if ($download !== false) {
103-
$uid = $request->query($this->fileParam);
104-
105-
return $this->fileResponse($uid, $config);
106-
}
107-
10895
$request->validate([
10996
$this->fileParam => 'required',
11097
'totalSize' => 'required',
@@ -174,19 +161,4 @@ public function save(Request $request, StorageConfig $config, Closure $fileUploa
174161

175162
return new PercentageJsonResponse(100);
176163
}
177-
178-
/**
179-
* @param \Illuminate\Http\Request $request
180-
* @param \CodingSocks\UploadHandler\StorageConfig $config
181-
*
182-
* @return \Symfony\Component\HttpFoundation\Response
183-
*/
184-
public function delete(Request $request, StorageConfig $config): Response
185-
{
186-
$filename = $request->post($this->fileParam);
187-
$path = $config->getMergedDirectory() . '/' . $filename;
188-
Storage::disk($config->getDisk())->delete($path);
189-
190-
return new Response();
191-
}
192164
}

src/Driver/MonolithHandler.php

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
use CodingSocks\UploadHandler\Response\PercentageJsonResponse;
77
use CodingSocks\UploadHandler\StorageConfig;
88
use Illuminate\Http\Request;
9-
use Illuminate\Support\Facades\Storage;
109
use Symfony\Component\HttpFoundation\Response;
1110
use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
1211

@@ -36,18 +35,8 @@ public function handle(Request $request, StorageConfig $config, Closure $fileUpl
3635
return $this->save($request, $config, $fileUploaded);
3736
}
3837

39-
if ($request->isMethod(Request::METHOD_GET)) {
40-
return $this->download($request, $config);
41-
}
42-
43-
if ($request->isMethod(Request::METHOD_DELETE)) {
44-
return $this->delete($request, $config);
45-
}
46-
4738
throw new MethodNotAllowedHttpException([
4839
Request::METHOD_POST,
49-
Request::METHOD_GET,
50-
Request::METHOD_DELETE,
5140
]);
5241
}
5342

@@ -72,33 +61,4 @@ public function save(Request $request, StorageConfig $config, Closure $fileUploa
7261

7362
return new PercentageJsonResponse(100);
7463
}
75-
76-
/**
77-
* @param \Illuminate\Http\Request $request
78-
* @param \CodingSocks\UploadHandler\StorageConfig $config
79-
*
80-
* @return \Symfony\Component\HttpFoundation\Response
81-
*/
82-
public function download(Request $request, StorageConfig $config): Response
83-
{
84-
$filename = $request->query($this->fileParam, $request->route($this->fileParam));
85-
86-
return $this->fileResponse($filename, $config);
87-
}
88-
89-
/**
90-
* @param \Illuminate\Http\Request $request
91-
* @param \CodingSocks\UploadHandler\StorageConfig $config
92-
*
93-
* @return \Symfony\Component\HttpFoundation\Response
94-
*/
95-
public function delete(Request $request, StorageConfig $config): Response
96-
{
97-
$filename = $request->post($this->fileParam, $request->route($this->fileParam));
98-
99-
$path = $config->getMergedDirectory() . '/' . $filename;
100-
Storage::disk($config->getDisk())->delete($path);
101-
102-
return new Response();
103-
}
10464
}

tests/Driver/BlueimpUploadHandlerTest.php

Lines changed: 0 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,7 @@
1212
use Illuminate\Support\Facades\Event;
1313
use Illuminate\Support\Facades\Storage;
1414
use Mockery;
15-
use PHPUnit\Framework\Constraint\StringContains;
16-
use Symfony\Component\HttpFoundation\BinaryFileResponse;
1715
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
18-
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
1916

2017
class BlueimpUploadHandlerTest extends TestCase
2118
{
@@ -58,37 +55,6 @@ public function testInfo()
5855
$response->assertHeader('Vary', 'Accept');
5956
}
6057

61-
public function testDownloadWhenFileNotFound()
62-
{
63-
$request = Request::create('', Request::METHOD_GET, [
64-
'file' => 'local-test-file',
65-
'download' => 1,
66-
]);
67-
68-
$this->expectException(NotFoundHttpException::class);
69-
70-
$this->handler->handle($request);
71-
}
72-
73-
public function testDownload()
74-
{
75-
$this->createFakeLocalFile('merged', 'local-test-file');
76-
77-
$request = Request::create('', Request::METHOD_GET, [
78-
'file' => 'local-test-file',
79-
'download' => 1,
80-
]);
81-
82-
/** @var \Illuminate\Testing\TestResponse|\Symfony\Component\HttpFoundation\BinaryFileResponse $response */
83-
$response = $this->createTestResponse($this->handler->handle($request));
84-
$response->assertSuccessful();
85-
$response->assertStatus(200);
86-
87-
$this->assertThat($response->headers->get('Content-Disposition'), new StringContains('attachment'));
88-
$this->assertInstanceOf(BinaryFileResponse::class, $response->baseResponse);
89-
$this->assertEquals('local-test-file', $response->getFile()->getFilename());
90-
}
91-
9258
public function testResume()
9359
{
9460
$this->createFakeLocalFile('chunks/200_test.txt', '000-099');
@@ -218,18 +184,4 @@ public function testUploadLastChunkWithCallback()
218184
return $event->file = $file->hashName('merged');
219185
});
220186
}
221-
222-
public function testDelete()
223-
{
224-
$this->createFakeLocalFile('merged', 'local-test-file');
225-
226-
$request = Request::create('', Request::METHOD_DELETE, [
227-
'file' => 'local-test-file',
228-
]);
229-
230-
$response = $this->createTestResponse($this->handler->handle($request));
231-
$response->assertSuccessful();
232-
233-
Storage::disk('local')->assertMissing('merged/local-test-file');
234-
}
235187
}

tests/Driver/MonolithUploadHandlerTest.php

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,7 @@
1212
use Illuminate\Support\Facades\Event;
1313
use Illuminate\Support\Facades\Storage;
1414
use Mockery;
15-
use PHPUnit\Framework\Constraint\StringContains;
16-
use Symfony\Component\HttpFoundation\BinaryFileResponse;
1715
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
18-
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
1916

2017
class MonolithUploadHandlerTest extends TestCase
2118
{
@@ -42,35 +39,6 @@ public function testDriverInstance()
4239
$this->assertInstanceOf(MonolithHandler::class, $manager->driver());
4340
}
4441

45-
public function testDownload()
46-
{
47-
$this->createFakeLocalFile('merged', 'local-test-file');
48-
49-
$request = Request::create('', Request::METHOD_GET, [
50-
'file' => 'local-test-file',
51-
]);
52-
53-
/** @var \Illuminate\Testing\TestResponse|\Symfony\Component\HttpFoundation\BinaryFileResponse $response */
54-
$response = $this->createTestResponse($this->handler->handle($request));
55-
$response->assertSuccessful();
56-
$response->assertStatus(200);
57-
58-
$this->assertThat($response->headers->get('Content-Disposition'), new StringContains('attachment'));
59-
$this->assertInstanceOf(BinaryFileResponse::class, $response->baseResponse);
60-
$this->assertEquals('local-test-file', $response->getFile()->getFilename());
61-
}
62-
63-
public function testDownloadWhenFileNotFound()
64-
{
65-
$request = Request::create('', Request::METHOD_GET, [
66-
'file' => 'local-test-file',
67-
]);
68-
69-
$this->expectException(NotFoundHttpException::class);
70-
71-
$this->handler->handle($request);
72-
}
73-
7442
public function testUploadWhenFileParameterIsEmpty()
7543
{
7644
$request = Request::create('', Request::METHOD_POST);
@@ -131,18 +99,4 @@ public function testUploadWithCallback()
13199
return $event->file = $file->hashName('merged');
132100
});
133101
}
134-
135-
public function testDelete()
136-
{
137-
$this->createFakeLocalFile('merged', 'local-test-file');
138-
139-
$request = Request::create('', Request::METHOD_DELETE, [
140-
'file' => 'local-test-file',
141-
]);
142-
143-
$response = $this->createTestResponse($this->handler->handle($request));
144-
$response->assertSuccessful();
145-
146-
Storage::disk('local')->assertMissing('merged/local-test-file');
147-
}
148102
}

0 commit comments

Comments
 (0)