[ Index ]

PHP Cross Reference of phpBB-3.2.11-deutsch

title

Body

[close]

/vendor/guzzlehttp/ringphp/src/Client/ -> Middleware.php (source)

   1  <?php
   2  namespace GuzzleHttp\Ring\Client;
   3  
   4  /**
   5   * Provides basic middleware wrappers.
   6   *
   7   * If a middleware is more complex than a few lines of code, then it should
   8   * be implemented in a class rather than a static method.
   9   */
  10  class Middleware
  11  {
  12      /**
  13       * Sends future requests to a future compatible handler while sending all
  14       * other requests to a default handler.
  15       *
  16       * When the "future" option is not provided on a request, any future responses
  17       * are automatically converted to synchronous responses and block.
  18       *
  19       * @param callable $default Handler used for non-streaming responses
  20       * @param callable $future  Handler used for future responses
  21       *
  22       * @return callable Returns the composed handler.
  23       */
  24      public static function wrapFuture(
  25          callable $default,
  26          callable $future
  27      ) {
  28          return function (array $request) use ($default, $future) {
  29              return empty($request['client']['future'])
  30                  ? $default($request)
  31                  : $future($request);
  32          };
  33      }
  34  
  35      /**
  36       * Sends streaming requests to a streaming compatible handler while sendin
  37       * all other requests to a default handler.
  38       *
  39       * This, for example, could be useful for taking advantage of the
  40       * performance benefits of curl while still supporting true streaming
  41       * through the StreamHandler.
  42       *
  43       * @param callable $default   Handler used for non-streaming responses
  44       * @param callable $streaming Handler used for streaming responses
  45       *
  46       * @return callable Returns the composed handler.
  47       */
  48      public static function wrapStreaming(
  49          callable $default,
  50          callable $streaming
  51      ) {
  52          return function (array $request) use ($default, $streaming) {
  53              return empty($request['client']['stream'])
  54                  ? $default($request)
  55                  : $streaming($request);
  56          };
  57      }
  58  }


Generated: Wed Nov 11 20:33:01 2020 Cross-referenced by PHPXref 0.7.1