Enum GuacamoleProtocolCapability

java.lang.Object
java.lang.Enum<GuacamoleProtocolCapability>
org.apache.guacamole.protocol.GuacamoleProtocolCapability
All Implemented Interfaces:
Serializable, Comparable<GuacamoleProtocolCapability>, java.lang.constant.Constable

public enum GuacamoleProtocolCapability extends Enum<GuacamoleProtocolCapability>
Capabilities which may not be present in all versions of the Guacamole protocol.
  • Enum Constant Details

    • ARBITRARY_HANDSHAKE_ORDER

      public static final GuacamoleProtocolCapability ARBITRARY_HANDSHAKE_ORDER
      The protocol does not require handshake instructions to be sent in a specific order, nor that all handshake instructions be sent. Arbitrary handshake order was introduced in GuacamoleProtocolVersion.VERSION_1_1_0.
    • MSG_INSTRUCTION

      public static final GuacamoleProtocolCapability MSG_INSTRUCTION
      Support for the "msg" instruction. The "msg" instruction allows the server to send messages to the client. Support for this instruction was introduced in GuacamoleProtocolVersion.VERSION_1_5_0.
    • NAME_HANDSHAKE

      public static final GuacamoleProtocolCapability NAME_HANDSHAKE
      Support for the "name" handshake instruction, allowing clients to send the name of the Guacamole user to be passed to guacd and associated with connections. Support for this instruction was introduced in GuacamoleProtocolVersion.VERSION_1_5_0.
    • PROTOCOL_VERSION_DETECTION

      public static final GuacamoleProtocolCapability PROTOCOL_VERSION_DETECTION
      Negotiation of Guacamole protocol version between client and server during the protocol handshake. The ability to negotiate protocol versions was introduced in GuacamoleProtocolVersion.VERSION_1_1_0.
    • REQUIRED_INSTRUCTION

      public static final GuacamoleProtocolCapability REQUIRED_INSTRUCTION
      Support for the "required" instruction. The "required" instruction allows the server to explicitly request connection parameters from the client without which the connection cannot continue, such as user credentials. Support for this instruction was introduced in GuacamoleProtocolVersion.VERSION_1_3_0.
    • TIMEZONE_HANDSHAKE

      public static final GuacamoleProtocolCapability TIMEZONE_HANDSHAKE
      Support for the "timezone" handshake instruction. The "timezone" instruction allows the client to request that the server forward their local timezone for use within the remote desktop session. Support for forwarding the client timezone was introduced in GuacamoleProtocolVersion.VERSION_1_1_0.
  • Method Details

    • values

      public static GuacamoleProtocolCapability[] 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 GuacamoleProtocolCapability 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
    • isSupported

      public boolean isSupported(GuacamoleProtocolVersion version)
      Returns whether this capability is supported in the given Guacamole protocol version.
      Parameters:
      version - The Guacamole protocol version to check.
      Returns:
      true if this capability is supported by the given protocol version, false otherwise.