user

package
v0.17.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 21, 2025 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const MessagesPathPrefix = "/twirp/elephant.user.Messages/"

MessagesPathPrefix is a convenience constant that may identify URL paths. Should be used with caution, it only matches routes generated by Twirp Go clients, with the default "/twirp" prefix and default CamelCase service and method names. More info: https://twitchtv.github.io/twirp/docs/routing.html

Variables

View Source
var File_user_service_proto protoreflect.FileDescriptor

Functions

func WriteError

func WriteError(resp http.ResponseWriter, err error)

WriteError writes an HTTP response with a valid Twirp error format (code, msg, meta). Useful outside of the Twirp server (e.g. http middleware), but does not trigger hooks. If err is not a twirp.Error, it will get wrapped with twirp.InternalErrorWith(err)

Types

type DeleteInboxMessageRequest

type DeleteInboxMessageRequest struct {

	// ID of the message.
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteInboxMessageRequest) Descriptor deprecated

func (*DeleteInboxMessageRequest) Descriptor() ([]byte, []int)

Deprecated: Use DeleteInboxMessageRequest.ProtoReflect.Descriptor instead.

func (*DeleteInboxMessageRequest) GetId

func (x *DeleteInboxMessageRequest) GetId() int64

func (*DeleteInboxMessageRequest) ProtoMessage

func (*DeleteInboxMessageRequest) ProtoMessage()

func (*DeleteInboxMessageRequest) ProtoReflect

func (*DeleteInboxMessageRequest) Reset

func (x *DeleteInboxMessageRequest) Reset()

func (*DeleteInboxMessageRequest) String

func (x *DeleteInboxMessageRequest) String() string

type DeleteInboxMessageResponse

type DeleteInboxMessageResponse struct {
	// contains filtered or unexported fields
}

func (*DeleteInboxMessageResponse) Descriptor deprecated

func (*DeleteInboxMessageResponse) Descriptor() ([]byte, []int)

Deprecated: Use DeleteInboxMessageResponse.ProtoReflect.Descriptor instead.

func (*DeleteInboxMessageResponse) ProtoMessage

func (*DeleteInboxMessageResponse) ProtoMessage()

func (*DeleteInboxMessageResponse) ProtoReflect

func (*DeleteInboxMessageResponse) Reset

func (x *DeleteInboxMessageResponse) Reset()

func (*DeleteInboxMessageResponse) String

func (x *DeleteInboxMessageResponse) String() string

type HTTPClient

type HTTPClient interface {
	Do(req *http.Request) (*http.Response, error)
}

HTTPClient is the interface used by generated clients to send HTTP requests. It is fulfilled by *(net/http).Client, which is sufficient for most users. Users can provide their own implementation for special retry policies.

HTTPClient implementations should not follow redirects. Redirects are automatically disabled if *(net/http).Client is passed to client constructors. See the withoutRedirects function in this file for more details.

type InboxMessage

type InboxMessage struct {

	// Recipient of the message (user sub).
	Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"`
	// ID of the message.
	Id int64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
	// Created timestamp is the RFC3339 timestamp
	// for when the message was created.
	Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created,omitempty"`
	// Creator of the message (application sub).
	CreatedBy string `protobuf:"bytes,4,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
	// Updated timestamp is the RFC3339 timestamp
	// for when the message was last updated.
	Updated string `protobuf:"bytes,5,opt,name=updated,proto3" json:"updated,omitempty"`
	// Indicates whether the message has been read.
	IsRead bool `protobuf:"varint,6,opt,name=is_read,json=isRead,proto3" json:"is_read,omitempty"`
	// Payload containing a newsdoc document.
	Payload *newsdoc.Document `protobuf:"bytes,7,opt,name=payload,proto3" json:"payload,omitempty"`
	// contains filtered or unexported fields
}

func (*InboxMessage) Descriptor deprecated

func (*InboxMessage) Descriptor() ([]byte, []int)

Deprecated: Use InboxMessage.ProtoReflect.Descriptor instead.

func (*InboxMessage) GetCreated

func (x *InboxMessage) GetCreated() string

func (*InboxMessage) GetCreatedBy

func (x *InboxMessage) GetCreatedBy() string

func (*InboxMessage) GetId

func (x *InboxMessage) GetId() int64

func (*InboxMessage) GetIsRead

func (x *InboxMessage) GetIsRead() bool

func (*InboxMessage) GetPayload

func (x *InboxMessage) GetPayload() *newsdoc.Document

func (*InboxMessage) GetRecipient

func (x *InboxMessage) GetRecipient() string

func (*InboxMessage) GetUpdated

func (x *InboxMessage) GetUpdated() string

func (*InboxMessage) ProtoMessage

func (*InboxMessage) ProtoMessage()

func (*InboxMessage) ProtoReflect

func (x *InboxMessage) ProtoReflect() protoreflect.Message

func (*InboxMessage) Reset

func (x *InboxMessage) Reset()

func (*InboxMessage) String

func (x *InboxMessage) String() string

type ListInboxMessagesRequest

type ListInboxMessagesRequest struct {

	// ID of the message before which to list messages.
	BeforeId int64 `protobuf:"varint,1,opt,name=before_id,json=beforeId,proto3" json:"before_id,omitempty"`
	// Number of messages to include in the results (defaults to 10).
	Size int64 `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
	// contains filtered or unexported fields
}

func (*ListInboxMessagesRequest) Descriptor deprecated

func (*ListInboxMessagesRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListInboxMessagesRequest.ProtoReflect.Descriptor instead.

func (*ListInboxMessagesRequest) GetBeforeId

func (x *ListInboxMessagesRequest) GetBeforeId() int64

func (*ListInboxMessagesRequest) GetSize

func (x *ListInboxMessagesRequest) GetSize() int64

func (*ListInboxMessagesRequest) ProtoMessage

func (*ListInboxMessagesRequest) ProtoMessage()

func (*ListInboxMessagesRequest) ProtoReflect

func (x *ListInboxMessagesRequest) ProtoReflect() protoreflect.Message

func (*ListInboxMessagesRequest) Reset

func (x *ListInboxMessagesRequest) Reset()

func (*ListInboxMessagesRequest) String

func (x *ListInboxMessagesRequest) String() string

type ListInboxMessagesResponse

type ListInboxMessagesResponse struct {
	Messages []*InboxMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

func (*ListInboxMessagesResponse) Descriptor deprecated

func (*ListInboxMessagesResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListInboxMessagesResponse.ProtoReflect.Descriptor instead.

func (*ListInboxMessagesResponse) GetMessages

func (x *ListInboxMessagesResponse) GetMessages() []*InboxMessage

func (*ListInboxMessagesResponse) ProtoMessage

func (*ListInboxMessagesResponse) ProtoMessage()

func (*ListInboxMessagesResponse) ProtoReflect

func (*ListInboxMessagesResponse) Reset

func (x *ListInboxMessagesResponse) Reset()

func (*ListInboxMessagesResponse) String

func (x *ListInboxMessagesResponse) String() string

type Message

type Message struct {

	// ID of the message.
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// Type of message being sent (e.g. "validation_error").
	Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
	// Created timestamp is the RFC3339 timestamp
	// for when the message was created.
	Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created,omitempty"`
	// Creator of the message (application sub).
	CreatedBy string `protobuf:"bytes,4,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
	// Recipient of the message (user sub).
	Recipient string `protobuf:"bytes,5,opt,name=recipient,proto3" json:"recipient,omitempty"`
	// UUID of the associated document, optional.
	DocUuid string `protobuf:"bytes,6,opt,name=doc_uuid,json=docUuid,proto3" json:"doc_uuid,omitempty"`
	// Type of the associated document, optional.
	DocType string `protobuf:"bytes,7,opt,name=doc_type,json=docType,proto3" json:"doc_type,omitempty"`
	// Payload containing a key-value map.
	Payload map[string]string `` /* 141-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*Message) Descriptor deprecated

func (*Message) Descriptor() ([]byte, []int)

Deprecated: Use Message.ProtoReflect.Descriptor instead.

func (*Message) GetCreated

func (x *Message) GetCreated() string

func (*Message) GetCreatedBy

func (x *Message) GetCreatedBy() string

func (*Message) GetDocType

func (x *Message) GetDocType() string

func (*Message) GetDocUuid

func (x *Message) GetDocUuid() string

func (*Message) GetId

func (x *Message) GetId() int64

func (*Message) GetPayload

func (x *Message) GetPayload() map[string]string

func (*Message) GetRecipient

func (x *Message) GetRecipient() string

func (*Message) GetType

func (x *Message) GetType() string

func (*Message) ProtoMessage

func (*Message) ProtoMessage()

func (*Message) ProtoReflect

func (x *Message) ProtoReflect() protoreflect.Message

func (*Message) Reset

func (x *Message) Reset()

func (*Message) String

func (x *Message) String() string

type Messages

type Messages interface {
	// Pushes a new message to a recipient.
	PushMessage(context.Context, *PushMessageRequest) (*PushMessageResponse, error)

	// Pushes a new inbox message to a recipient.
	PushInboxMessage(context.Context, *PushInboxMessageRequest) (*PushInboxMessageResponse, error)

	// Polls for new messages for a recipient.
	PollMessages(context.Context, *PollMessagesRequest) (*PollMessagesResponse, error)

	// Polls for new inbox messages for a recipient.
	PollInboxMessages(context.Context, *PollInboxMessagesRequest) (*PollInboxMessagesResponse, error)

	// Lists all inbox messages for a recipient.
	ListInboxMessages(context.Context, *ListInboxMessagesRequest) (*ListInboxMessagesResponse, error)

	// Updates an existing inbox message.
	UpdateInboxMessage(context.Context, *UpdateInboxMessageRequest) (*UpdateInboxMessageResponse, error)

	// Deletes an inbox message.
	DeleteInboxMessage(context.Context, *DeleteInboxMessageRequest) (*DeleteInboxMessageResponse, error)
}

func NewMessagesJSONClient

func NewMessagesJSONClient(baseURL string, client HTTPClient, opts ...twirp.ClientOption) Messages

NewMessagesJSONClient creates a JSON client that implements the Messages interface. It communicates using JSON and can be configured with a custom HTTPClient.

func NewMessagesProtobufClient

func NewMessagesProtobufClient(baseURL string, client HTTPClient, opts ...twirp.ClientOption) Messages

NewMessagesProtobufClient creates a Protobuf client that implements the Messages interface. It communicates using Protobuf and can be configured with a custom HTTPClient.

type PollInboxMessagesRequest

type PollInboxMessagesRequest struct {

	// ID of the message after which to start returning messages.
	AfterId int64 `protobuf:"varint,1,opt,name=after_id,json=afterId,proto3" json:"after_id,omitempty"`
	// contains filtered or unexported fields
}

func (*PollInboxMessagesRequest) Descriptor deprecated

func (*PollInboxMessagesRequest) Descriptor() ([]byte, []int)

Deprecated: Use PollInboxMessagesRequest.ProtoReflect.Descriptor instead.

func (*PollInboxMessagesRequest) GetAfterId

func (x *PollInboxMessagesRequest) GetAfterId() int64

func (*PollInboxMessagesRequest) ProtoMessage

func (*PollInboxMessagesRequest) ProtoMessage()

func (*PollInboxMessagesRequest) ProtoReflect

func (x *PollInboxMessagesRequest) ProtoReflect() protoreflect.Message

func (*PollInboxMessagesRequest) Reset

func (x *PollInboxMessagesRequest) Reset()

func (*PollInboxMessagesRequest) String

func (x *PollInboxMessagesRequest) String() string

type PollInboxMessagesResponse

type PollInboxMessagesResponse struct {
	Messages []*InboxMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

func (*PollInboxMessagesResponse) Descriptor deprecated

func (*PollInboxMessagesResponse) Descriptor() ([]byte, []int)

Deprecated: Use PollInboxMessagesResponse.ProtoReflect.Descriptor instead.

func (*PollInboxMessagesResponse) GetMessages

func (x *PollInboxMessagesResponse) GetMessages() []*InboxMessage

func (*PollInboxMessagesResponse) ProtoMessage

func (*PollInboxMessagesResponse) ProtoMessage()

func (*PollInboxMessagesResponse) ProtoReflect

func (*PollInboxMessagesResponse) Reset

func (x *PollInboxMessagesResponse) Reset()

func (*PollInboxMessagesResponse) String

func (x *PollInboxMessagesResponse) String() string

type PollMessagesRequest

type PollMessagesRequest struct {

	// ID of the message after which to start returning messages.
	AfterId int64 `protobuf:"varint,1,opt,name=after_id,json=afterId,proto3" json:"after_id,omitempty"`
	// contains filtered or unexported fields
}

func (*PollMessagesRequest) Descriptor deprecated

func (*PollMessagesRequest) Descriptor() ([]byte, []int)

Deprecated: Use PollMessagesRequest.ProtoReflect.Descriptor instead.

func (*PollMessagesRequest) GetAfterId

func (x *PollMessagesRequest) GetAfterId() int64

func (*PollMessagesRequest) ProtoMessage

func (*PollMessagesRequest) ProtoMessage()

func (*PollMessagesRequest) ProtoReflect

func (x *PollMessagesRequest) ProtoReflect() protoreflect.Message

func (*PollMessagesRequest) Reset

func (x *PollMessagesRequest) Reset()

func (*PollMessagesRequest) String

func (x *PollMessagesRequest) String() string

type PollMessagesResponse

type PollMessagesResponse struct {
	Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// contains filtered or unexported fields
}

func (*PollMessagesResponse) Descriptor deprecated

func (*PollMessagesResponse) Descriptor() ([]byte, []int)

Deprecated: Use PollMessagesResponse.ProtoReflect.Descriptor instead.

func (*PollMessagesResponse) GetMessages

func (x *PollMessagesResponse) GetMessages() []*Message

func (*PollMessagesResponse) ProtoMessage

func (*PollMessagesResponse) ProtoMessage()

func (*PollMessagesResponse) ProtoReflect

func (x *PollMessagesResponse) ProtoReflect() protoreflect.Message

func (*PollMessagesResponse) Reset

func (x *PollMessagesResponse) Reset()

func (*PollMessagesResponse) String

func (x *PollMessagesResponse) String() string

type PushInboxMessageRequest

type PushInboxMessageRequest struct {

	// Recipient of the message (user sub).
	Recipient string `protobuf:"bytes,1,opt,name=recipient,proto3" json:"recipient,omitempty"`
	// Payload containing a newsdoc document.
	Payload *newsdoc.Document `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
	// contains filtered or unexported fields
}

func (*PushInboxMessageRequest) Descriptor deprecated

func (*PushInboxMessageRequest) Descriptor() ([]byte, []int)

Deprecated: Use PushInboxMessageRequest.ProtoReflect.Descriptor instead.

func (*PushInboxMessageRequest) GetPayload

func (x *PushInboxMessageRequest) GetPayload() *newsdoc.Document

func (*PushInboxMessageRequest) GetRecipient

func (x *PushInboxMessageRequest) GetRecipient() string

func (*PushInboxMessageRequest) ProtoMessage

func (*PushInboxMessageRequest) ProtoMessage()

func (*PushInboxMessageRequest) ProtoReflect

func (x *PushInboxMessageRequest) ProtoReflect() protoreflect.Message

func (*PushInboxMessageRequest) Reset

func (x *PushInboxMessageRequest) Reset()

func (*PushInboxMessageRequest) String

func (x *PushInboxMessageRequest) String() string

type PushInboxMessageResponse

type PushInboxMessageResponse struct {
	// contains filtered or unexported fields
}

func (*PushInboxMessageResponse) Descriptor deprecated

func (*PushInboxMessageResponse) Descriptor() ([]byte, []int)

Deprecated: Use PushInboxMessageResponse.ProtoReflect.Descriptor instead.

func (*PushInboxMessageResponse) ProtoMessage

func (*PushInboxMessageResponse) ProtoMessage()

func (*PushInboxMessageResponse) ProtoReflect

func (x *PushInboxMessageResponse) ProtoReflect() protoreflect.Message

func (*PushInboxMessageResponse) Reset

func (x *PushInboxMessageResponse) Reset()

func (*PushInboxMessageResponse) String

func (x *PushInboxMessageResponse) String() string

type PushMessageRequest

type PushMessageRequest struct {

	// Type of message being sent (e.g. "validation_error").
	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	// Recipient of the message (user sub).
	Recipient string `protobuf:"bytes,2,opt,name=recipient,proto3" json:"recipient,omitempty"`
	// UUID of the associated document, optional.
	DocUuid string `protobuf:"bytes,3,opt,name=doc_uuid,json=docUuid,proto3" json:"doc_uuid,omitempty"`
	// Type of the associated document, optional.
	DocType string `protobuf:"bytes,4,opt,name=doc_type,json=docType,proto3" json:"doc_type,omitempty"`
	// Payload containing a key-value map.
	Payload map[string]string `` /* 141-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*PushMessageRequest) Descriptor deprecated

func (*PushMessageRequest) Descriptor() ([]byte, []int)

Deprecated: Use PushMessageRequest.ProtoReflect.Descriptor instead.

func (*PushMessageRequest) GetDocType

func (x *PushMessageRequest) GetDocType() string

func (*PushMessageRequest) GetDocUuid

func (x *PushMessageRequest) GetDocUuid() string

func (*PushMessageRequest) GetPayload

func (x *PushMessageRequest) GetPayload() map[string]string

func (*PushMessageRequest) GetRecipient

func (x *PushMessageRequest) GetRecipient() string

func (*PushMessageRequest) GetType

func (x *PushMessageRequest) GetType() string

func (*PushMessageRequest) ProtoMessage

func (*PushMessageRequest) ProtoMessage()

func (*PushMessageRequest) ProtoReflect

func (x *PushMessageRequest) ProtoReflect() protoreflect.Message

func (*PushMessageRequest) Reset

func (x *PushMessageRequest) Reset()

func (*PushMessageRequest) String

func (x *PushMessageRequest) String() string

type PushMessageResponse

type PushMessageResponse struct {
	// contains filtered or unexported fields
}

func (*PushMessageResponse) Descriptor deprecated

func (*PushMessageResponse) Descriptor() ([]byte, []int)

Deprecated: Use PushMessageResponse.ProtoReflect.Descriptor instead.

func (*PushMessageResponse) ProtoMessage

func (*PushMessageResponse) ProtoMessage()

func (*PushMessageResponse) ProtoReflect

func (x *PushMessageResponse) ProtoReflect() protoreflect.Message

func (*PushMessageResponse) Reset

func (x *PushMessageResponse) Reset()

func (*PushMessageResponse) String

func (x *PushMessageResponse) String() string

type TwirpServer

type TwirpServer interface {
	http.Handler

	// ServiceDescriptor returns gzipped bytes describing the .proto file that
	// this service was generated from. Once unzipped, the bytes can be
	// unmarshalled as a
	// google.golang.org/protobuf/types/descriptorpb.FileDescriptorProto.
	//
	// The returned integer is the index of this particular service within that
	// FileDescriptorProto's 'Service' slice of ServiceDescriptorProtos. This is a
	// low-level field, expected to be used for reflection.
	ServiceDescriptor() ([]byte, int)

	// ProtocGenTwirpVersion is the semantic version string of the version of
	// twirp used to generate this file.
	ProtocGenTwirpVersion() string

	// PathPrefix returns the HTTP URL path prefix for all methods handled by this
	// service. This can be used with an HTTP mux to route Twirp requests.
	// The path prefix is in the form: "/<prefix>/<package>.<Service>/"
	// that is, everything in a Twirp route except for the <Method> at the end.
	PathPrefix() string
}

TwirpServer is the interface generated server structs will support: they're HTTP handlers with additional methods for accessing metadata about the service. Those accessors are a low-level API for building reflection tools. Most people can think of TwirpServers as just http.Handlers.

func NewMessagesServer

func NewMessagesServer(svc Messages, opts ...interface{}) TwirpServer

NewMessagesServer builds a TwirpServer that can be used as an http.Handler to handle HTTP requests that are routed to the right method in the provided svc implementation. The opts are twirp.ServerOption modifiers, for example twirp.WithServerHooks(hooks).

type UpdateInboxMessageRequest

type UpdateInboxMessageRequest struct {

	// ID of the message.
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// Sets the message's read status.
	IsRead bool `protobuf:"varint,2,opt,name=is_read,json=isRead,proto3" json:"is_read,omitempty"`
	// contains filtered or unexported fields
}

func (*UpdateInboxMessageRequest) Descriptor deprecated

func (*UpdateInboxMessageRequest) Descriptor() ([]byte, []int)

Deprecated: Use UpdateInboxMessageRequest.ProtoReflect.Descriptor instead.

func (*UpdateInboxMessageRequest) GetId

func (x *UpdateInboxMessageRequest) GetId() int64

func (*UpdateInboxMessageRequest) GetIsRead

func (x *UpdateInboxMessageRequest) GetIsRead() bool

func (*UpdateInboxMessageRequest) ProtoMessage

func (*UpdateInboxMessageRequest) ProtoMessage()

func (*UpdateInboxMessageRequest) ProtoReflect

func (*UpdateInboxMessageRequest) Reset

func (x *UpdateInboxMessageRequest) Reset()

func (*UpdateInboxMessageRequest) String

func (x *UpdateInboxMessageRequest) String() string

type UpdateInboxMessageResponse

type UpdateInboxMessageResponse struct {
	// contains filtered or unexported fields
}

func (*UpdateInboxMessageResponse) Descriptor deprecated

func (*UpdateInboxMessageResponse) Descriptor() ([]byte, []int)

Deprecated: Use UpdateInboxMessageResponse.ProtoReflect.Descriptor instead.

func (*UpdateInboxMessageResponse) ProtoMessage

func (*UpdateInboxMessageResponse) ProtoMessage()

func (*UpdateInboxMessageResponse) ProtoReflect

func (*UpdateInboxMessageResponse) Reset

func (x *UpdateInboxMessageResponse) Reset()

func (*UpdateInboxMessageResponse) String

func (x *UpdateInboxMessageResponse) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL