<?php /** * This file is part of the FreeDSx LDAP package. * * (c) Chad Sikorra <Chad.Sikorra@gmail.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace FreeDSx\Ldap\Protocol\ServerProtocolHandler; use FreeDSx\Ldap\Exception\OperationException; use FreeDSx\Ldap\Protocol\LdapMessageRequest; use FreeDSx\Ldap\Protocol\Queue\ServerQueue; use FreeDSx\Ldap\Server\RequestHandler\RequestHandlerInterface; use FreeDSx\Ldap\Server\Token\TokenInterface; use FreeDSx\Socket\Exception\ConnectionException; /** * Handles request specific protocol communication details. * * @internal * @author Chad Sikorra <Chad.Sikorra@gmail.com> */ interface ServerProtocolHandlerInterface { /** * Handle protocol actions specific to the request received. * * @throws OperationException * @throws ConnectionException */ public function handleRequest(LdapMessageRequest $message, TokenInterface $token, RequestHandlerInterface $dispatcher, ServerQueue $queue, array $options): void; }