host = $host; $this->type = $type; } /** * Execute the job. * * @return void */ public function handle() { // $host = $this->host; $host->load(['module']); switch ($this->type) { case 'patch': $response = $host->module->http()->patch('hosts/' . $host->id, $host->toArray()); break; case 'post': $response = $host->module->http()->post('hosts', $host->toArray()); break; case 'delete': $response = $host->module->http()->delete('hosts/' . $host->id); // if successful if ($response->successful() || $response->status() === 404) { $host->delete(); } break; } if ($this->type !== 'delete') { if (!$response->successful()) { $host->status = 'error'; } $host->save(); } } }