Aller au contenu

Référence

phil/edit-lock-bundle

PHP

ClasseRôle
PhilEditLockBundleLe bundle : sa configuration, les tables associées pour Doctrine, son jeton CSRF parmi les jetons sans état, les ressources associées pour AssetMapper, Mercure activé avec MercureBundle
Domain\ValueObject\LeaseKeyUne ressource, et au besoin l'un de ses blocs ; overlaps(), covers(), equals()
Domain\ValueObject\HolderQui détient un bail : un identifiant et un nom
Domain\Model\LeaseLe droit d'un détenteur d'écrire une clé jusqu'à un moment ; grant(), restore(), renewed(), passedTo(), la table phil_edit_lease
Domain\Model\LeasedResourceUne ressource ayant fait l'objet d'un bail, la ligne de phil_edit_lease_resource que verrouille chaque revendication sur elle
Domain\Repository\LeaseRepositoryL'endroit où les baux sont conservés, par comparaison et échange, les revendications sur une ressource exécutées une à la fois par exclusively()
Domain\Exception\EditLockException, InvalidLeaseLes exceptions du bundle, et un bail impossible à créer
Application\EditLocksPrendre, pulser, libérer, quitter, reprendre, détenir, présence, purge
Application\EditPolicy, DefaultEditPolicyQui peut modifier et reprendre ; la valeur par défaut pour le propre code de l'application
Application\BlockSavesDes blocs vérifiés, écrits par leur détenteur, conservés et communiqués
Application\BlockStoreL'endroit où l'application conserve les blocs enregistrés
Application\Broadcaster, NullBroadcasterPrévenir les autres rédacteurs ; ne prévenir personne
Application\HolderProviderAu nom de qui la requête courante écrit
Application\Exception\LeaseHeld, LeaseLost, EditRefused, InvalidBlockCe qui tourne mal avec les baux et les blocs
Infrastructure\Doctrine\DoctrineLeaseRepositoryLes baux dans phil_edit_lease, par des requêtes simples, chaque revendication dans une transaction qui verrouille la ligne de la ressource
Infrastructure\Memory\InMemoryLeaseRepositoryLes baux en mémoire, pour les tests
Infrastructure\Mercure\MercureBroadcasterLa présence et les blocs publiés vers un hub Mercure
Infrastructure\Mercure\TurboStreamsLes Turbo Streams de la présence, des blocs enregistrés et retirés
Infrastructure\Http\EditLockControllerLes points de terminaison
Infrastructure\Http\EditLockRequestSi une requête vient du contrôleur de ce site : son en-tête, le Sec-Fetch-Site du navigateur et le jeton CSRF sans état phil_edit_lock, sauf si la méthode est sûre ; le nom du témoin du jeton
Infrastructure\Http\RoutesLes noms des routes, indexés comme le contrôleur les nomme
Infrastructure\Http\ClientConfigLa configuration du contrôleur pour une ressource et un détenteur
Infrastructure\DependencyInjection\EditLockServicesLes services du bundle
Infrastructure\DependencyInjection\CsrfProtectionPassArrête le conteneur avec un message qui dit quoi changer lorsque framework.csrf_protection est faux

Fichiers

FichierRôle
config/routes.phpLes routes, importées par l'application sous son préfixe
assets/src/collaboration_controller.jsLe contrôleur Stimulus
assets/src/lib/leases.js, csrf.js, snapshot.js, presence.js, streams.js, i18n.jsSes modules, décrits dans JavaScript
assets/styles/edit-lock.cssLa feuille de style de la liste des rédacteurs
assets/package.jsonLe contrôleur déclaré pour Symfony UX