skunk.net.message

Definitions of Postgres messages, with binary encoders and decoders. Doc for this package isn't very good yet, but the message formats are well documented at the linked pages below. It's a straightforward mapping.

It's probably useful to point out that Codec, Encoder, and Decoder in this package are from scodec. They're not the data types of the same name and same general design that are defined above in the skunk package. I realize this is confusing, but it shouldn't be a concern for anyone other than people working on the wire protocol, which never changes (heh-heh) so it shouldn't be a big deal.

Attributes

See also

Members list

Type members

Classlikes

Specifies that the authentication was successful.

Specifies that the authentication was successful.

Attributes

Source
AuthenticationCleartextPassword.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type

Specifies that GSSAPI authentication is required.

Specifies that GSSAPI authentication is required.

Attributes

Source
AuthenticationGSS.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class AuthenticationGSSContinue(data: Array[Byte]) extends AuthenticationRequest

Specifies that this message contains GSSAPI or SSPI data.

Specifies that this message contains GSSAPI or SSPI data.

Value parameters

data

GSSAPI or SSPI authentication data.

Attributes

Companion
object
Source
AuthenticationGSSContinue.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AuthenticationGSSContinue.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Source
AuthenticationKerberosV5.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class AuthenticationMD5Password(salt: Array[Byte]) extends AuthenticationRequest

Specifies that an MD5-encrypted password is required.

Specifies that an MD5-encrypted password is required.

Value parameters

salt

The salt to use when encrypting the password.

Attributes

Companion
object
Source
AuthenticationMD5Password.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AuthenticationMD5Password.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Specifies that the authentication was successful.

Specifies that the authentication was successful.

Attributes

Source
AuthenticationOk.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type

Family of BackendMessage relating to authentication.

Family of BackendMessage relating to authentication. All share the same top-level decoder, which switches on a secondary tag and delegates to secondary decoders.

Attributes

Companion
object
Source
AuthenticationRequest.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Source
AuthenticationRequest.scala
Supertypes
class Object
trait Matchable
class Any
Self type
final case class AuthenticationSASL(mechanisms: List[String]) extends AuthenticationRequest

Specifies that SASL authentication is required.

Specifies that SASL authentication is required. The message body is a list of SASL authentication mechanisms, in the server's order of preference.

Value parameters

mechanisms

Names of supported SASL authentication mechanisms.

Attributes

Companion
object
Source
AuthenticationSASL.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AuthenticationSASL.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Specifies that this message contains a SASL challenge.

Specifies that this message contains a SASL challenge.

Value parameters

data

SASL data, specific to the SASL mechanism being used.

Attributes

Companion
object
Source
AuthenticationSASLContinue.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AuthenticationSASLContinue.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class AuthenticationSASLFinal(data: ByteVector) extends AuthenticationRequest

Specifies that SASL authentication has completed.

Specifies that SASL authentication has completed.

Value parameters

data

SASL outcome "additional data", specific to the SASL mechanism being used.

Attributes

Companion
object
Source
AuthenticationSASLFinal.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AuthenticationSASLFinal.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Source
AuthenticationSCMCredential.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type

Specifies that SSPI authentication is required.

Specifies that SSPI authentication is required.

Attributes

Source
AuthenticationSSPI.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class BackendKeyData(pid: Int, key: Int) extends BackendMessage

Cancellation key data.

Cancellation key data. The frontend must save these values if it wishes to be able to issue CancelRequest messages later.

Value parameters

key

The secret key of this backend.

pid

The process ID of this backend.

Attributes

Companion
object
Source
BackendKeyData.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
BackendKeyData.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Family of messages that are received from the server (the "back end").

Family of messages that are received from the server (the "back end"). These messages all consist of a leading tag and a length-prefixed payload. This is an open hierarchy because I don't like the aesthetics of a 52-case ADT. We may revisit this but it's ok for now.

Attributes

Companion
object
Source
BackendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Source
BackendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Self type
case class Bind(portal: String, statement: String, args: List[Option[String]]) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Bind.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Bind

Attributes

Companion
class
Source
Bind.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Bind.type
case object BindComplete extends BackendMessage

Attributes

Source
BindComplete.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
sealed abstract case class Close(variant: Byte, name: String) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Close.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Close

Attributes

Companion
class
Source
Close.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Close.type
case object CloseComplete extends BackendMessage

Attributes

Source
CloseComplete.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final implicit class CodecOps[A](val self: Codec[A]) extends AnyVal

Attributes

Source
package.scala
Supertypes
class AnyVal
trait Matchable
class Any
case class CommandComplete(completion: Completion) extends BackendMessage

Command-completed response.

Command-completed response. The command tag is usually a single word that identifies which SQL command was completed.

- For an INSERT command, the tag is INSERT <oid> <rows>, where rows is the number of rows inserted. oid is the object ID of the inserted row if rows is 1 and the target table has OIDs; otherwise oid is 0. - For a DELETE command, the tag is DELETE rows where rows is the number of rows deleted. - For an UPDATE command, the tag is UPDATE rows where rows is the number of rows updated. - For a SELECT or CREATE TABLE AS command, the tag is SELECT rows where rows is the number of rows retrieved. - For a MOVE command, the tag is MOVE rows where rows is the number of rows the cursor's position has been changed by. - For a FETCH command, the tag is FETCH rows where rows is the number of rows that have been retrieved from the cursor. - For a COPY command, the tag is COPY rows where rows is the number of rows copied. (Note: the row count appears only in PostgreSQL 8.2 and later.)

Value parameters

completion

The command tag.

Attributes

Companion
object
Source
CommandComplete.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
CommandComplete.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
abstract class ConstFrontendMessage(tag: Byte) extends TaggedFrontendMessage

Attributes

Source
FrontendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object CopyFail.type
object Flush.type
object Sync.type
object Terminate.type
final case class CopyData(data: ByteVector) extends BackendMessage

Attributes

Companion
object
Source
CopyData.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CopyData

Attributes

Companion
class
Source
CopyData.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
CopyData.type
case object CopyDone extends BackendMessage

Attributes

Source
CopyDone.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
CopyDone.type
case object CopyFail extends ConstFrontendMessage

Attributes

Source
CopyFail.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
CopyFail.type
final case class CopyInResponse(data: ByteVector) extends BackendMessage

Attributes

Companion
object
Source
CopyInResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
CopyInResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class CopyOutResponse(data: ByteVector) extends BackendMessage

Attributes

Companion
object
Source
CopyOutResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
CopyOutResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
sealed abstract case class Describe(variant: Byte, name: String) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Describe.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Describe

Attributes

Companion
class
Source
Describe.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Describe.type
case object EmptyQueryResponse extends BackendMessage

Attributes

Source
EmptyQueryResponse.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
final case class ErrorResponse(info: Map[Char, String]) extends BackendMessage

Attributes

Companion
object
Source
ErrorResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ErrorResponse

Attributes

Companion
class
Source
ErrorResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class Execute(portal: String, maxRows: Int) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Execute.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Execute

Attributes

Companion
class
Source
Execute.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Execute.type
case object Flush extends ConstFrontendMessage

Attributes

Source
Flush.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
Flush.type
sealed trait FrontendMessage

Attributes

Source
FrontendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Bind
class Close
object CopyFail.type
object Flush.type
object Sync.type
object Terminate.type
class Describe
class Execute
class Parse
class Query
class SASLResponse
Show all
case object NoData extends BackendMessage

Attributes

Source
NoData.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
NoData.type
final case class NoticeResponse(info: Map[Char, String]) extends BackendMessage

Attributes

Companion
object
Source
NoticeResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
NoticeResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class NotificationResponse(value: Notification[String]) extends BackendMessage

Attributes

Companion
object
Source
NotificationResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
NotificationResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class ParameterDescription(oids: List[Int]) extends BackendMessage

Attributes

Companion
object
Source
ParameterDescription.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
ParameterDescription.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class ParameterStatus(name: String, value: String) extends BackendMessage

Attributes

Companion
object
Source
ParameterStatus.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
ParameterStatus.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class Parse(name: String, sql: String, types: List[Int]) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Parse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Parse

Attributes

Companion
class
Source
Parse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Parse.type
case object ParseComplete extends BackendMessage

Attributes

Source
ParseComplete.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
abstract case class PasswordMessage extends TaggedFrontendMessage

Attributes

Companion
object
Source
PasswordMessage.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
PasswordMessage.scala
Supertypes
class Object
trait Matchable
class Any
Self type
case object PortalSuspended extends BackendMessage

Attributes

Source
PortalSuspended.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
case class Query(sql: String) extends TaggedFrontendMessage

Attributes

Companion
object
Source
Query.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Query

Attributes

Companion
class
Source
Query.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Query.type
case class ReadyForQuery(status: TransactionStatus) extends BackendMessage

Attributes

Companion
object
Source
ReadyForQuery.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ReadyForQuery

Attributes

Companion
class
Source
ReadyForQuery.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class RowData(fields: List[Option[String]]) extends BackendMessage

Attributes

Companion
object
Source
RowData.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object RowData

Attributes

Companion
class
Source
RowData.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
RowData.type
case class RowDescription(fields: List[Field]) extends BackendMessage

Attributes

Companion
object
Source
RowDescription.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
RowDescription.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class SASLInitialResponse(mechanism: String, initialResponse: ByteVector) extends TaggedFrontendMessage

Initial response from client to server in a SASL authentication.

Initial response from client to server in a SASL authentication. The supplied mechanism is one of the advertised mechanisms from the AuthenticationSASL message.

Value parameters

initialResponse

Mechanism specific response message.

mechanism

Names of selected SASL authentication mechanism.

Attributes

Companion
object
Source
SASLInitialResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
SASLInitialResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class SASLResponse(response: ByteVector) extends TaggedFrontendMessage

Non-initial response from client to server in a SASL authentication.

Non-initial response from client to server in a SASL authentication.

Value parameters

response

Mechanism specific response message.

Attributes

Companion
object
Source
SASLResponse.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object SASLResponse

Attributes

Companion
class
Source
SASLResponse.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class StartupMessage(user: String, database: String, parameters: Map[String, String]) extends UntaggedFrontendMessage

Attributes

Companion
object
Source
StartupMessage.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
StartupMessage.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case object Sync extends ConstFrontendMessage

Attributes

Source
Sync.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
Sync.type
abstract class TaggedFrontendMessage(tag: Byte) extends FrontendMessage

Attributes

Source
FrontendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Bind
class Close
object CopyFail.type
object Flush.type
object Sync.type
object Terminate.type
class Describe
class Execute
class Parse
class Query
class SASLResponse
Show all
case object Terminate extends ConstFrontendMessage

Attributes

Source
Terminate.scala
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Self type
Terminate.type
final case class UnknownMessage(tag: Byte, data: ByteVector) extends BackendMessage

Default interpretation of a backend message if the tag is unknown to Skunk.

Default interpretation of a backend message if the tag is unknown to Skunk.

Attributes

Companion
object
Source
UnknownMessage.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
UnknownMessage.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
abstract class UntaggedFrontendMessage extends FrontendMessage

Attributes

Source
FrontendMessage.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Value members

Concrete fields

Attributes

Source
package.scala
val utf8z: Codec[String]

Attributes

Source
package.scala

Implicits

Implicits

final implicit def CodecOps[A](self: Codec[A]): CodecOps[A]

Attributes

Source
package.scala
implicit def attemptSemigroup[A : Semigroup]: Semigroup[Attempt[A]]

Attributes

Source
package.scala