Skip to content

Reference

tilttek/generator-bundle
TypeRole
TilttekGeneratorBundleThe bundle: its configuration, and the controllers' directory for AssetMapper.
Application\ApiAccessWho may draw which generator from the API, and against which rate limit.
Application\ClientA client of the API: its name, token, generators and rate limit.
Application\GrantA draw allowed: who asks, its key, and the rate limit it counts against.
Application\DrawRequestReads a Draw from the parameters of a request, its state included.
Application\MemoryTablesDraws from the state kept under a key and keeps the new one; reads, sets and forgets a state.
Application\Contract\DrawRateLimiterThe port of a rate limit, by key.
Application\Contract\StateStoreThe port of the store of the states, by generator and key.
Application\Contract\StateLockThe port of the lock that keeps two draws on the same state apart.
Application\Exception\AccessDeniedA draw the API refuses.
Application\Exception\InvalidDrawRequestParameters it cannot read.
Application\Exception\InvalidStateKeyA key of a state that is empty or too long.
Infrastructure\Catalog\CachedCatalogThe catalog of the files, cached, refreshed in debug.
Infrastructure\Catalog\FileChangesAsks the files of the catalog whether they changed, each time the cache is read in debug.
Infrastructure\State\CacheStateStoreThe states in a PSR-6 cache pool, without expiry.
Infrastructure\State\InMemoryStateStoreThe states in memory, for tests, reset with the kernel.
Infrastructure\Lock\SymfonyStateLockThe lock of a state on Symfony's lock factory, by a hash of the generator and the key, kept 30 seconds at most.
Infrastructure\Catalog\GeneratorFactoryBuilds the generator from a catalog.
Infrastructure\Http\DrawControllerThe draw API.
Infrastructure\Console\ValidateCommandtilttek:generator:validate.
Infrastructure\Console\CreateCommandtilttek:generator:create.
Infrastructure\Console\DrawCommandtilttek:generator:draw.
Infrastructure\Twig\DrawExtensiontilttek_draw().
Infrastructure\RateLimit\SymfonyDrawRateLimiterThe rate limit of a Symfony rate limiter.
Infrastructure\DependencyInjection\GeneratorServicesRegisters the services from the configuration.
Infrastructure\DependencyInjection\PublicRateLimiterPassRefuses the container when the default rate limit of the public draws has no rate limiter builder.

The template @TilttekGenerator/draw.html.twig, the route file config/routes.php and the Stimulus controller assets/src/generator_controller.js with its functions in assets/src/lib/draws.js complete the bundle.