Enum Scheme

java.lang.Object
java.lang.Enum<Scheme>
org.simpleframework.http.Scheme
All Implemented Interfaces:
Serializable, Comparable<Scheme>, java.lang.constant.Constable

public enum Scheme extends Enum<Scheme>
The Scheme represents a scheme used for a URI. Here only schemes that directly relate to HTTP are provided, which includes HTTP/1.1 schemes and WebSocket 1.0 schemes.
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    This represents the scheme for a plaintext HTTP connection.
    This represents the scheme for a HTTP over TLS connection.
    This represents the scheme for a plaintext WebSocket connection.
    This represents the scheme for WebSocket over TLS connection.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final String
    This is the actual scheme token that is to be used in the URI.
    final boolean
    This is used to determine if the connection is secure or not.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
    Scheme(String scheme, boolean secure)
    Constructor for the Scheme object.
  • Method Summary

    Modifier and Type
    Method
    Description
    This is used to acquire the scheme token for this.
    boolean
    This is used to determine if the scheme is secure or not.
    static Scheme
    This is used to resolve the scheme given a token.
    static Scheme
    This is used to resolve the scheme given a URI.
    static Scheme
    Returns the enum constant of this type with the specified name.
    static Scheme[]
    Returns an array containing the constants of this enum type, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • HTTP

      public static final Scheme HTTP
      This represents the scheme for a plaintext HTTP connection.
    • HTTPS

      public static final Scheme HTTPS
      This represents the scheme for a HTTP over TLS connection.
    • WS

      public static final Scheme WS
      This represents the scheme for a plaintext WebSocket connection.
    • WSS

      public static final Scheme WSS
      This represents the scheme for WebSocket over TLS connection.
  • Field Details

    • scheme

      public final String scheme
      This is the actual scheme token that is to be used in the URI.
    • secure

      public final boolean secure
      This is used to determine if the connection is secure or not.
  • Constructor Details

    • Scheme

      private Scheme(String scheme, boolean secure)
      Constructor for the Scheme object. This is used create an entry using the specific scheme token and a boolean indicating if the scheme is secure or not.
      Parameters:
      scheme - this is the scheme token to be used
      secure - this determines if the scheme is secure or not
  • Method Details

    • values

      public static Scheme[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static Scheme valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • isSecure

      public boolean isSecure()
      This is used to determine if the scheme is secure or not. In general a secure scheme is one sent over a SSL/TLS connection.
      Returns:
      this returns true if the scheme is a secure one
    • getScheme

      public String getScheme()
      This is used to acquire the scheme token for this. The scheme token can be used to prefix a absolute fully qualified URI.
      Returns:
      the scheme token representing this scheme
    • resolveScheme

      public static Scheme resolveScheme(String token)
      This is used to resolve the scheme given a token. If there is no matching scheme for the provided token a default of HTTP is provided.
      Parameters:
      token - this is the token used to determine the scheme
      Returns:
      this returns the match or HTTP if none matched
    • resolveScheme

      public static Scheme resolveScheme(URI target)
      This is used to resolve the scheme given a URI. If there is no matching scheme for the provided instance then this will return null.
      Parameters:
      token - this is the object to resolve a scheme for
      Returns:
      this returns the match or null if none matched