Merge pull request #22679 from owncloud/fix_22668
When the Share API is disabled do not return shares
This commit is contained in:
commit
e516612a25
|
@ -161,6 +161,10 @@ class Share20OCS {
|
||||||
* @return \OC_OCS_Result
|
* @return \OC_OCS_Result
|
||||||
*/
|
*/
|
||||||
public function getShare($id) {
|
public function getShare($id) {
|
||||||
|
if (!$this->shareManager->shareApiEnabled()) {
|
||||||
|
return new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$share = $this->getShareById($id);
|
$share = $this->getShareById($id);
|
||||||
} catch (ShareNotFound $e) {
|
} catch (ShareNotFound $e) {
|
||||||
|
@ -186,7 +190,10 @@ class Share20OCS {
|
||||||
* @return \OC_OCS_Result
|
* @return \OC_OCS_Result
|
||||||
*/
|
*/
|
||||||
public function deleteShare($id) {
|
public function deleteShare($id) {
|
||||||
// Try both our default and our federated provider
|
if (!$this->shareManager->shareApiEnabled()) {
|
||||||
|
return new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$share = $this->getShareById($id);
|
$share = $this->getShareById($id);
|
||||||
} catch (ShareNotFound $e) {
|
} catch (ShareNotFound $e) {
|
||||||
|
@ -208,6 +215,10 @@ class Share20OCS {
|
||||||
public function createShare() {
|
public function createShare() {
|
||||||
$share = $this->shareManager->newShare();
|
$share = $this->shareManager->newShare();
|
||||||
|
|
||||||
|
if (!$this->shareManager->shareApiEnabled()) {
|
||||||
|
return new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
}
|
||||||
|
|
||||||
// Verify path
|
// Verify path
|
||||||
$path = $this->request->getParam('path', null);
|
$path = $this->request->getParam('path', null);
|
||||||
if ($path === null) {
|
if ($path === null) {
|
||||||
|
@ -421,6 +432,10 @@ class Share20OCS {
|
||||||
* @return \OC_OCS_Result
|
* @return \OC_OCS_Result
|
||||||
*/
|
*/
|
||||||
public function getShares() {
|
public function getShares() {
|
||||||
|
if (!$this->shareManager->shareApiEnabled()) {
|
||||||
|
return new \OC_OCS_Result();
|
||||||
|
}
|
||||||
|
|
||||||
$sharedWithMe = $this->request->getParam('shared_with_me', null);
|
$sharedWithMe = $this->request->getParam('shared_with_me', null);
|
||||||
$reshares = $this->request->getParam('reshares', null);
|
$reshares = $this->request->getParam('reshares', null);
|
||||||
$subfiles = $this->request->getParam('subfiles');
|
$subfiles = $this->request->getParam('subfiles');
|
||||||
|
@ -478,6 +493,10 @@ class Share20OCS {
|
||||||
* @return \OC_OCS_Result
|
* @return \OC_OCS_Result
|
||||||
*/
|
*/
|
||||||
public function updateShare($id) {
|
public function updateShare($id) {
|
||||||
|
if (!$this->shareManager->shareApiEnabled()) {
|
||||||
|
return new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$share = $this->getShareById($id);
|
$share = $this->getShareById($id);
|
||||||
} catch (ShareNotFound $e) {
|
} catch (ShareNotFound $e) {
|
||||||
|
|
|
@ -65,6 +65,10 @@ class Share20OCSTest extends \Test\TestCase {
|
||||||
$this->shareManager = $this->getMockBuilder('OCP\Share\IManager')
|
$this->shareManager = $this->getMockBuilder('OCP\Share\IManager')
|
||||||
->disableOriginalConstructor()
|
->disableOriginalConstructor()
|
||||||
->getMock();
|
->getMock();
|
||||||
|
$this->shareManager
|
||||||
|
->expects($this->any())
|
||||||
|
->method('shareApiEnabled')
|
||||||
|
->willReturn(true);
|
||||||
$this->groupManager = $this->getMock('OCP\IGroupManager');
|
$this->groupManager = $this->getMock('OCP\IGroupManager');
|
||||||
$this->userManager = $this->getMock('OCP\IUserManager');
|
$this->userManager = $this->getMock('OCP\IUserManager');
|
||||||
$this->request = $this->getMock('OCP\IRequest');
|
$this->request = $this->getMock('OCP\IRequest');
|
||||||
|
@ -1827,7 +1831,74 @@ class Share20OCSTest extends \Test\TestCase {
|
||||||
} catch (NotFoundException $e) {
|
} catch (NotFoundException $e) {
|
||||||
$this->assertTrue($exception);
|
$this->assertTrue($exception);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Share20OCS
|
||||||
|
*/
|
||||||
|
public function getOcsDisabledAPI() {
|
||||||
|
$shareManager = $this->getMockBuilder('OCP\Share\IManager')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
$shareManager
|
||||||
|
->expects($this->any())
|
||||||
|
->method('shareApiEnabled')
|
||||||
|
->willReturn(false);
|
||||||
|
|
||||||
|
return new Share20OCS(
|
||||||
|
$shareManager,
|
||||||
|
$this->groupManager,
|
||||||
|
$this->userManager,
|
||||||
|
$this->request,
|
||||||
|
$this->rootFolder,
|
||||||
|
$this->urlGenerator,
|
||||||
|
$this->currentUser
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testGetShareApiDisabled() {
|
||||||
|
$ocs = $this->getOcsDisabledAPI();
|
||||||
|
|
||||||
|
$expected = new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
$result = $ocs->getShare('my:id');
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testDeleteShareApiDisabled() {
|
||||||
|
$ocs = $this->getOcsDisabledAPI();
|
||||||
|
|
||||||
|
$expected = new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
$result = $ocs->deleteShare('my:id');
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function testCreateShareApiDisabled() {
|
||||||
|
$ocs = $this->getOcsDisabledAPI();
|
||||||
|
|
||||||
|
$expected = new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
$result = $ocs->createShare();
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testGetSharesApiDisabled() {
|
||||||
|
$ocs = $this->getOcsDisabledAPI();
|
||||||
|
|
||||||
|
$expected = new \OC_OCS_Result();
|
||||||
|
$result = $ocs->getShares();
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testUpdateShareApiDisabled() {
|
||||||
|
$ocs = $this->getOcsDisabledAPI();
|
||||||
|
|
||||||
|
$expected = new \OC_OCS_Result(null, 404, 'Share API is disabled');
|
||||||
|
$result = $ocs->updateShare('my:id');
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $result);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue