Restore old behavior allowing to set custom appstore
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
This commit is contained in:
parent
cbde341301
commit
8bd52316dd
5 changed files with 23 additions and 10 deletions
|
@ -66,7 +66,6 @@ class AppFetcher extends Fetcher {
|
|||
);
|
||||
|
||||
$this->fileName = 'apps.json';
|
||||
$this->setEndpoint();
|
||||
$this->compareVersion = $compareVersion;
|
||||
$this->ignoreMaxVersion = true;
|
||||
}
|
||||
|
@ -141,10 +140,6 @@ class AppFetcher extends Fetcher {
|
|||
return $response;
|
||||
}
|
||||
|
||||
private function setEndpoint() {
|
||||
$this->endpointUrl = 'https://apps.nextcloud.com/api/v1/apps.json';
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $version
|
||||
* @param string $fileName
|
||||
|
|
|
@ -53,6 +53,5 @@ class CategoryFetcher extends Fetcher {
|
|||
$logger
|
||||
);
|
||||
$this->fileName = 'categories.json';
|
||||
$this->endpointUrl = 'https://apps.nextcloud.com/api/v1/categories.json';
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,8 +54,6 @@ abstract class Fetcher {
|
|||
/** @var string */
|
||||
protected $fileName;
|
||||
/** @var string */
|
||||
protected $endpointUrl;
|
||||
/** @var string */
|
||||
protected $version;
|
||||
/** @var string */
|
||||
protected $channel;
|
||||
|
@ -105,7 +103,7 @@ abstract class Fetcher {
|
|||
}
|
||||
|
||||
$client = $this->clientService->newClient();
|
||||
$response = $client->get($this->endpointUrl, $options);
|
||||
$response = $client->get($this->getEndpoint(), $options);
|
||||
|
||||
$responseJson = [];
|
||||
if ($response->getStatusCode() === Http::STATUS_NOT_MODIFIED) {
|
||||
|
@ -218,4 +216,8 @@ abstract class Fetcher {
|
|||
public function setChannel(string $channel) {
|
||||
$this->channel = $channel;
|
||||
}
|
||||
|
||||
protected function getEndpoint(): string {
|
||||
return $this->config->getSystemValue('appstoreurl', 'https://apps.nextcloud.com/api/v1') . '/' . $this->fileName;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -92,6 +92,8 @@ EOD;
|
|||
return true;
|
||||
} else if ($key === 'version') {
|
||||
return '11.0.0.2';
|
||||
} else if ($key === 'appstoreurl' && $default === 'https://apps.nextcloud.com/api/v1') {
|
||||
return 'https://custom.appsstore.endpoint/api/v1';
|
||||
} else {
|
||||
return $default;
|
||||
}
|
||||
|
@ -122,7 +124,7 @@ EOD;
|
|||
$response = $this->createMock(IResponse::class);
|
||||
$client
|
||||
->method('get')
|
||||
->with('https://apps.nextcloud.com/api/v1/apps.json')
|
||||
->with('https://custom.appsstore.endpoint/api/v1/apps.json')
|
||||
->willReturn($response);
|
||||
$response
|
||||
->expects($this->once())
|
||||
|
|
|
@ -137,6 +137,11 @@ abstract class FetcherBase extends TestCase {
|
|||
$this->config
|
||||
->expects($this->at(3))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreurl', 'https://apps.nextcloud.com/api/v1')
|
||||
->willReturn('https://apps.nextcloud.com/api/v1');
|
||||
$this->config
|
||||
->expects($this->at(4))
|
||||
->method('getSystemValue')
|
||||
->with(
|
||||
$this->equalTo('version'),
|
||||
$this->anything()
|
||||
|
@ -298,6 +303,11 @@ abstract class FetcherBase extends TestCase {
|
|||
$this->config
|
||||
->expects($this->at(3))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreurl', 'https://apps.nextcloud.com/api/v1')
|
||||
->willReturn('https://apps.nextcloud.com/api/v1');
|
||||
$this->config
|
||||
->expects($this->at(4))
|
||||
->method('getSystemValue')
|
||||
->with(
|
||||
$this->equalTo('version'),
|
||||
$this->anything()
|
||||
|
@ -382,6 +392,11 @@ abstract class FetcherBase extends TestCase {
|
|||
$this->config
|
||||
->expects($this->at(3))
|
||||
->method('getSystemValue')
|
||||
->with('appstoreurl', 'https://apps.nextcloud.com/api/v1')
|
||||
->willReturn('https://apps.nextcloud.com/api/v1');
|
||||
$this->config
|
||||
->expects($this->at(4))
|
||||
->method('getSystemValue')
|
||||
->with(
|
||||
$this->equalTo('version'),
|
||||
$this->anything()
|
||||
|
|
Loading…
Reference in a new issue