Completed
Pull Request — master (#6)
by Janis
03:08
created

OcrController::status()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 5
ccs 0
cts 3
cp 0
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 0
crap 2
1
<?php
2
/**
3
 * nextCloud - ocr
4
 *
5
 * This file is licensed under the Affero General Public License version 3 or
6
 * later. See the COPYING file.
7
 *
8
 * @author Janis Koehr <[email protected]>
9
 * @copyright Janis Koehr 2016
10
 */
11
12
namespace OCA\Ocr\Controller;
13
14
use OCA\Ocr\Service\OcrService;
15
use OCP\AppFramework\Http\DataResponse;
16
use OCP\IRequest;
17
use OCP\AppFramework\Controller;
18
19
20
21
/**
22
 * Class OcrController
23
 *
24
 * @package OCA\Ocr\Controller
25
 */
26
class OcrController extends Controller {
27
28
	/**
29
	 * @var string
30
	 */
31
	private $userId;
32
33
	/**
34
	 * @var OcrService
35
	 */
36
	private $service;
37
38
	use Errors;
39
40
	/**
41
	 * OcrController constructor.
42
	 *
43
	 * @param string $AppName
44
	 * @param IRequest $request
45
	 * @param OcrService $service
46
	 * @param $UserId
47
	 */
48 1
	public function __construct($AppName, IRequest $request, OcrService $service, $UserId){
49 1
		parent::__construct($AppName, $request);
50 1
		$this->userId = $UserId;
51 1
		$this->service = $service;
52 1
	}
53
54
	/**
55
	 * Get languages supported by installed tesseract. (Version has to be at least 3.02.02)
56
	 * @NoAdminRequired
57
	 * @return DataResponse
58
	 */
59
	public function languages(){
60
		return $this->handleNotFound(function(){
61
			return $this->service->listLanguages();
62
		});
63
	}
64
65
	/**
66
	 * Processing the srcFile(s)
67
	 * @NoAdminRequired
68
	 * @param string $language - deu, eng...
69
	 * @param array $files
70
	 * @return DataResponse
71
	 */
72
	public function process($language, $files) {
73
		return $this->handleNotFound(function () use ($language, $files){
74
			return $this->service->process($language, $files);
75
		});
76
	}
77
78
	/**
79
	 * Get the current status.
80
	 * @NoAdminRequired
81
	 * @return DataResponse
82
	 */
83
	public function status(){
84
		return $this->handleNotFound(function () {
85
			return $this->service->status();
86
		});
87
	}
88
89
}