BossBey File Manager
PHP:
8.2.30
OS:
Linux
User:
imagivibe
Root
/
home
/
imagivibe
/
www
/
app.imagivibe.com
/
vendor
/
laravel
/
octane
/
src
/
RoadRunner
📤 Upload
📝 New File
📁 New Folder
Close
Editing: ServerStateFile.php
<?php namespace Laravel\Octane\RoadRunner; use RuntimeException; class ServerStateFile { public function __construct(protected string $path) { } /** * Read the server state from the server state file. */ public function read(): array { $state = is_readable($this->path) ? json_decode(file_get_contents($this->path), true) : []; return [ 'masterProcessId' => $state['masterProcessId'] ?? null, 'state' => $state['state'] ?? [], ]; } /** * Write the given process ID to the server state file. */ public function writeProcessId(int $masterProcessId): void { if (! is_writable($this->path) && ! is_writable(dirname($this->path))) { throw new RuntimeException('Unable to write to process ID file.'); } file_put_contents($this->path, json_encode( array_merge($this->read(), ['masterProcessId' => $masterProcessId]), JSON_PRETTY_PRINT )); } /** * Write the given state array to the server state file. */ public function writeState(array $newState): void { if (! is_writable($this->path) && ! is_writable(dirname($this->path))) { throw new RuntimeException('Unable to write to process ID file.'); } file_put_contents($this->path, json_encode( array_merge($this->read(), ['state' => $newState]), JSON_PRETTY_PRINT )); } /** * Delete the process ID file. */ public function delete(): bool { if (is_writable($this->path)) { return unlink($this->path); } return false; } /** * Get the path to the process ID file. */ public function path(): string { return $this->path; } }
Save
Cancel