tcp

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Apr 14, 2026 License: Apache-2.0 Imports: 15 Imported by: 4

Documentation

Index

Constants

View Source
const (
	RequestInitialBytesLength  = 4
	ResponseInitialBytesLength = 8
	MaxStringLength            = 255
	MaxPartitionCount          = 1000
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AutoLogin

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

func NewAutoLogin

func NewAutoLogin(credentials Credentials) AutoLogin

type Credentials

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

func NewPersonalAccessTokenCredentials

func NewPersonalAccessTokenCredentials(token string) Credentials

func NewUsernamePasswordCredentials

func NewUsernamePasswordCredentials(username, password string) Credentials

type IggyTcpClient

type IggyTcpClient struct {
	MessageCompression iggcon.IggyMessageCompression
	// contains filtered or unexported fields
}

func NewIggyTcpClient

func NewIggyTcpClient(options ...Option) (*IggyTcpClient, error)

NewIggyTcpClient creates a new Iggy TCP client with the given options. warning: don't use this function directly, use iggycli.NewIggyClient with iggycli.WithTcp instead.

func (*IggyTcpClient) ChangePassword

func (c *IggyTcpClient) ChangePassword(userID iggcon.Identifier, currentPassword string, newPassword string) error

func (*IggyTcpClient) Close

func (c *IggyTcpClient) Close() error

func (*IggyTcpClient) CreateConsumerGroup

func (c *IggyTcpClient) CreateConsumerGroup(streamId iggcon.Identifier, topicId iggcon.Identifier, name string) (*iggcon.ConsumerGroupDetails, error)

func (*IggyTcpClient) CreatePartitions

func (c *IggyTcpClient) CreatePartitions(streamId iggcon.Identifier, topicId iggcon.Identifier, partitionsCount uint32) error

func (*IggyTcpClient) CreatePersonalAccessToken

func (c *IggyTcpClient) CreatePersonalAccessToken(name string, expiry uint32) (*iggcon.RawPersonalAccessToken, error)

func (*IggyTcpClient) CreateStream

func (c *IggyTcpClient) CreateStream(name string) (*iggcon.StreamDetails, error)

func (*IggyTcpClient) CreateTopic

func (c *IggyTcpClient) CreateTopic(
	streamId iggcon.Identifier,
	name string,
	partitionsCount uint32,
	compressionAlgorithm iggcon.CompressionAlgorithm,
	messageExpiry iggcon.Duration,
	maxTopicSize uint64,
	replicationFactor *uint8,
) (*iggcon.TopicDetails, error)

func (*IggyTcpClient) CreateUser

func (c *IggyTcpClient) CreateUser(username string, password string, status iggcon.UserStatus, permissions *iggcon.Permissions) (*iggcon.UserInfoDetails, error)

func (*IggyTcpClient) DeleteConsumerGroup

func (c *IggyTcpClient) DeleteConsumerGroup(streamId iggcon.Identifier, topicId iggcon.Identifier, groupId iggcon.Identifier) error

func (*IggyTcpClient) DeleteConsumerOffset

func (c *IggyTcpClient) DeleteConsumerOffset(consumer iggcon.Consumer, streamId iggcon.Identifier, topicId iggcon.Identifier, partitionId *uint32) error

func (*IggyTcpClient) DeletePartitions

func (c *IggyTcpClient) DeletePartitions(streamId iggcon.Identifier, topicId iggcon.Identifier, partitionsCount uint32) error

func (*IggyTcpClient) DeletePersonalAccessToken

func (c *IggyTcpClient) DeletePersonalAccessToken(name string) error

func (*IggyTcpClient) DeleteStream

func (c *IggyTcpClient) DeleteStream(id iggcon.Identifier) error

func (*IggyTcpClient) DeleteTopic

func (c *IggyTcpClient) DeleteTopic(streamId, topicId iggcon.Identifier) error

func (*IggyTcpClient) DeleteUser

func (c *IggyTcpClient) DeleteUser(identifier iggcon.Identifier) error

func (*IggyTcpClient) GetClient

func (c *IggyTcpClient) GetClient(clientId uint32) (*iggcon.ClientInfoDetails, error)

func (*IggyTcpClient) GetClients

func (c *IggyTcpClient) GetClients() ([]iggcon.ClientInfo, error)

func (*IggyTcpClient) GetClusterMetadata

func (c *IggyTcpClient) GetClusterMetadata() (*iggcon.ClusterMetadata, error)

func (*IggyTcpClient) GetConnectionInfo

func (c *IggyTcpClient) GetConnectionInfo() *iggcon.ConnectionInfo

func (*IggyTcpClient) GetConsumerGroup

func (c *IggyTcpClient) GetConsumerGroup(streamId, topicId, groupId iggcon.Identifier) (*iggcon.ConsumerGroupDetails, error)

func (*IggyTcpClient) GetConsumerGroups

func (c *IggyTcpClient) GetConsumerGroups(streamId, topicId iggcon.Identifier) ([]iggcon.ConsumerGroup, error)

func (*IggyTcpClient) GetConsumerOffset

func (c *IggyTcpClient) GetConsumerOffset(consumer iggcon.Consumer, streamId iggcon.Identifier, topicId iggcon.Identifier, partitionId *uint32) (*iggcon.ConsumerOffsetInfo, error)

func (*IggyTcpClient) GetPersonalAccessTokens

func (c *IggyTcpClient) GetPersonalAccessTokens() ([]iggcon.PersonalAccessTokenInfo, error)

func (*IggyTcpClient) GetStats

func (c *IggyTcpClient) GetStats() (*iggcon.Stats, error)

func (*IggyTcpClient) GetStream

func (c *IggyTcpClient) GetStream(streamId iggcon.Identifier) (*iggcon.StreamDetails, error)

func (*IggyTcpClient) GetStreams

func (c *IggyTcpClient) GetStreams() ([]iggcon.Stream, error)

func (*IggyTcpClient) GetTopic

func (c *IggyTcpClient) GetTopic(streamId iggcon.Identifier, topicId iggcon.Identifier) (*iggcon.TopicDetails, error)

func (*IggyTcpClient) GetTopics

func (c *IggyTcpClient) GetTopics(streamId iggcon.Identifier) ([]iggcon.Topic, error)

func (*IggyTcpClient) GetUser

func (c *IggyTcpClient) GetUser(identifier iggcon.Identifier) (*iggcon.UserInfoDetails, error)

func (*IggyTcpClient) GetUsers

func (c *IggyTcpClient) GetUsers() ([]iggcon.UserInfo, error)

func (*IggyTcpClient) HandleLeaderRedirection

func (c *IggyTcpClient) HandleLeaderRedirection() (bool, error)

func (*IggyTcpClient) JoinConsumerGroup

func (c *IggyTcpClient) JoinConsumerGroup(streamId iggcon.Identifier, topicId iggcon.Identifier, groupId iggcon.Identifier) error

func (*IggyTcpClient) LeaveConsumerGroup

func (c *IggyTcpClient) LeaveConsumerGroup(streamId iggcon.Identifier, topicId iggcon.Identifier, groupId iggcon.Identifier) error

func (*IggyTcpClient) LoginUser

func (c *IggyTcpClient) LoginUser(username string, password string) (*iggcon.IdentityInfo, error)

func (*IggyTcpClient) LoginWithPersonalAccessToken

func (c *IggyTcpClient) LoginWithPersonalAccessToken(token string) (*iggcon.IdentityInfo, error)

func (*IggyTcpClient) LogoutUser

func (c *IggyTcpClient) LogoutUser() error

func (*IggyTcpClient) Ping

func (c *IggyTcpClient) Ping() error

func (*IggyTcpClient) PollMessages

func (c *IggyTcpClient) PollMessages(
	streamId iggcon.Identifier,
	topicId iggcon.Identifier,
	consumer iggcon.Consumer,
	strategy iggcon.PollingStrategy,
	count uint32,
	autoCommit bool,
	partitionId *uint32,
) (*iggcon.PolledMessage, error)

func (*IggyTcpClient) SendMessages

func (c *IggyTcpClient) SendMessages(
	streamId iggcon.Identifier,
	topicId iggcon.Identifier,
	partitioning iggcon.Partitioning,
	messages []iggcon.IggyMessage,
) error

func (*IggyTcpClient) StoreConsumerOffset

func (c *IggyTcpClient) StoreConsumerOffset(consumer iggcon.Consumer, streamId iggcon.Identifier, topicId iggcon.Identifier, offset uint64, partitionId *uint32) error

func (*IggyTcpClient) UpdatePermissions

func (c *IggyTcpClient) UpdatePermissions(userID iggcon.Identifier, permissions *iggcon.Permissions) error

func (*IggyTcpClient) UpdateStream

func (c *IggyTcpClient) UpdateStream(streamId iggcon.Identifier, name string) error

func (*IggyTcpClient) UpdateTopic

func (c *IggyTcpClient) UpdateTopic(
	streamId iggcon.Identifier,
	topicId iggcon.Identifier,
	name string,
	compressionAlgorithm iggcon.CompressionAlgorithm,
	messageExpiry iggcon.Duration,
	maxTopicSize uint64,
	replicationFactor *uint8,
) error

func (*IggyTcpClient) UpdateUser

func (c *IggyTcpClient) UpdateUser(userID iggcon.Identifier, username *string, status *iggcon.UserStatus) error

type Option

type Option func(config *Options)

func WithServerAddress

func WithServerAddress(address string) Option

WithServerAddress Sets the server address for the TCP client.

func WithTLS added in v0.8.0

func WithTLS(tlsOpts ...TLSOption) Option

WithTLS enables TLS for the TCP client and applies the given TLS options.

type Options

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

func GetDefaultOptions

func GetDefaultOptions() Options

type TLSOption added in v0.8.0

type TLSOption func(cfg *tlsConfig)

TLSOption is a functional option for configuring TLS settings.

func WithTLSCAFile added in v0.8.0

func WithTLSCAFile(path string) TLSOption

WithTLSCAFile sets the path to the CA certificate file for TLS verification.

func WithTLSDomain added in v0.8.0

func WithTLSDomain(domain string) TLSOption

WithTLSDomain sets the TLS domain for server name indication (SNI). If not provided, the domain will be automatically extracted from the server address.

func WithTLSValidateCertificate added in v0.8.0

func WithTLSValidateCertificate(validate bool) TLSOption

WithTLSValidateCertificate enables or disables TLS certificate validation.

Jump to

Keyboard shortcuts

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