Class NewSessionQueue

java.lang.Object
org.openqa.selenium.grid.sessionqueue.NewSessionQueue
All Implemented Interfaces:
org.openqa.selenium.remote.http.HttpHandler, org.openqa.selenium.remote.http.Routable, HasReadyState
Direct Known Subclasses:
LocalNewSessionQueue, RemoteNewSessionQueue

public abstract class NewSessionQueue extends Object implements HasReadyState, org.openqa.selenium.remote.http.Routable
  • Field Details

    • tracer

      protected final org.openqa.selenium.remote.tracing.Tracer tracer
  • Constructor Details

    • NewSessionQueue

      protected NewSessionQueue(org.openqa.selenium.remote.tracing.Tracer tracer, Secret registrationSecret)
  • Method Details

    • peekEmpty

      public abstract boolean peekEmpty()
      A fast-path to detect if the queue is empty, returns false if there is no fast-path available.
      Returns:
      true if the queue is empty, false if it is not empty or unknown
    • addToQueue

      public abstract org.openqa.selenium.remote.http.HttpResponse addToQueue(SessionRequest request)
    • retryAddToQueue

      public abstract boolean retryAddToQueue(SessionRequest request)
    • remove

      public abstract Optional<SessionRequest> remove(RequestId reqId)
    • getNextAvailable

      public abstract List<SessionRequest> getNextAvailable(Map<org.openqa.selenium.Capabilities,Long> stereotypes)
    • complete

      public abstract boolean complete(RequestId reqId, org.openqa.selenium.internal.Either<org.openqa.selenium.SessionNotCreatedException,CreateSessionResponse> result)
    • clearQueue

      public abstract int clearQueue()
    • getQueueContents

      public abstract List<SessionRequestCapability> getQueueContents()
    • matches

      public boolean matches(org.openqa.selenium.remote.http.HttpRequest req)
      Specified by:
      matches in interface org.openqa.selenium.remote.http.Routable
    • execute

      public org.openqa.selenium.remote.http.HttpResponse execute(org.openqa.selenium.remote.http.HttpRequest req)
      Specified by:
      execute in interface org.openqa.selenium.remote.http.HttpHandler