diff --git a/src/Console/Controller/TubeController.php b/src/Console/Controller/FlowController.php similarity index 92% rename from src/Console/Controller/TubeController.php rename to src/Console/Controller/FlowController.php index 5dc353e..799772d 100644 --- a/src/Console/Controller/TubeController.php +++ b/src/Console/Controller/FlowController.php @@ -19,7 +19,7 @@ /** * @internal */ -class TubeController extends AbstractController +class FlowController extends AbstractController { /** * @var Client @@ -35,11 +35,11 @@ public function __construct( $this->elasticSearchClient = $elasticSearchClient; } - public function __invoke(Request $request, string $tube): Promise + public function __invoke(Request $request, string $flow): Promise { - return call(function () use ($request, $tube) { + return call(function () use ($request, $flow) { /** @var Tube $tube */ - $tube = yield $this->getBeanstalkClient()->getTubeStats($tube); + $tube = yield $this->getBeanstalkClient()->getTubeStats($flow); $queryParams = []; parse_str($request->getUri()->getQuery(), $queryParams); $foundJobs = []; @@ -52,8 +52,9 @@ public function __invoke(Request $request, string $tube): Promise Status::OK, [], $this->getTwig()->render( - 'tube.html.twig', + 'flow.html.twig', [ + 'flow' => $flow, 'tube' => $tube, 'foundJobs' => $foundJobs, 'query' => $query, diff --git a/src/Console/Controller/JobController.php b/src/Console/Controller/JobController.php index 07bd167..47387f7 100644 --- a/src/Console/Controller/JobController.php +++ b/src/Console/Controller/JobController.php @@ -28,17 +28,20 @@ public function __construct(Environment $twig, BeanstalkClient $beanstalkClient, } - public function __invoke(Request $request, string $jobId) + public function __invoke(Request $request, string $flow, string $jobId) { - return call(function () use ($jobId) { - $result = yield $this->elasticSearchClient->search(['term' => ['uuid.keyword' => ['value' => $jobId]]]); + return call(function () use ($jobId, $flow) { + $result = yield $this->elasticSearchClient->search( + ['term' => ['uuid.keyword' => ['value' => $jobId]]], + $flow + ); $document = $result['hits']['hits'][0]; $job = $document['_source']; return new Response( Status::OK, [], - $this->getTwig()->render('job.html.twig', ['job' => $job]) + $this->getTwig()->render('job.html.twig', ['flow' => $flow, 'job' => $job]) ); }); } diff --git a/src/Console/Resources/config/controllers.yml b/src/Console/Resources/config/controllers.yml index c82b19c..fa9f3eb 100644 --- a/src/Console/Resources/config/controllers.yml +++ b/src/Console/Resources/config/controllers.yml @@ -12,9 +12,9 @@ services: parent: console.controller.abstract class: '\Webgriffe\Esb\Console\Controller\IndexController' - console.controller.tube: + console.controller.flow: parent: console.controller.abstract - class: '\Webgriffe\Esb\Console\Controller\TubeController' + class: '\Webgriffe\Esb\Console\Controller\FlowController' arguments: - '@Webgriffe\AmpElasticsearch\Client' diff --git a/src/Console/Resources/views/tube.html.twig b/src/Console/Resources/views/flow.html.twig similarity index 97% rename from src/Console/Resources/views/tube.html.twig rename to src/Console/Resources/views/flow.html.twig index ee6c039..8b70964 100644 --- a/src/Console/Resources/views/tube.html.twig +++ b/src/Console/Resources/views/flow.html.twig @@ -58,7 +58,7 @@

Search

-
+
@@ -86,7 +86,7 @@
{{ job.lastEvent.type }}
- + View diff --git a/src/Console/Resources/views/index.html.twig b/src/Console/Resources/views/index.html.twig index ef88abc..7847910 100644 --- a/src/Console/Resources/views/index.html.twig +++ b/src/Console/Resources/views/index.html.twig @@ -17,7 +17,7 @@ {% for tube in tubes %} - {{ tube.name }} + {{ tube.name }} {{ tube.currentJobsUrgent }} {{ tube.currentJobsReady }} {{ tube.currentJobsReserved }} diff --git a/src/Console/Resources/views/job.html.twig b/src/Console/Resources/views/job.html.twig index 5cecb3a..c0a18ea 100644 --- a/src/Console/Resources/views/job.html.twig +++ b/src/Console/Resources/views/job.html.twig @@ -1,7 +1,10 @@ {% extends '_layout.html.twig' %} {% block content %} -

Job {{ job.uuid }}

+

+ Job {{ job.uuid }} + « Back +

diff --git a/src/Console/Server.php b/src/Console/Server.php index 9f0d00e..b853e32 100644 --- a/src/Console/Server.php +++ b/src/Console/Server.php @@ -24,7 +24,7 @@ use Webgriffe\Esb\Console\Controller\IndexController; use Webgriffe\Esb\Console\Controller\JobController; use Webgriffe\Esb\Console\Controller\KickController; -use Webgriffe\Esb\Console\Controller\TubeController; +use Webgriffe\Esb\Console\Controller\FlowController; use function Amp\call; /** @@ -142,10 +142,10 @@ private function getDispatcher(Request $request): Dispatcher function (RouteCollector $r) use ($request) { $this->container->set('console.controller.request', $request); $r->addRoute('GET', '/', $this->container->get('console.controller.index')); - $r->addRoute('GET', '/tube/{tube}', $this->container->get('console.controller.tube')); + $r->addRoute('GET', '/flow/{flow}', $this->container->get('console.controller.flow')); $r->addRoute('GET', '/kick/{jobId}', $this->container->get('console.controller.kick')); $r->addRoute('GET', '/delete/{jobId}', $this->container->get('console.controller.delete')); - $r->addRoute('GET', '/job/{jobId}', $this->container->get('console.controller.job')); + $r->addRoute('GET', '/flow/{flow}/job/{jobId}', $this->container->get('console.controller.job')); } ); }