Created
June 27, 2023 23:41
-
-
Save devsrealm/d123b034db85b5856c7d1569ba983786 to your computer and use it in GitHub Desktop.
TonicsRouter Benchmarks With FastRoute and Symfony - Game With BitBucket Routes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
use Devsrealm\TonicsRouterSystem\Container\Container; | |
use Devsrealm\TonicsRouterSystem\Events\OnRequestProcess; | |
use Devsrealm\TonicsRouterSystem\Handler\Router; | |
use Devsrealm\TonicsRouterSystem\RequestInput; | |
use Devsrealm\TonicsRouterSystem\Resolver\RouteResolver; | |
use Devsrealm\TonicsRouterSystem\Response; | |
use Devsrealm\TonicsRouterSystem\Route; | |
use Devsrealm\TonicsRouterSystem\RouteNode; | |
use Devsrealm\TonicsRouterSystem\RouteTreeGenerator; | |
use Devsrealm\TonicsRouterSystem\State\RouteTreeGeneratorState; | |
use Symfony\Component\HttpFoundation\Request; | |
use Symfony\Component\Routing\RouteCollection; | |
use Symfony\Component\VarDumper\Cloner\VarCloner; | |
use Symfony\Component\VarDumper\Dumper\HtmlDumper; | |
use Symfony\Component\VarDumper\VarDumper; | |
use Symfony\Component\Routing\Route as SymfonyRoute; | |
use Symfony\Component\Routing\Matcher\Dumper\CompiledUrlMatcherDumper; | |
use Symfony\Component\Routing\RequestContext; | |
use Symfony\Component\Routing\Matcher\CompiledUrlMatcher; | |
require dirname(__FILE__, 2) . '/vendor/autoload.php'; # Change this to the correct autoload.php | |
$onRequestProcess = new OnRequestProcess( | |
new RouteResolver( | |
new Container() | |
), | |
new Route( new RouteTreeGenerator( | |
new RouteTreeGeneratorState(), new RouteNode() | |
) | |
) | |
); | |
$router = new Router( | |
$onRequestProcess, | |
$onRequestProcess->getRouteObject(), | |
new Response( | |
$onRequestProcess, new RequestInput() | |
) | |
); | |
$tonicsRoute = $router->getRoute(); | |
function calculateAverageExecutionTime(callable $benchmark): string | |
{ | |
$totalExecutionTime = 0; | |
$iterations = 1000; | |
for ($i = 0; $i < $iterations; $i++) { | |
$totalExecutionTime += $benchmark(); | |
} | |
return $totalExecutionTime / $iterations; | |
} | |
function printBenchmarks(array $benchmarks, string $url): void | |
{ | |
$time = array_column($benchmarks, 'Time'); | |
array_multisort($time, SORT_ASC, $benchmarks); | |
echo "AVERAGE EXECUTION TIME FOR PATH - $url <br> <br>"; | |
foreach ($benchmarks as $key => $benchmark){ | |
if ($key === 0){ | |
echo $benchmark['Name'] . ' ' . sprintf("%f", $benchmark['Time']) . " 🏆 (Winner) <br>"; | |
} else { | |
echo $benchmark['Name'] . ' ' . sprintf("%f", $benchmark['Time']) . "<br>"; | |
} | |
} | |
} | |
#------------------ | |
# TonicsRouter | |
#--------------------- | |
function tonicsRoutes(Route $routes) | |
{ | |
$routes->get( '/addon', function (){}); | |
$routes->get( '/addon/linkers', function (){}); | |
$routes->get( '/addon/linkers/:linker_key', function (){}); | |
$routes->get( '/addon/linkers/:linker_key/values', function (){}); | |
$routes->get( '/addon/linkers/:linker_key/values/:value_id', function (){}); | |
$routes->get( '/hook_events', function (){}); | |
$routes->get( '/hook_events/:subject_type', function (){}); | |
$routes->get( '/pullrequests/:selected_user', function (){}); | |
$routes->get( '/repositories', function (){}); | |
$routes->get( '/repositories/:workspace', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/branch-restrictions', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/branch-restrictions/:id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/branching-model', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/branching-model/settings', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/approve', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/comments', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/comments/:comment_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/properties/:app_key/:property_name', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/pullrequests', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/reports', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/reports/:reportId', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/reports/:reportId/annotations', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/reports/:reportId/annotations/:annotationId', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/statuses', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/statuses/build', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commit/:commit/statuses/build/:key', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commits', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/commits/:revision', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/components', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/components/:component_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/default-reviewers', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/default-reviewers/:target_username', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deploy-keys', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deploy-keys/:key_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deployments/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deployments/:deployment_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deployments_config/environments/:environment_uuid/variables', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/deployments_config/environments/:environment_uuid/variables/:variable_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/diff/:spec', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/diffstat/:spec', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/downloads', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/downloads/:filename', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/environments/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/environments/:environment_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/environments/:environment_uuid/changes/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/filehistory/:commit/:path', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/forks', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/hooks', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/hooks/:uid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/export', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/import', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/attachments', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/attachments/:path', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/changes', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/changes/:change_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/comments', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/comments/:comment_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/vote', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/issues/:issue_id/watch', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/merge-base/:revspec', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/milestones', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/milestones/:milestone_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/patch/:spec', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines-config/caches/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines-config/caches/:cache_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines-config/caches/:cache_uuid/content-uri', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid/log', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid/logs/:log_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid/test_reports', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid/test_reports/test_cases', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/steps/:step_uuid/test_reports/test_cases/:test_case_uuid/test_case_reasons', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines/:pipeline_uuid/stopPipeline', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/build_number', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/schedules/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/schedules/:schedule_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/schedules/:schedule_uuid/executions/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/ssh/key_pair', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/ssh/known_hosts/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/ssh/known_hosts/:known_host_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/variables/', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pipelines_config/variables/:variable_uuid', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/properties/:app_key/:property_name', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/activity', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/activity', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/approve', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/comments', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/comments/:comment_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/commits', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/decline', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/diff', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/diffstat', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/merge', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/merge/task-status/:task_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/patch', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/request-changes', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pull_request_id/statuses', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/pullrequests/:pullrequest_id/properties/:app_key/:property_name', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/refs', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/refs/branches', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/refs/branches/:name', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/refs/tags', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/refs/tags/:name', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/src', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/src/:commit/:path', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/versions', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/versions/:version_id', function (){}); | |
$routes->get( '/repositories/:workspace/:repo_slug/watchers', function (){}); | |
$routes->get( '/snippets', function (){}); | |
$routes->get( '/snippets/:workspace', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/comments', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/comments/:comment_id', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/commits', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/commits/:revision', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/files/:path', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/watch', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/watchers', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/:node_id', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/:node_id/files/:path', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/:revision/diff', function (){}); | |
$routes->get( '/snippets/:workspace/:encoded_id/:revision/patch', function (){}); | |
$routes->get( '/teams', function (){}); | |
$routes->get( '/teams/:username', function (){}); | |
$routes->get( '/teams/:username/followers', function (){}); | |
$routes->get( '/teams/:username/following', function (){}); | |
$routes->get( '/teams/:username/members', function (){}); | |
$routes->get( '/teams/:username/permissions', function (){}); | |
$routes->get( '/teams/:username/permissions/repositories', function (){}); | |
$routes->get( '/teams/:username/permissions/repositories/:repo_slug', function (){}); | |
$routes->get( '/teams/:username/pipelines_config/variables/', function (){}); | |
$routes->get( '/teams/:username/pipelines_config/variables/:variable_uuid', function (){}); | |
$routes->get( '/teams/:username/projects/', function (){}); | |
$routes->get( '/teams/:username/projects/:project_key', function (){}); | |
$routes->get( '/teams/:username/search/code', function (){}); | |
$routes->get( '/teams/:workspace/repositories', function (){}); | |
$routes->get( '/user', function (){}); | |
$routes->get( '/user/emails', function (){}); | |
$routes->get( '/user/emails/:email', function (){}); | |
$routes->get( '/user/permissions/repositories', function (){}); | |
$routes->get( '/user/permissions/teams', function (){}); | |
$routes->get( '/user/permissions/workspaces', function (){}); | |
$routes->get( '/users/:selected_user', function (){}); | |
$routes->get( '/users/:selected_user/pipelines_config/variables/', function (){}); | |
$routes->get( '/users/:selected_user/pipelines_config/variables/:variable_uuid', function (){}); | |
$routes->get( '/users/:selected_user/properties/:app_key/:property_name', function (){}); | |
$routes->get( '/users/:selected_user/search/code', function (){}); | |
$routes->get( '/users/:selected_user/ssh-keys', function (){}); | |
$routes->get( '/users/:selected_user/ssh-keys/:key_id', function (){}); | |
$routes->get( '/users/:username/members', function (){}); | |
$routes->get( '/users/:workspace/repositories', function (){}); | |
$routes->get( '/workspaces', function (){}); | |
$routes->get( '/workspaces/:workspace', function (){}); | |
$routes->get( '/workspaces/:workspace/hooks', function (){}); | |
$routes->get( '/workspaces/:workspace/hooks/:uid', function (){}); | |
$routes->get( '/workspaces/:workspace/members', function (){}); | |
$routes->get( '/workspaces/:workspace/members/:member', function (){}); | |
$routes->get( '/workspaces/:workspace/permissions', function (){}); | |
$routes->get( '/workspaces/:workspace/permissions/repositories', function (){}); | |
$routes->get( '/workspaces/:workspace/permissions/repositories/:repo_slug', function (){}); | |
$routes->get( '/workspaces/:workspace/pipelines-config/identity/oidc/keys.json', function (){}); | |
$routes->get( '/workspaces/:workspace/pipelines-config/variables', function (){}); | |
$routes->get( '/workspaces/:workspace/pipelines-config/variables/:variable_uuid', function (){}); | |
$routes->get( '/workspaces/:workspace/projects', function (){}); | |
$routes->get( '/workspaces/:workspace/projects/:project_key', function (){}); | |
$routes->get( '/workspaces/:workspace/search/code', function (){}); | |
} | |
tonicsRoutes($tonicsRoute); | |
$treeGenerator = $tonicsRoute->getRouteTreeGenerator(); | |
#------------------ | |
# FastRouter | |
#--------------------- | |
$routes = function (\FastRoute\RouteCollector $routes) { | |
$routes->addRoute('GET', '/addon', 'addon'); | |
$routes->addRoute('GET', '/addon/linkers', 'addon_linkers'); | |
$routes->addRoute('GET', '/addon/linkers/{linker_key}', 'addon_linkers_linker_key'); | |
$routes->addRoute('GET', '/addon/linkers/{linker_key}/values', 'addon_linkers_linker_key_values'); | |
$routes->addRoute('GET', '/addon/linkers/{linker_key}/values/{value_id}', 'addon_linkers_linker_key_values_value_id'); | |
$routes->addRoute('GET', '/hook_events', 'hook_events'); | |
$routes->addRoute('GET', '/hook_events/{subject_type}', 'hook_events_subject_type'); | |
$routes->addRoute('GET', '/pullrequests/{selected_user}', 'pullrequests_selected_user'); | |
$routes->addRoute('GET', '/repositories', 'repositories'); | |
$routes->addRoute('GET', '/repositories/{workspace}', 'repositories_workspace'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}', 'repositories_workspace_repo_slug'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/branch-restrictions', 'repositories_workspace_repo_slug_branch_restrictions'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/branch-restrictions/{id}', 'repositories_workspace_repo_slug_branch_restrictions_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/branching-model', 'repositories_workspace_repo_slug_branching_model'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/branching-model/settings', 'repositories_workspace_repo_slug_branching_model_settings'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}', 'repositories_workspace_repo_slug_commit_commit'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/approve', 'repositories_workspace_repo_slug_commit_commit_approve'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/comments', 'repositories_workspace_repo_slug_commit_commit_comments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}', 'repositories_workspace_repo_slug_commit_commit_comments_comment_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/properties/{app_key}/{property_name}', 'repositories_workspace_repo_slug_commit_commit_properties_app_key_property_name'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/pullrequests', 'repositories_workspace_repo_slug_commit_commit_pullrequests'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/reports', 'repositories_workspace_repo_slug_commit_commit_reports'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}', 'repositories_workspace_repo_slug_commit_commit_reports_reportId'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations', 'repositories_workspace_repo_slug_commit_commit_reports_reportId_annotations'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}', 'repositories_workspace_repo_slug_commit_commit_reports_reportId_annotations_annotationId'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses', 'repositories_workspace_repo_slug_commit_commit_statuses'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build', 'repositories_workspace_repo_slug_commit_commit_statuses_build'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build/{key}', 'repositories_workspace_repo_slug_commit_commit_statuses_build_key'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commits', 'repositories_workspace_repo_slug_commits'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/commits/{revision}', 'repositories_workspace_repo_slug_commits_revision'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/components', 'repositories_workspace_repo_slug_components'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/components/{component_id}', 'repositories_workspace_repo_slug_components_component_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/default-reviewers', 'repositories_workspace_repo_slug_default_reviewers'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/default-reviewers/{target_username}', 'repositories_workspace_repo_slug_default_reviewers_target_username'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deploy-keys', 'repositories_workspace_repo_slug_deploy_keys'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deploy-keys/{key_id}', 'repositories_workspace_repo_slug_deploy_keys_key_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deployments/', 'repositories_workspace_repo_slug_deployments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deployments/{deployment_uuid}', 'repositories_workspace_repo_slug_deployments_deployment_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables', 'repositories_workspace_repo_slug_deployments_config_environments_environment_uuid_variables'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables/{variable_uuid}', 'repositories_workspace_repo_slug_deployments_config_environments_environment_uuid_variables_variable_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/diff/{spec}', 'repositories_workspace_repo_slug_diff_spec'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/diffstat/{spec}', 'repositories_workspace_repo_slug_diffstat_spec'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/downloads', 'repositories_workspace_repo_slug_downloads'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/downloads/{filename}', 'repositories_workspace_repo_slug_downloads_filename'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/environments/', 'repositories_workspace_repo_slug_environments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}', 'repositories_workspace_repo_slug_environments_environment_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}/changes/', 'repositories_workspace_repo_slug_environments_environment_uuid_changes'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}', 'repositories_workspace_repo_slug_filehistory_commit_path'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/forks', 'repositories_workspace_repo_slug_forks'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/hooks', 'repositories_workspace_repo_slug_hooks'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/hooks/{uid}', 'repositories_workspace_repo_slug_hooks_uid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues', 'repositories_workspace_repo_slug_issues'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/export', 'repositories_workspace_repo_slug_issues_export'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/import', 'repositories_workspace_repo_slug_issues_import'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}', 'repositories_workspace_repo_slug_issues_issue_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments', 'repositories_workspace_repo_slug_issues_issue_id_attachments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments/{path}', 'repositories_workspace_repo_slug_issues_issue_id_attachments_path'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes', 'repositories_workspace_repo_slug_issues_issue_id_changes'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes/{change_id}', 'repositories_workspace_repo_slug_issues_issue_id_changes_change_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments', 'repositories_workspace_repo_slug_issues_issue_id_comments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments/{comment_id}', 'repositories_workspace_repo_slug_issues_issue_id_comments_comment_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/vote', 'repositories_workspace_repo_slug_issues_issue_id_vote'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/issues/{issue_id}/watch', 'repositories_workspace_repo_slug_issues_issue_id_watch'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/merge-base/{revspec}', 'repositories_workspace_repo_slug_merge_base_revspec'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/milestones', 'repositories_workspace_repo_slug_milestones'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/milestones/{milestone_id}', 'repositories_workspace_repo_slug_milestones_milestone_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/patch/{spec}', 'repositories_workspace_repo_slug_patch_spec'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines-config/caches/', 'repositories_workspace_repo_slug_pipelines_config_caches'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}', 'repositories_workspace_repo_slug_pipelines_config_caches_cache_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri', 'repositories_workspace_repo_slug_pipelines_config_caches_cache_uuid_content_uri'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/', 'repositories_workspace_repo_slug_pipelines'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/log', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_log'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/logs/{log_uuid}', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_logs_log_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports_test_cases'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases/{test_case_uuid}/test_case_reasons', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports_test_cases_test_case_uuid_test_case_reasons'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/stopPipeline', 'repositories_workspace_repo_slug_pipelines_pipeline_uuid_stopPipeline'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config', 'repositories_workspace_repo_slug_pipelines_config'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/build_number', 'repositories_workspace_repo_slug_pipelines_config_build_number'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/', 'repositories_workspace_repo_slug_pipelines_config_schedules'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}', 'repositories_workspace_repo_slug_pipelines_config_schedules_schedule_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}/executions/', 'repositories_workspace_repo_slug_pipelines_config_schedules_schedule_uuid_executions'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/key_pair', 'repositories_workspace_repo_slug_pipelines_config_ssh_key_pair'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/', 'repositories_workspace_repo_slug_pipelines_config_ssh_known_hosts'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/{known_host_uuid}', 'repositories_workspace_repo_slug_pipelines_config_ssh_known_hosts_known_host_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/variables/', 'repositories_workspace_repo_slug_pipelines_config_variables'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pipelines_config/variables/{variable_uuid}', 'repositories_workspace_repo_slug_pipelines_config_variables_variable_uuid'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/properties/{app_key}/{property_name}', 'repositories_workspace_repo_slug_properties_app_key_property_name'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests', 'repositories_workspace_repo_slug_pullrequests'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/activity', 'repositories_workspace_repo_slug_pullrequests_activity'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}', 'repositories_workspace_repo_slug_pullrequests_pull_request_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/activity', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_activity'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/approve', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_approve'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_comments'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_comments_comment_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/commits', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_commits'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/decline', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_decline'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diff', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_diff'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diffstat', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_diffstat'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_merge'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge/task-status/{task_id}', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_merge_task_status_task_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/patch', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_patch'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/request-changes', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_request_changes'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/statuses', 'repositories_workspace_repo_slug_pullrequests_pull_request_id_statuses'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/properties/{app_key}/{property_name}', 'repositories_workspace_repo_slug_pullrequests_pullrequest_id_properties_app_key_property_name'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/refs', 'repositories_workspace_repo_slug_refs'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/refs/branches', 'repositories_workspace_repo_slug_refs_branches'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/refs/branches/{name}', 'repositories_workspace_repo_slug_refs_branches_name'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/refs/tags', 'repositories_workspace_repo_slug_refs_tags'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/refs/tags/{name}', 'repositories_workspace_repo_slug_refs_tags_name'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/src', 'repositories_workspace_repo_slug_src'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/src/{commit}/{path}', 'repositories_workspace_repo_slug_src_commit_path'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/versions', 'repositories_workspace_repo_slug_versions'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/versions/{version_id}', 'repositories_workspace_repo_slug_versions_version_id'); | |
$routes->addRoute('GET', '/repositories/{workspace}/{repo_slug}/watchers', 'repositories_workspace_repo_slug_watchers'); | |
$routes->addRoute('GET', '/snippets', 'snippets'); | |
$routes->addRoute('GET', '/snippets/{workspace}', 'snippets_workspace'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}', 'snippets_workspace_encoded_id'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/comments', 'snippets_workspace_encoded_id_comments'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/comments/{comment_id}', 'snippets_workspace_encoded_id_comments_comment_id'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/commits', 'snippets_workspace_encoded_id_commits'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/commits/{revision}', 'snippets_workspace_encoded_id_commits_revision'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/files/{path}', 'snippets_workspace_encoded_id_files_path'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/watch', 'snippets_workspace_encoded_id_watch'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/watchers', 'snippets_workspace_encoded_id_watchers'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/{node_id}', 'snippets_workspace_encoded_id_node_id'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/{node_id}/files/{path}', 'snippets_workspace_encoded_id_node_id_files_path'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/{revision}/diff', 'snippets_workspace_encoded_id_revision_diff'); | |
$routes->addRoute('GET', '/snippets/{workspace}/{encoded_id}/{revision}/patch', 'snippets_workspace_encoded_id_revision_patch'); | |
$routes->addRoute('GET', '/teams', 'teams'); | |
$routes->addRoute('GET', '/teams/{username}', 'teams_username'); | |
$routes->addRoute('GET', '/teams/{username}/followers', 'teams_username_followers'); | |
$routes->addRoute('GET', '/teams/{username}/following', 'teams_username_following'); | |
$routes->addRoute('GET', '/teams/{username}/members', 'teams_username_members'); | |
$routes->addRoute('GET', '/teams/{username}/permissions', 'teams_username_permissions'); | |
$routes->addRoute('GET', '/teams/{username}/permissions/repositories', 'teams_username_permissions_repositories'); | |
$routes->addRoute('GET', '/teams/{username}/permissions/repositories/{repo_slug}', 'teams_username_permissions_repositories_repo_slug'); | |
$routes->addRoute('GET', '/teams/{username}/pipelines_config/variables/', 'teams_username_pipelines_config_variables'); | |
$routes->addRoute('GET', '/teams/{username}/pipelines_config/variables/{variable_uuid}', 'teams_username_pipelines_config_variables_variable_uuid'); | |
$routes->addRoute('GET', '/teams/{username}/projects/', 'teams_username_projects'); | |
$routes->addRoute('GET', '/teams/{username}/projects/{project_key}', 'teams_username_projects_project_key'); | |
$routes->addRoute('GET', '/teams/{username}/search/code', 'teams_username_search_code'); | |
$routes->addRoute('GET', '/teams/{workspace}/repositories', 'teams_workspace_repositories'); | |
$routes->addRoute('GET', '/user', 'user'); | |
$routes->addRoute('GET', '/user/emails', 'user_emails'); | |
$routes->addRoute('GET', '/user/emails/{email}', 'user_emails_email'); | |
$routes->addRoute('GET', '/user/permissions/repositories', 'user_permissions_repositories'); | |
$routes->addRoute('GET', '/user/permissions/teams', 'user_permissions_teams'); | |
$routes->addRoute('GET', '/user/permissions/workspaces', 'user_permissions_workspaces'); | |
$routes->addRoute('GET', '/users/{selected_user}', 'users_selected_user'); | |
$routes->addRoute('GET', '/users/{selected_user}/pipelines_config/variables/', 'users_selected_user_pipelines_config_variables'); | |
$routes->addRoute('GET', '/users/{selected_user}/pipelines_config/variables/{variable_uuid}', 'users_selected_user_pipelines_config_variables_variable_uuid'); | |
$routes->addRoute('GET', '/users/{selected_user}/properties/{app_key}/{property_name}', 'users_selected_user_properties_app_key_property_name'); | |
$routes->addRoute('GET', '/users/{selected_user}/search/code', 'users_selected_user_search_code'); | |
$routes->addRoute('GET', '/users/{selected_user}/ssh-keys', 'users_selected_user_ssh_keys'); | |
$routes->addRoute('GET', '/users/{selected_user}/ssh-keys/{key_id}', 'users_selected_user_ssh_keys_key_id'); | |
$routes->addRoute('GET', '/users/{username}/members', 'users_username_members'); | |
$routes->addRoute('GET', '/users/{workspace}/repositories', 'users_workspace_repositories'); | |
$routes->addRoute('GET', '/workspaces', 'workspaces'); | |
$routes->addRoute('GET', '/workspaces/{workspace}', 'workspaces_workspace'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/hooks', 'workspaces_workspace_hooks'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/hooks/{uid}', 'workspaces_workspace_hooks_uid'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/members', 'workspaces_workspace_members'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/members/{member}', 'workspaces_workspace_members_member'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/permissions', 'workspaces_workspace_permissions'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/permissions/repositories', 'workspaces_workspace_permissions_repositories'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/permissions/repositories/{repo_slug}', 'workspaces_workspace_permissions_repositories_repo_slug'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/pipelines-config/identity/oidc/.well-known/openid-configuration', 'workspaces_workspace_pipelines_config_identity_oidc_well_known_openid_configuration'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/pipelines-config/identity/oidc/keys.json', 'workspaces_workspace_pipelines_config_identity_oidc_keys_json'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/pipelines-config/variables', 'workspaces_workspace_pipelines_config_variables'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/pipelines-config/variables/{variable_uuid}', 'workspaces_workspace_pipelines_config_variables_variable_uuid'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/projects', 'workspaces_workspace_projects'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/projects/{project_key}', 'workspaces_workspace_projects_project_key'); | |
$routes->addRoute('GET', '/workspaces/{workspace}/search/code', 'workspaces_workspace_search_code'); | |
}; | |
$dispatcher = FastRoute\cachedDispatcher($routes, [ | |
'cacheKey' => "FastRoute.cache", | |
'cacheFile' => "FastRoute.cache", | |
'cacheDisabled' => false, | |
] | |
); | |
#------------------ | |
# SymfonyRouting | |
#--------------------- | |
$symfonyRoutes = new RouteCollection(); | |
function symfonyRoutes(RouteCollection $routes) | |
{ | |
$routes->add('addon', new SymfonyRoute('/addon')); | |
$routes->add('addon_linkers', new SymfonyRoute('/addon/linkers')); | |
$routes->add('addon_linkers_linker_key', new SymfonyRoute('/addon/linkers/{linker_key}')); | |
$routes->add('addon_linkers_linker_key_values', new SymfonyRoute('/addon/linkers/{linker_key}/values')); | |
$routes->add('addon_linkers_linker_key_values_value_id', new SymfonyRoute('/addon/linkers/{linker_key}/values/{value_id}')); | |
$routes->add('hook_events', new SymfonyRoute('/hook_events')); | |
$routes->add('hook_events_subject_type', new SymfonyRoute('/hook_events/{subject_type}')); | |
$routes->add('pullrequests_selected_user', new SymfonyRoute('/pullrequests/{selected_user}')); | |
$routes->add('repositories', new SymfonyRoute('/repositories')); | |
$routes->add('repositories_workspace', new SymfonyRoute('/repositories/{workspace}')); | |
$routes->add('repositories_workspace_repo_slug', new SymfonyRoute('/repositories/{workspace}/{repo_slug}')); | |
$routes->add('repositories_workspace_repo_slug_branch_restrictions', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/branch-restrictions')); | |
$routes->add('repositories_workspace_repo_slug_branch_restrictions_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/branch-restrictions/{id}')); | |
$routes->add('repositories_workspace_repo_slug_branching_model', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/branching-model')); | |
$routes->add('repositories_workspace_repo_slug_branching_model_settings', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/branching-model/settings')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_approve', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/approve')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_comments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/comments')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_comments_comment_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id}')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_properties_app_key_property_name', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/properties/{app_key}/{property_name}')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_pullrequests', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/pullrequests')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_reports', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/reports')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_reports_reportId', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_reports_reportId_annotations', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_reports_reportId_annotations_annotationId', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}/annotations/{annotationId}')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_statuses', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_statuses_build', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build')); | |
$routes->add('repositories_workspace_repo_slug_commit_commit_statuses_build_key', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commit/{commit}/statuses/build/{key}')); | |
$routes->add('repositories_workspace_repo_slug_commits', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commits')); | |
$routes->add('repositories_workspace_repo_slug_commits_revision', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/commits/{revision}')); | |
$routes->add('repositories_workspace_repo_slug_components', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/components')); | |
$routes->add('repositories_workspace_repo_slug_components_component_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/components/{component_id}')); | |
$routes->add('repositories_workspace_repo_slug_default_reviewers', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/default-reviewers')); | |
$routes->add('repositories_workspace_repo_slug_default_reviewers_target_username', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/default-reviewers/{target_username}')); | |
$routes->add('repositories_workspace_repo_slug_deploy_keys', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deploy-keys')); | |
$routes->add('repositories_workspace_repo_slug_deploy_keys_key_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deploy-keys/{key_id}')); | |
$routes->add('repositories_workspace_repo_slug_deployments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deployments/')); | |
$routes->add('repositories_workspace_repo_slug_deployments_deployment_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deployments/{deployment_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_deployments_config_environments_environment_uuid_variables', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables')); | |
$routes->add('repositories_workspace_repo_slug_deployments_config_environments_environment_uuid_variables_variable_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/deployments_config/environments/{environment_uuid}/variables/{variable_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_diff_spec', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/diff/{spec}')); | |
$routes->add('repositories_workspace_repo_slug_diffstat_spec', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/diffstat/{spec}')); | |
$routes->add('repositories_workspace_repo_slug_downloads', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/downloads')); | |
$routes->add('repositories_workspace_repo_slug_downloads_filename', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/downloads/{filename}')); | |
$routes->add('repositories_workspace_repo_slug_environments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/environments/')); | |
$routes->add('repositories_workspace_repo_slug_environments_environment_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_environments_environment_uuid_changes', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/environments/{environment_uuid}/changes/')); | |
$routes->add('repositories_workspace_repo_slug_filehistory_commit_path', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/filehistory/{commit}/{path}')); | |
$routes->add('repositories_workspace_repo_slug_forks', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/forks')); | |
$routes->add('repositories_workspace_repo_slug_hooks', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/hooks')); | |
$routes->add('repositories_workspace_repo_slug_hooks_uid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/hooks/{uid}')); | |
$routes->add('repositories_workspace_repo_slug_issues', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues')); | |
$routes->add('repositories_workspace_repo_slug_issues_export', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/export')); | |
$routes->add('repositories_workspace_repo_slug_issues_import', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/import')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_attachments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_attachments_path', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments/{path}')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_changes', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_changes_change_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes/{change_id}')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_comments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_comments_comment_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments/{comment_id}')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_vote', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/vote')); | |
$routes->add('repositories_workspace_repo_slug_issues_issue_id_watch', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/issues/{issue_id}/watch')); | |
$routes->add('repositories_workspace_repo_slug_merge_base_revspec', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/merge-base/{revspec}')); | |
$routes->add('repositories_workspace_repo_slug_milestones', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/milestones')); | |
$routes->add('repositories_workspace_repo_slug_milestones_milestone_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/milestones/{milestone_id}')); | |
$routes->add('repositories_workspace_repo_slug_patch_spec', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/patch/{spec}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_caches', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines-config/caches/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_caches_cache_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_caches_cache_uuid_content_uri', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines-config/caches/{cache_uuid}/content-uri')); | |
$routes->add('repositories_workspace_repo_slug_pipelines', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_log', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/log')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_logs_log_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/logs/{log_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports_test_cases', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_steps_step_uuid_test_reports_test_cases_test_case_uuid_test_case_reasons', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/steps/{step_uuid}/test_reports/test_cases/{test_case_uuid}/test_case_reasons')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_pipeline_uuid_stopPipeline', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines/{pipeline_uuid}/stopPipeline')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_build_number', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/build_number')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_schedules', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_schedules_schedule_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_schedules_schedule_uuid_executions', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/schedules/{schedule_uuid}/executions/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_ssh_key_pair', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/key_pair')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_ssh_known_hosts', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_ssh_known_hosts_known_host_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/ssh/known_hosts/{known_host_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_variables', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/variables/')); | |
$routes->add('repositories_workspace_repo_slug_pipelines_config_variables_variable_uuid', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pipelines_config/variables/{variable_uuid}')); | |
$routes->add('repositories_workspace_repo_slug_properties_app_key_property_name', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/properties/{app_key}/{property_name}')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_activity', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/activity')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_activity', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/activity')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_approve', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/approve')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_comments', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_comments_comment_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/comments/{comment_id}')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_commits', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/commits')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_decline', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/decline')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_diff', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diff')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_diffstat', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/diffstat')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_merge', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_merge_task_status_task_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/merge/task-status/{task_id}')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_patch', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/patch')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_request_changes', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/request-changes')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pull_request_id_statuses', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pull_request_id}/statuses')); | |
$routes->add('repositories_workspace_repo_slug_pullrequests_pullrequest_id_properties_app_key_property_name', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/pullrequests/{pullrequest_id}/properties/{app_key}/{property_name}')); | |
$routes->add('repositories_workspace_repo_slug_refs', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/refs')); | |
$routes->add('repositories_workspace_repo_slug_refs_branches', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/refs/branches')); | |
$routes->add('repositories_workspace_repo_slug_refs_branches_name', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/refs/branches/{name}')); | |
$routes->add('repositories_workspace_repo_slug_refs_tags', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/refs/tags')); | |
$routes->add('repositories_workspace_repo_slug_refs_tags_name', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/refs/tags/{name}')); | |
$routes->add('repositories_workspace_repo_slug_src', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/src')); | |
$routes->add('repositories_workspace_repo_slug_src_commit_path', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/src/{commit}/{path}')); | |
$routes->add('repositories_workspace_repo_slug_versions', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/versions')); | |
$routes->add('repositories_workspace_repo_slug_versions_version_id', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/versions/{version_id}')); | |
$routes->add('repositories_workspace_repo_slug_watchers', new SymfonyRoute('/repositories/{workspace}/{repo_slug}/watchers')); | |
$routes->add('snippets', new SymfonyRoute('/snippets')); | |
$routes->add('snippets_workspace', new SymfonyRoute('/snippets/{workspace}')); | |
$routes->add('snippets_workspace_encoded_id', new SymfonyRoute('/snippets/{workspace}/{encoded_id}')); | |
$routes->add('snippets_workspace_encoded_id_comments', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/comments')); | |
$routes->add('snippets_workspace_encoded_id_comments_comment_id', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/comments/{comment_id}')); | |
$routes->add('snippets_workspace_encoded_id_commits', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/commits')); | |
$routes->add('snippets_workspace_encoded_id_commits_revision', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/commits/{revision}')); | |
$routes->add('snippets_workspace_encoded_id_files_path', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/files/{path}')); | |
$routes->add('snippets_workspace_encoded_id_watch', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/watch')); | |
$routes->add('snippets_workspace_encoded_id_watchers', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/watchers')); | |
$routes->add('snippets_workspace_encoded_id_node_id', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/{node_id}')); | |
$routes->add('snippets_workspace_encoded_id_node_id_files_path', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/{node_id}/files/{path}')); | |
$routes->add('snippets_workspace_encoded_id_revision_diff', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/{revision}/diff')); | |
$routes->add('snippets_workspace_encoded_id_revision_patch', new SymfonyRoute('/snippets/{workspace}/{encoded_id}/{revision}/patch')); | |
$routes->add('teams', new SymfonyRoute('/teams')); | |
$routes->add('teams_username', new SymfonyRoute('/teams/{username}')); | |
$routes->add('teams_username_followers', new SymfonyRoute('/teams/{username}/followers')); | |
$routes->add('teams_username_following', new SymfonyRoute('/teams/{username}/following')); | |
$routes->add('teams_username_members', new SymfonyRoute('/teams/{username}/members')); | |
$routes->add('teams_username_permissions', new SymfonyRoute('/teams/{username}/permissions')); | |
$routes->add('teams_username_permissions_repositories', new SymfonyRoute('/teams/{username}/permissions/repositories')); | |
$routes->add('teams_username_permissions_repositories_repo_slug', new SymfonyRoute('/teams/{username}/permissions/repositories/{repo_slug}')); | |
$routes->add('teams_username_pipelines_config_variables', new SymfonyRoute('/teams/{username}/pipelines_config/variables/')); | |
$routes->add('teams_username_pipelines_config_variables_variable_uuid', new SymfonyRoute('/teams/{username}/pipelines_config/variables/{variable_uuid}')); | |
$routes->add('teams_username_projects', new SymfonyRoute('/teams/{username}/projects/')); | |
$routes->add('teams_username_projects_project_key', new SymfonyRoute('/teams/{username}/projects/{project_key}')); | |
$routes->add('teams_username_search_code', new SymfonyRoute('/teams/{username}/search/code')); | |
$routes->add('teams_workspace_repositories', new SymfonyRoute('/teams/{workspace}/repositories')); | |
$routes->add('user', new SymfonyRoute('/user')); | |
$routes->add('user_emails', new SymfonyRoute('/user/emails')); | |
$routes->add('user_emails_email', new SymfonyRoute('/user/emails/{email}')); | |
$routes->add('user_permissions_repositories', new SymfonyRoute('/user/permissions/repositories')); | |
$routes->add('user_permissions_teams', new SymfonyRoute('/user/permissions/teams')); | |
$routes->add('user_permissions_workspaces', new SymfonyRoute('/user/permissions/workspaces')); | |
$routes->add('users_selected_user', new SymfonyRoute('/users/{selected_user}')); | |
$routes->add('users_selected_user_pipelines_config_variables', new SymfonyRoute('/users/{selected_user}/pipelines_config/variables/')); | |
$routes->add('users_selected_user_pipelines_config_variables_variable_uuid', new SymfonyRoute('/users/{selected_user}/pipelines_config/variables/{variable_uuid}')); | |
$routes->add('users_selected_user_properties_app_key_property_name', new SymfonyRoute('/users/{selected_user}/properties/{app_key}/{property_name}')); | |
$routes->add('users_selected_user_search_code', new SymfonyRoute('/users/{selected_user}/search/code')); | |
$routes->add('users_selected_user_ssh_keys', new SymfonyRoute('/users/{selected_user}/ssh-keys')); | |
$routes->add('users_selected_user_ssh_keys_key_id', new SymfonyRoute('/users/{selected_user}/ssh-keys/{key_id}')); | |
$routes->add('users_username_members', new SymfonyRoute('/users/{username}/members')); | |
$routes->add('users_workspace_repositories', new SymfonyRoute('/users/{workspace}/repositories')); | |
$routes->add('workspaces', new SymfonyRoute('/workspaces')); | |
$routes->add('workspaces_workspace', new SymfonyRoute('/workspaces/{workspace}')); | |
$routes->add('workspaces_workspace_hooks', new SymfonyRoute('/workspaces/{workspace}/hooks')); | |
$routes->add('workspaces_workspace_hooks_uid', new SymfonyRoute('/workspaces/{workspace}/hooks/{uid}')); | |
$routes->add('workspaces_workspace_members', new SymfonyRoute('/workspaces/{workspace}/members')); | |
$routes->add('workspaces_workspace_members_member', new SymfonyRoute('/workspaces/{workspace}/members/{member}')); | |
$routes->add('workspaces_workspace_permissions', new SymfonyRoute('/workspaces/{workspace}/permissions')); | |
$routes->add('workspaces_workspace_permissions_repositories', new SymfonyRoute('/workspaces/{workspace}/permissions/repositories')); | |
$routes->add('workspaces_workspace_permissions_repositories_repo_slug', new SymfonyRoute('/workspaces/{workspace}/permissions/repositories/{repo_slug}')); | |
$routes->add('workspaces_workspace_pipelines_config_identity_oidc_well_known_openid_configuration', new SymfonyRoute('/workspaces/{workspace}/pipelines-config/identity/oidc/.well-known/openid-configuration')); | |
$routes->add('workspaces_workspace_pipelines_config_identity_oidc_keys_json', new SymfonyRoute('/workspaces/{workspace}/pipelines-config/identity/oidc/keys.json')); | |
$routes->add('workspaces_workspace_pipelines_config_variables', new SymfonyRoute('/workspaces/{workspace}/pipelines-config/variables')); | |
$routes->add('workspaces_workspace_pipelines_config_variables_variable_uuid', new SymfonyRoute('/workspaces/{workspace}/pipelines-config/variables/{variable_uuid}')); | |
$routes->add('workspaces_workspace_projects', new SymfonyRoute('/workspaces/{workspace}/projects')); | |
$routes->add('workspaces_workspace_projects_project_key', new SymfonyRoute('/workspaces/{workspace}/projects/{project_key}')); | |
$routes->add('workspaces_workspace_search_code', new SymfonyRoute('/workspaces/{workspace}/search/code')); | |
return $routes; | |
} | |
symfonyRoutes($symfonyRoutes); | |
$dumper = new CompiledUrlMatcherDumper($symfonyRoutes); | |
$compiled = $dumper->getCompiledRoutes(); | |
function benchmarkRandom(): void | |
{ | |
global $treeGenerator, $dispatcher, $compiled; | |
$urls = json_decode(<<<JSO | |
{"\/addon":"\/addon","\/addon\/linkers":"\/addon\/linkers","\/addon\/linkers\/tonics-linker_key":"\/addon\/linkers\/:linker_key","\/addon\/linkers\/tonics-linker_key\/values":"\/addon\/linkers\/:linker_key\/values","\/addon\/linkers\/tonics-linker_key\/values\/tonics-value_id":"\/addon\/linkers\/:linker_key\/values\/:value_id","\/hook_events":"\/hook_events","\/hook_events\/tonics-subject_type":"\/hook_events\/:subject_type","\/pullrequests\/tonics-selected_user":"\/pullrequests\/:selected_user","\/repositories":"\/repositories","\/repositories\/tonics-workspace":"\/repositories\/:workspace","\/repositories\/tonics-workspace\/tonics-repo_slug":"\/repositories\/:workspace\/:repo_slug","\/repositories\/tonics-workspace\/tonics-repo_slug\/branch-restrictions":"\/repositories\/:workspace\/:repo_slug\/branch-restrictions","\/repositories\/tonics-workspace\/tonics-repo_slug\/branch-restrictions\/tonics-id":"\/repositories\/:workspace\/:repo_slug\/branch-restrictions\/:id","\/repositories\/tonics-workspace\/tonics-repo_slug\/branching-model":"\/repositories\/:workspace\/:repo_slug\/branching-model","\/repositories\/tonics-workspace\/tonics-repo_slug\/branching-model\/settings":"\/repositories\/:workspace\/:repo_slug\/branching-model\/settings","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/approve":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/approve","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/comments":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/comments","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/comments\/tonics-comment_id":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/comments\/:comment_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/properties\/tonics-app_key\/tonics-property_name":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/properties\/:app_key\/:property_name","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/pullrequests":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/pullrequests","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/reports":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/reports","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/reports\/tonics-reportId":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/reports\/:reportId","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/reports\/tonics-reportId\/annotations":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/reports\/:reportId\/annotations","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/reports\/tonics-reportId\/annotations\/tonics-annotationId":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/reports\/:reportId\/annotations\/:annotationId","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/statuses":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/statuses","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/statuses\/build":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/statuses\/build","\/repositories\/tonics-workspace\/tonics-repo_slug\/commit\/tonics-commit\/statuses\/build\/tonics-key":"\/repositories\/:workspace\/:repo_slug\/commit\/:commit\/statuses\/build\/:key","\/repositories\/tonics-workspace\/tonics-repo_slug\/commits":"\/repositories\/:workspace\/:repo_slug\/commits","\/repositories\/tonics-workspace\/tonics-repo_slug\/commits\/tonics-revision":"\/repositories\/:workspace\/:repo_slug\/commits\/:revision","\/repositories\/tonics-workspace\/tonics-repo_slug\/components":"\/repositories\/:workspace\/:repo_slug\/components","\/repositories\/tonics-workspace\/tonics-repo_slug\/components\/tonics-component_id":"\/repositories\/:workspace\/:repo_slug\/components\/:component_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/default-reviewers":"\/repositories\/:workspace\/:repo_slug\/default-reviewers","\/repositories\/tonics-workspace\/tonics-repo_slug\/default-reviewers\/tonics-target_username":"\/repositories\/:workspace\/:repo_slug\/default-reviewers\/:target_username","\/repositories\/tonics-workspace\/tonics-repo_slug\/deploy-keys":"\/repositories\/:workspace\/:repo_slug\/deploy-keys","\/repositories\/tonics-workspace\/tonics-repo_slug\/deploy-keys\/tonics-key_id":"\/repositories\/:workspace\/:repo_slug\/deploy-keys\/:key_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/deployments":"\/repositories\/:workspace\/:repo_slug\/deployments","\/repositories\/tonics-workspace\/tonics-repo_slug\/deployments\/tonics-deployment_uuid":"\/repositories\/:workspace\/:repo_slug\/deployments\/:deployment_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/deployments_config\/environments\/tonics-environment_uuid\/variables":"\/repositories\/:workspace\/:repo_slug\/deployments_config\/environments\/:environment_uuid\/variables","\/repositories\/tonics-workspace\/tonics-repo_slug\/deployments_config\/environments\/tonics-environment_uuid\/variables\/tonics-variable_uuid":"\/repositories\/:workspace\/:repo_slug\/deployments_config\/environments\/:environment_uuid\/variables\/:variable_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/diff\/tonics-spec":"\/repositories\/:workspace\/:repo_slug\/diff\/:spec","\/repositories\/tonics-workspace\/tonics-repo_slug\/diffstat\/tonics-spec":"\/repositories\/:workspace\/:repo_slug\/diffstat\/:spec","\/repositories\/tonics-workspace\/tonics-repo_slug\/downloads":"\/repositories\/:workspace\/:repo_slug\/downloads","\/repositories\/tonics-workspace\/tonics-repo_slug\/downloads\/tonics-filename":"\/repositories\/:workspace\/:repo_slug\/downloads\/:filename","\/repositories\/tonics-workspace\/tonics-repo_slug\/environments":"\/repositories\/:workspace\/:repo_slug\/environments","\/repositories\/tonics-workspace\/tonics-repo_slug\/environments\/tonics-environment_uuid":"\/repositories\/:workspace\/:repo_slug\/environments\/:environment_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/environments\/tonics-environment_uuid\/changes":"\/repositories\/:workspace\/:repo_slug\/environments\/:environment_uuid\/changes","\/repositories\/tonics-workspace\/tonics-repo_slug\/filehistory\/tonics-commit\/tonics-path":"\/repositories\/:workspace\/:repo_slug\/filehistory\/:commit\/:path","\/repositories\/tonics-workspace\/tonics-repo_slug\/forks":"\/repositories\/:workspace\/:repo_slug\/forks","\/repositories\/tonics-workspace\/tonics-repo_slug\/hooks":"\/repositories\/:workspace\/:repo_slug\/hooks","\/repositories\/tonics-workspace\/tonics-repo_slug\/hooks\/tonics-uid":"\/repositories\/:workspace\/:repo_slug\/hooks\/:uid","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues":"\/repositories\/:workspace\/:repo_slug\/issues","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/export":"\/repositories\/:workspace\/:repo_slug\/issues\/export","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/export\/tonics-repo_name-issues-tonics-task_id.zip":"\/repositories\/:workspace\/:repo_slug\/issues\/export\/:repo_name-issues-task_id.zip","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/import":"\/repositories\/:workspace\/:repo_slug\/issues\/import","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/attachments":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/attachments","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/attachments\/tonics-path":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/attachments\/:path","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/changes":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/changes","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/changes\/tonics-change_id":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/changes\/:change_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/comments":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/comments","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/comments\/tonics-comment_id":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/comments\/:comment_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/vote":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/vote","\/repositories\/tonics-workspace\/tonics-repo_slug\/issues\/tonics-issue_id\/watch":"\/repositories\/:workspace\/:repo_slug\/issues\/:issue_id\/watch","\/repositories\/tonics-workspace\/tonics-repo_slug\/merge-base\/tonics-revspec":"\/repositories\/:workspace\/:repo_slug\/merge-base\/:revspec","\/repositories\/tonics-workspace\/tonics-repo_slug\/milestones":"\/repositories\/:workspace\/:repo_slug\/milestones","\/repositories\/tonics-workspace\/tonics-repo_slug\/milestones\/tonics-milestone_id":"\/repositories\/:workspace\/:repo_slug\/milestones\/:milestone_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/patch\/tonics-spec":"\/repositories\/:workspace\/:repo_slug\/patch\/:spec","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines-config\/caches":"\/repositories\/:workspace\/:repo_slug\/pipelines-config\/caches","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines-config\/caches\/tonics-cache_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines-config\/caches\/:cache_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines-config\/caches\/tonics-cache_uuid\/content-uri":"\/repositories\/:workspace\/:repo_slug\/pipelines-config\/caches\/:cache_uuid\/content-uri","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines":"\/repositories\/:workspace\/:repo_slug\/pipelines","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid\/log":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid\/log","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid\/logs\/tonics-log_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid\/logs\/:log_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid\/test_reports":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid\/test_reports","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid\/test_reports\/test_cases":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid\/test_reports\/test_cases","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/steps\/tonics-step_uuid\/test_reports\/test_cases\/tonics-test_case_uuid\/test_case_reasons":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/steps\/:step_uuid\/test_reports\/test_cases\/:test_case_uuid\/test_case_reasons","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines\/tonics-pipeline_uuid\/stopPipeline":"\/repositories\/:workspace\/:repo_slug\/pipelines\/:pipeline_uuid\/stopPipeline","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config":"\/repositories\/:workspace\/:repo_slug\/pipelines_config","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/build_number":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/build_number","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/schedules":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/schedules","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/schedules\/tonics-schedule_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/schedules\/:schedule_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/schedules\/tonics-schedule_uuid\/executions":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/schedules\/:schedule_uuid\/executions","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/ssh\/key_pair":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/ssh\/key_pair","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/ssh\/known_hosts":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/ssh\/known_hosts","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/ssh\/known_hosts\/tonics-known_host_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/ssh\/known_hosts\/:known_host_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/variables":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/variables","\/repositories\/tonics-workspace\/tonics-repo_slug\/pipelines_config\/variables\/tonics-variable_uuid":"\/repositories\/:workspace\/:repo_slug\/pipelines_config\/variables\/:variable_uuid","\/repositories\/tonics-workspace\/tonics-repo_slug\/properties\/tonics-app_key\/tonics-property_name":"\/repositories\/:workspace\/:repo_slug\/properties\/:app_key\/:property_name","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests":"\/repositories\/:workspace\/:repo_slug\/pullrequests","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/activity":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/activity","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/activity":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/activity","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/approve":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/approve","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/comments":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/comments","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/comments\/tonics-comment_id":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/comments\/:comment_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/commits":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/commits","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/decline":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/decline","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/diff":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/diff","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/diffstat":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/diffstat","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/merge":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/merge","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/merge\/task-status\/tonics-task_id":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/merge\/task-status\/:task_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/patch":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/patch","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/request-changes":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/request-changes","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pull_request_id\/statuses":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pull_request_id\/statuses","\/repositories\/tonics-workspace\/tonics-repo_slug\/pullrequests\/tonics-pullrequest_id\/properties\/tonics-app_key\/tonics-property_name":"\/repositories\/:workspace\/:repo_slug\/pullrequests\/:pullrequest_id\/properties\/:app_key\/:property_name","\/repositories\/tonics-workspace\/tonics-repo_slug\/refs":"\/repositories\/:workspace\/:repo_slug\/refs","\/repositories\/tonics-workspace\/tonics-repo_slug\/refs\/branches":"\/repositories\/:workspace\/:repo_slug\/refs\/branches","\/repositories\/tonics-workspace\/tonics-repo_slug\/refs\/branches\/tonics-name":"\/repositories\/:workspace\/:repo_slug\/refs\/branches\/:name","\/repositories\/tonics-workspace\/tonics-repo_slug\/refs\/tags":"\/repositories\/:workspace\/:repo_slug\/refs\/tags","\/repositories\/tonics-workspace\/tonics-repo_slug\/refs\/tags\/tonics-name":"\/repositories\/:workspace\/:repo_slug\/refs\/tags\/:name","\/repositories\/tonics-workspace\/tonics-repo_slug\/src":"\/repositories\/:workspace\/:repo_slug\/src","\/repositories\/tonics-workspace\/tonics-repo_slug\/src\/tonics-commit\/tonics-path":"\/repositories\/:workspace\/:repo_slug\/src\/:commit\/:path","\/repositories\/tonics-workspace\/tonics-repo_slug\/versions":"\/repositories\/:workspace\/:repo_slug\/versions","\/repositories\/tonics-workspace\/tonics-repo_slug\/versions\/tonics-version_id":"\/repositories\/:workspace\/:repo_slug\/versions\/:version_id","\/repositories\/tonics-workspace\/tonics-repo_slug\/watchers":"\/repositories\/:workspace\/:repo_slug\/watchers","\/snippets":"\/snippets","\/snippets\/tonics-workspace":"\/snippets\/:workspace","\/snippets\/tonics-workspace\/tonics-encoded_id":"\/snippets\/:workspace\/:encoded_id","\/snippets\/tonics-workspace\/tonics-encoded_id\/comments":"\/snippets\/:workspace\/:encoded_id\/comments","\/snippets\/tonics-workspace\/tonics-encoded_id\/comments\/tonics-comment_id":"\/snippets\/:workspace\/:encoded_id\/comments\/:comment_id","\/snippets\/tonics-workspace\/tonics-encoded_id\/commits":"\/snippets\/:workspace\/:encoded_id\/commits","\/snippets\/tonics-workspace\/tonics-encoded_id\/commits\/tonics-revision":"\/snippets\/:workspace\/:encoded_id\/commits\/:revision","\/snippets\/tonics-workspace\/tonics-encoded_id\/files\/tonics-path":"\/snippets\/:workspace\/:encoded_id\/files\/:path","\/snippets\/tonics-workspace\/tonics-encoded_id\/watch":"\/snippets\/:workspace\/:encoded_id\/watch","\/snippets\/tonics-workspace\/tonics-encoded_id\/watchers":"\/snippets\/:workspace\/:encoded_id\/watchers","\/snippets\/tonics-workspace\/tonics-encoded_id\/tonics-node_id":"\/snippets\/:workspace\/:encoded_id\/:node_id","\/snippets\/tonics-workspace\/tonics-encoded_id\/tonics-node_id\/files\/tonics-path":"\/snippets\/:workspace\/:encoded_id\/:node_id\/files\/:path","\/snippets\/tonics-workspace\/tonics-encoded_id\/tonics-revision\/diff":"\/snippets\/:workspace\/:encoded_id\/:revision\/diff","\/snippets\/tonics-workspace\/tonics-encoded_id\/tonics-revision\/patch":"\/snippets\/:workspace\/:encoded_id\/:revision\/patch","\/teams":"\/teams","\/teams\/tonics-username":"\/teams\/:username","\/teams\/tonics-username\/followers":"\/teams\/:username\/followers","\/teams\/tonics-username\/following":"\/teams\/:username\/following","\/teams\/tonics-username\/members":"\/teams\/:username\/members","\/teams\/tonics-username\/permissions":"\/teams\/:username\/permissions","\/teams\/tonics-username\/permissions\/repositories":"\/teams\/:username\/permissions\/repositories","\/teams\/tonics-username\/permissions\/repositories\/tonics-repo_slug":"\/teams\/:username\/permissions\/repositories\/:repo_slug","\/teams\/tonics-username\/pipelines_config\/variables":"\/teams\/:username\/pipelines_config\/variables","\/teams\/tonics-username\/pipelines_config\/variables\/tonics-variable_uuid":"\/teams\/:username\/pipelines_config\/variables\/:variable_uuid","\/teams\/tonics-username\/projects":"\/teams\/:username\/projects","\/teams\/tonics-username\/projects\/tonics-project_key":"\/teams\/:username\/projects\/:project_key","\/teams\/tonics-username\/search\/code":"\/teams\/:username\/search\/code","\/teams\/tonics-workspace\/repositories":"\/teams\/:workspace\/repositories","\/user":"\/user","\/user\/emails":"\/user\/emails","\/user\/emails\/tonics-email":"\/user\/emails\/:email","\/user\/permissions\/repositories":"\/user\/permissions\/repositories","\/user\/permissions\/teams":"\/user\/permissions\/teams","\/user\/permissions\/workspaces":"\/user\/permissions\/workspaces","\/users\/tonics-selected_user":"\/users\/:selected_user","\/users\/tonics-selected_user\/pipelines_config\/variables":"\/users\/:selected_user\/pipelines_config\/variables","\/users\/tonics-selected_user\/pipelines_config\/variables\/tonics-variable_uuid":"\/users\/:selected_user\/pipelines_config\/variables\/:variable_uuid","\/users\/tonics-selected_user\/properties\/tonics-app_key\/tonics-property_name":"\/users\/:selected_user\/properties\/:app_key\/:property_name","\/users\/tonics-selected_user\/search\/code":"\/users\/:selected_user\/search\/code","\/users\/tonics-selected_user\/ssh-keys":"\/users\/:selected_user\/ssh-keys","\/users\/tonics-selected_user\/ssh-keys\/tonics-key_id":"\/users\/:selected_user\/ssh-keys\/:key_id","\/users\/tonics-username\/members":"\/users\/:username\/members","\/users\/tonics-workspace\/repositories":"\/users\/:workspace\/repositories","\/workspaces":"\/workspaces","\/workspaces\/tonics-workspace":"\/workspaces\/:workspace","\/workspaces\/tonics-workspace\/hooks":"\/workspaces\/:workspace\/hooks","\/workspaces\/tonics-workspace\/hooks\/tonics-uid":"\/workspaces\/:workspace\/hooks\/:uid","\/workspaces\/tonics-workspace\/members":"\/workspaces\/:workspace\/members","\/workspaces\/tonics-workspace\/members\/tonics-member":"\/workspaces\/:workspace\/members\/:member","\/workspaces\/tonics-workspace\/permissions":"\/workspaces\/:workspace\/permissions","\/workspaces\/tonics-workspace\/permissions\/repositories":"\/workspaces\/:workspace\/permissions\/repositories","\/workspaces\/tonics-workspace\/permissions\/repositories\/tonics-repo_slug":"\/workspaces\/:workspace\/permissions\/repositories\/:repo_slug","\/workspaces\/tonics-workspace\/pipelines-config\/identity\/oidc\/keys.json":"\/workspaces\/:workspace\/pipelines-config\/identity\/oidc\/keys.json","\/workspaces\/tonics-workspace\/pipelines-config\/variables":"\/workspaces\/:workspace\/pipelines-config\/variables","\/workspaces\/tonics-workspace\/pipelines-config\/variables\/tonics-variable_uuid":"\/workspaces\/:workspace\/pipelines-config\/variables\/:variable_uuid","\/workspaces\/tonics-workspace\/projects":"\/workspaces\/:workspace\/projects","\/workspaces\/tonics-workspace\/projects\/tonics-project_key":"\/workspaces\/:workspace\/projects\/:project_key","\/workspaces\/tonics-workspace\/search\/code":"\/workspaces\/:workspace\/search\/code"} | |
JSO, true | |
); | |
$url = array_rand($urls); | |
printBenchmarks( | |
[ | |
[ | |
'Name' => 'TonicsRouter', | |
'Time' => calculateAverageExecutionTime(function () use ($url, $treeGenerator){ | |
$startTonics = microtime(true); | |
$treeGenerator->match($url, false); | |
return microtime(true) - $startTonics; | |
}) | |
], | |
[ | |
'Name' => 'FastRoute', | |
'Time' => calculateAverageExecutionTime(function () use ($url, $dispatcher){ | |
$start = microtime(true); | |
$dispatcher->dispatch('GET', $url); | |
return microtime(true) - $start; | |
}) | |
], | |
[ | |
'Name' => 'SymfonyRouting', | |
'Time' => calculateAverageExecutionTime(function () use ($url, $compiled){ | |
$request = new Request(); | |
$request = $request->create($url); | |
$requestContext = new RequestContext(); | |
$start = microtime(true); | |
$matcher = new CompiledUrlMatcher( | |
$compiled, $requestContext->fromRequest($request) | |
); | |
$matcher->matchRequest($request); | |
return microtime(true) - $start; | |
}) | |
] | |
], $url | |
); | |
} | |
try { | |
benchmarkRandom(); | |
} catch (Throwable $exception){ | |
echo $exception->getMessage(); | |
} | |
exit(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment