Browse Source

Fix DI for federated file sharing controller

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
tags/v14.0.0beta1
Morris Jobke 6 years ago
parent
commit
093cd01ac2
No account linked to committer's email address

+ 2
- 1
apps/federatedfilesharing/lib/AppInfo/Application.php View File

@@ -67,7 +67,8 @@ class Application extends App {
$notification,
$addressHandler,
$server->getUserManager(),
$server->getCloudIdManager()
$server->getCloudIdManager(),
$server->getLogger()
);
});
}

+ 10
- 5
apps/federatedfilesharing/lib/Controller/RequestHandlerController.php View File

@@ -43,6 +43,7 @@ use OCP\Constants;
use OCP\Federation\ICloudIdManager;
use OCP\Files\NotFoundException;
use OCP\IDBConnection;
use OCP\ILogger;
use OCP\IRequest;
use OCP\IUserManager;
use OCP\Share;
@@ -74,6 +75,9 @@ class RequestHandlerController extends OCSController {
/** @var ICloudIdManager */
private $cloudIdManager;

/** @var ILogger */
private $logger;

/**
* Server2Server constructor.
*
@@ -95,7 +99,8 @@ class RequestHandlerController extends OCSController {
Notifications $notifications,
AddressHandler $addressHandler,
IUserManager $userManager,
ICloudIdManager $cloudIdManager
ICloudIdManager $cloudIdManager,
ILogger $logger
) {
parent::__construct($appName, $request);

@@ -106,6 +111,7 @@ class RequestHandlerController extends OCSController {
$this->addressHandler = $addressHandler;
$this->userManager = $userManager;
$this->cloudIdManager = $cloudIdManager;
$this->logger = $logger;
}

/**
@@ -140,14 +146,13 @@ class RequestHandlerController extends OCSController {
}

// FIXME this should be a method in the user management instead
$logger = \OC::$server->getLogger();
$logger->debug('shareWith before, ' . $shareWith, ['app' => 'files_sharing']);
$this->logger->debug('shareWith before, ' . $shareWith, ['app' => 'files_sharing']);
\OCP\Util::emitHook(
'\OCA\Files_Sharing\API\Server2Server',
'preLoginNameUsedAsUserName',
array('uid' => &$shareWith)
);
$logger->debug('shareWith after, ' . $shareWith, ['app' => 'files_sharing']);
$this->logger->debug('shareWith after, ' . $shareWith, ['app' => 'files_sharing']);

if (!\OC::$server->getUserManager()->userExists($shareWith)) {
throw new OCSException('User does not exists', 400);
@@ -210,7 +215,7 @@ class RequestHandlerController extends OCSController {

return new Http\DataResponse();
} catch (\Exception $e) {
\OC::$server->getLogger()->logException($e, [
$this->logger->logException($e, [
'message' => 'Server can not add remote share.',
'level' => \OCP\Util::ERROR,
'app' => 'files_sharing'

+ 10
- 2
apps/federatedfilesharing/tests/Controller/RequestHandlerControllerTest.php View File

@@ -38,6 +38,7 @@ use OCP\Http\Client\IClient;
use OCP\Http\Client\IClientService;
use OCP\Http\Client\IResponse;
use OCP\IConfig;
use OCP\ILogger;
use OCP\IUserManager;
use OCP\Share\IShare;

@@ -79,6 +80,9 @@ class RequestHandlerControllerTest extends TestCase {
/** @var ICloudIdManager */
private $cloudIdManager;

/** @var ILogger|\PHPUnit_Framework_MockObject_MockObject */
private $logger;

protected function setUp() {
parent::setUp();

@@ -103,6 +107,8 @@ class RequestHandlerControllerTest extends TestCase {

$this->cloudIdManager = new CloudIdManager();

$this->logger = $this->createMock(ILogger::class);

$this->s2s = new RequestHandlerController(
'federatedfilesharing',
\OC::$server->getRequest(),
@@ -112,7 +118,8 @@ class RequestHandlerControllerTest extends TestCase {
$this->notifications,
$this->addressHandler,
$this->userManager,
$this->cloudIdManager
$this->cloudIdManager,
$this->logger
);

$this->connection = \OC::$server->getDatabaseConnection();
@@ -177,7 +184,8 @@ class RequestHandlerControllerTest extends TestCase {
$this->notifications,
$this->addressHandler,
$this->userManager,
$this->cloudIdManager
$this->cloudIdManager,
$this->logger,
]
)->setMethods(['executeDeclineShare', 'verifyShare'])->getMock();


Loading…
Cancel
Save