groupservice

package
v0.0.0-...-0973f41 Latest Latest
Warning

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

Go to latest
Published: Nov 12, 2024 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddGroupMemberParams

type AddGroupMemberParams struct {
	// GroupID is the ID of the group where a user should be added
	GroupID string
	// BadgeNumber is the registration number of a user
	BadgeNumber int64
	// Nickname is the nickname of a registered user that should receive
	// an invitation Email.
	Nickname string
	// Code is the invite code that can be used to join a group.
	Code string
	// Force is an admin only flag that allows to bypass the
	// validations.
	Force bool
}

AddGroupMemberParams is the request type for the AddMemberToGroup operation.

See OpenAPI spec for more details.

type RemoveGroupMemberParams

type RemoveGroupMemberParams struct {
	// GroupID is the ID of the group where a user should be added
	GroupID string
	// BadgeNumber is the registration number of a user
	BadgeNumber int64
	// AutoDeny future invitations (effectively creates or removes a ban)
	AutoDeny bool
}

RemoveGroupMemberParams is the request type for the RemoveMemberFromGroup operation.

See OpenAPI spec for more details.

type Service

type Service interface {
	GetGroupByID(ctx context.Context, groupID string) (*modelsv1.Group, error)
	CreateGroup(ctx context.Context, group *modelsv1.GroupCreate) (string, error)
	UpdateGroup(ctx context.Context, group *modelsv1.Group) error
	DeleteGroup(ctx context.Context, groupID string) error
	// AddMemberToGroup adds the member to the group.
	//
	// Returns a possibly empty url extension to be appended to the Location for accepting an invitation,
	// if applicable. Unless empty, the url extension is something like "?code=<join code>".
	//
	// The same link will also be included in the email sent to the invited attendee.
	AddMemberToGroup(ctx context.Context, req *AddGroupMemberParams) (string, error)
	RemoveMemberFromGroup(ctx context.Context, req *RemoveGroupMemberParams) error
	FindGroups(ctx context.Context, minSize uint, maxSize int, memberIDs []int64, public bool) ([]*modelsv1.Group, error)
	FindMyGroup(ctx context.Context) (*modelsv1.Group, error)
}

Service defines the interface for the service function implementations for the group endpoints.

Jump to

Keyboard shortcuts

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