c2s

package
v0.1.15 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2018 License: MPL-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Initialize

func Initialize(cfg *config.C2S)

Initialize initializes the c2s session manager.

func Shutdown

func Shutdown()

Shutdown shuts down c2s manager system. This method should be used only for testing purposes.

Types

type Manager

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

Manager manages the sessions associated with an account.

func Instance

func Instance() *Manager

Instance returns the c2s session manager instance.

func (*Manager) AuthenticateStream

func (m *Manager) AuthenticateStream(strm Stream) error

AuthenticateStream sets a previously registered stream as authenticated. An error will be returned in case no assigned resource is found.

func (*Manager) AvailableStreams

func (m *Manager) AvailableStreams(username string) []Stream

AvailableStreams returns every authenticated stream associated with an account.

func (*Manager) DefaultLocalDomain

func (m *Manager) DefaultLocalDomain() string

DefaultLocalDomain returns default local domain.

func (*Manager) IsLocalDomain

func (m *Manager) IsLocalDomain(domain string) bool

IsLocalDomain returns true if domain is a local server domain.

func (*Manager) RegisterStream

func (m *Manager) RegisterStream(strm Stream) error

RegisterStream registers the specified client stream. An error will be returned in case the stream has been previously registered.

func (*Manager) UnregisterStream

func (m *Manager) UnregisterStream(strm Stream) error

UnregisterStream unregisters the specified client stream removing associated resource from the manager. An error will be returned in case the stream has not been previously registered.

type MockStream

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

MockStream represents a mocked c2s stream.

func NewMockStream

func NewMockStream(id string, jid *xml.JID) *MockStream

NewMockStream returns a new mocked stream instance.

func (*MockStream) Disconnect

func (m *MockStream) Disconnect(err error)

Disconnect disconnects mocked stream.

func (*MockStream) Domain

func (m *MockStream) Domain() string

Domain returns current mocked stream domain.

func (*MockStream) FetchElement

func (m *MockStream) FetchElement() xml.Element

FetchElement waits until a new XML element is sent to the mocked stream and returns it.

func (*MockStream) ID

func (m *MockStream) ID() string

ID returns mocked stream identifier.

func (*MockStream) IsAuthenticated

func (m *MockStream) IsAuthenticated() bool

IsAuthenticated returns whether or not the mocked stream has successfully authenticated.

func (*MockStream) IsCompressed

func (m *MockStream) IsCompressed() bool

IsCompressed returns whether or not the mocked stream has enabled a compression method.

func (*MockStream) IsDisconnected

func (m *MockStream) IsDisconnected() bool

IsDisconnected returns whether or not the mocked stream has been disconnected.

func (*MockStream) IsRosterRequested

func (m *MockStream) IsRosterRequested() bool

IsRosterRequested returns whether or not user's roster has been requested.

func (*MockStream) IsSecured

func (m *MockStream) IsSecured() bool

IsSecured returns whether or not the mocked stream has been secured.

func (*MockStream) JID

func (m *MockStream) JID() *xml.JID

JID returns current user JID.

func (*MockStream) PresenceElements

func (m *MockStream) PresenceElements() []xml.Element

PresenceElements returns last available sent presence sub elements.

func (*MockStream) Priority

func (m *MockStream) Priority() int8

Priority returns current presence priority.

func (*MockStream) Resource

func (m *MockStream) Resource() string

Resource returns current mocked stream resource.

func (*MockStream) SendElement

func (m *MockStream) SendElement(element xml.Element)

SendElement sends the given XML element.

func (*MockStream) SetAuthenticated

func (m *MockStream) SetAuthenticated(authenticated bool)

SetAuthenticated sets whether or not the a mocked stream has been authenticated.

func (*MockStream) SetCompressed

func (m *MockStream) SetCompressed(compressed bool)

SetCompressed sets whether or not the a mocked stream has been compressed.

func (*MockStream) SetDomain

func (m *MockStream) SetDomain(domain string)

SetDomain sets the mocked stream domain value.

func (*MockStream) SetID

func (m *MockStream) SetID(id string)

SetID sets mocked stream identifier.

func (*MockStream) SetJID

func (m *MockStream) SetJID(jid *xml.JID)

SetJID sets the mocked stream JID value.

func (*MockStream) SetPresenceElements

func (m *MockStream) SetPresenceElements(presenceElements []xml.Element)

SetPresenceElements sets the mocked stream last received presence elements.

func (*MockStream) SetPriority

func (m *MockStream) SetPriority(priority int8)

SetPriority sets mocked stream priority.

func (*MockStream) SetResource

func (m *MockStream) SetResource(resource string)

SetResource sets the mocked stream resource value.

func (*MockStream) SetRosterRequested

func (m *MockStream) SetRosterRequested(rosterRequested bool)

SetRosterRequested sets whether or not the a mocked stream roster has been requested.

func (*MockStream) SetSecured

func (m *MockStream) SetSecured(secured bool)

SetSecured sets whether or not the a mocked stream has been secured.

func (*MockStream) SetUsername

func (m *MockStream) SetUsername(username string)

SetUsername sets the mocked stream username value.

func (*MockStream) Username

func (m *MockStream) Username() string

Username returns current mocked stream username.

func (*MockStream) WaitDisconnection

func (m *MockStream) WaitDisconnection() error

WaitDisconnection waits until the mocked stream disconnects.

type Stream

type Stream interface {
	ID() string

	Username() string
	Domain() string
	Resource() string

	JID() *xml.JID

	Priority() int8

	SendElement(element xml.Element)
	Disconnect(err error)

	IsSecured() bool
	IsAuthenticated() bool
	IsCompressed() bool

	PresenceElements() []xml.Element

	IsRosterRequested() bool
}

Stream represents a client-to-server XMPP stream.

Jump to

Keyboard shortcuts

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