- Fixes API endpoint naming convention

- Generates/saves cron daemon token as soon as its executed
This commit is contained in:
Vlad
2016-07-07 14:00:07 -04:00
parent 1cd9f3eb67
commit 150364de3a
2 changed files with 5 additions and 4 deletions

View File

@ -34,13 +34,14 @@ class API {
$this->terminateRequest(self::API_RESPONSE_CODE_ERROR, __('Invalid API endpoint.'));
}
$this->callEndpoint(
self::ENDPOINT_NAMESPACE . $this->endpoint,
$this->endpoint,
$this->action,
$this->data
);
}
function callEndpoint($endpoint, $action, $data) {
$endpoint = self::ENDPOINT_NAMESPACE . ucfirst($endpoint);
if(!method_exists($endpoint, $action)) {
$this->terminateRequest(self::API_RESPONSE_CODE_ERROR, __('Invalid API action.'));
}

View File

@ -30,7 +30,6 @@ class Daemon {
function run() {
$daemon = $this->daemon;
set_time_limit(0);
if(!$daemon) {
$this->abortWithError(__('Daemon does not exist.'));
}
@ -39,6 +38,8 @@ class Daemon {
) {
$this->abortWithError(__('Invalid or missing token.'));
}
$daemon['token'] = $this->token;
CronHelper::saveDaemon($daemon);
$this->abortIfStopped($daemon);
try {
$scheduler = new SchedulerWorker($this->timer);
@ -55,14 +56,13 @@ class Daemon {
// after each execution, re-read daemon data in case its status was changed
// its status has changed
$daemon = CronHelper::getDaemon();
if(!$daemon || $daemon['token'] !== $this->data['token']) {
if(!$daemon || $daemon['token'] !== $this->token) {
$this->terminateRequest();
}
$this->abortIfStopped($daemon);
if($daemon['status'] === self::STATUS_STARTING) {
$daemon['status'] = self::STATUS_STARTED;
}
$daemon['token'] = $this->token;
CronHelper::saveDaemon($daemon);
$this->callSelf();
}