sealed trait Message extends AnyRef
- Alphabetic
- By Inheritance
- Message
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def headers: Map[String, String]
Every message contains a set of HTTP-like headers, but these headers are defined outside of the JSON-RPC protocol specification and are transmitted at the transport level.
Every message contains a set of HTTP-like headers, but these headers are defined outside of the JSON-RPC protocol specification and are transmitted at the transport level. That is, it is up to the message readers and writers to decide how these headers are trasmitted over the network.
For example, if JSON-RPC is being transmitted over HTTP/2, the message reader and writer implementation can use the HTTP/2 headers to transport the message headers. Howevrer, if JSON-RPC messages are transmitted over a socket such as WebSockets or a pipe or file channel, then these headers can be transmitted with the base protocol defined in the Language Server Protocol here.
This last strategy is the one implemented in this library by default as it is the most flexible regardless of the transport used for JSON-RPC messages.
Note that because of this, headers are never serialized into the JSON wire format and the serializers/deserializers here defined will remove any headers before writing and before reading JSON-RPC messages.
- abstract def jsonrpc: String
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated