Documentation
¶
Overview ¶
Package port is a package that defines the ports for the application layer.
Index ¶
- type AdminUsecase
- type AgentGroupManageUsecase
- type AgentManageUsecase
- type AgentPackageManageUsecase
- type AgentRemoteConfigManageUsecase
- type CertificateManageUsecase
- type NamespaceManageUsecase
- type OpAMPUsecase
- type PermissionManageUsecase
- type RBACManageUsecase
- type RoleBindingManageUsecase
- type RoleManageUsecase
- type UserManageUsecase
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdminUsecase ¶
type AdminUsecase interface {
ListConnections(ctx context.Context, namespace string,
options *model.ListOptions) (*model.ListResponse[*agentmodel.Connection], error)
}
AdminUsecase is a use case that handles admin operations.
type AgentGroupManageUsecase ¶ added in v0.1.18
type AgentGroupManageUsecase interface {
GetAgentGroup(ctx context.Context, namespace string, name string,
options *model.GetOptions) (*v1.AgentGroup, error)
ListAgentGroups(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.AgentGroup], error)
ListAgentsByAgentGroup(
ctx context.Context,
namespace string,
agentGroupName string,
options *model.ListOptions,
) (*v1.ListResponse[v1.Agent], error)
CreateAgentGroup(ctx context.Context, agentGroup *v1.AgentGroup) (*v1.AgentGroup, error)
UpdateAgentGroup(ctx context.Context, namespace string, name string,
agentGroup *v1.AgentGroup) (*v1.AgentGroup, error)
DeleteAgentGroup(ctx context.Context, namespace string, name string) error
}
AgentGroupManageUsecase is a use case that handles agent group management operations.
type AgentManageUsecase ¶ added in v0.1.0
type AgentManageUsecase interface {
GetAgent(ctx context.Context, namespace string, instanceUID uuid.UUID) (*v1.Agent, error)
ListAgents(ctx context.Context, namespace string,
options *model.ListOptions) (*v1.ListResponse[v1.Agent], error)
SearchAgents(ctx context.Context, namespace string, query string,
options *model.ListOptions) (*v1.ListResponse[v1.Agent], error)
UpdateAgent(ctx context.Context, namespace string, instanceUID uuid.UUID,
agent *v1.Agent) (*v1.Agent, error)
}
AgentManageUsecase is a use case that handles agent management operations.
type AgentPackageManageUsecase ¶ added in v0.1.28
type AgentPackageManageUsecase interface {
GetAgentPackage(ctx context.Context, namespace string, name string) (*v1.AgentPackage, error)
ListAgentPackages(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.AgentPackage], error)
CreateAgentPackage(ctx context.Context, agentPackage *v1.AgentPackage) (*v1.AgentPackage, error)
UpdateAgentPackage(ctx context.Context, namespace string, name string,
agentPackage *v1.AgentPackage) (*v1.AgentPackage, error)
DeleteAgentPackage(ctx context.Context, namespace string, name string) error
}
AgentPackageManageUsecase is a use case that handles agent package operations.
type AgentRemoteConfigManageUsecase ¶ added in v0.1.35
type AgentRemoteConfigManageUsecase interface {
GetAgentRemoteConfig(ctx context.Context, namespace string,
name string) (*v1.AgentRemoteConfig, error)
ListAgentRemoteConfigs(ctx context.Context,
options *model.ListOptions) (*v1.ListResponse[v1.AgentRemoteConfig], error)
CreateAgentRemoteConfig(ctx context.Context,
agentRemoteConfig *v1.AgentRemoteConfig) (*v1.AgentRemoteConfig, error)
UpdateAgentRemoteConfig(ctx context.Context, namespace string, name string,
agentRemoteConfig *v1.AgentRemoteConfig) (*v1.AgentRemoteConfig, error)
DeleteAgentRemoteConfig(ctx context.Context, namespace string, name string) error
}
AgentRemoteConfigManageUsecase is a use case that handles agent remote config management operations.
type CertificateManageUsecase ¶ added in v0.1.28
type CertificateManageUsecase interface {
GetCertificate(ctx context.Context, namespace string, name string) (*v1.Certificate, error)
ListCertificates(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.Certificate], error)
CreateCertificate(ctx context.Context, certificate *v1.Certificate) (*v1.Certificate, error)
UpdateCertificate(ctx context.Context, namespace string, name string,
certificate *v1.Certificate) (*v1.Certificate, error)
DeleteCertificate(ctx context.Context, namespace string, name string) error
}
CertificateManageUsecase is a use case that handles certificate management operations.
type NamespaceManageUsecase ¶ added in v0.1.35
type NamespaceManageUsecase interface {
GetNamespace(ctx context.Context, name string) (*v1.Namespace, error)
ListNamespaces(ctx context.Context,
options *model.ListOptions) (*v1.ListResponse[v1.Namespace], error)
CreateNamespace(ctx context.Context,
namespace *v1.Namespace) (*v1.Namespace, error)
UpdateNamespace(ctx context.Context, name string,
namespace *v1.Namespace) (*v1.Namespace, error)
DeleteNamespace(ctx context.Context, name string) error
}
NamespaceManageUsecase is a use case that handles namespace management operations.
type OpAMPUsecase ¶
type OpAMPUsecase interface {
OnConnected(ctx context.Context, conn opamptypes.Connection)
OnConnectedWithType(ctx context.Context, conn opamptypes.Connection, isWebSocket bool)
OnMessage(ctx context.Context, conn opamptypes.Connection, message *protobufs.AgentToServer) *protobufs.ServerToAgent
OnConnectionClose(conn opamptypes.Connection)
OnReadMessageError(conn opamptypes.Connection, mt int, msgByte []byte, err error)
OnMessageResponseError(conn opamptypes.Connection, message *protobufs.ServerToAgent, err error)
}
OpAMPUsecase is a use case that handles OpAMP protocol operations. Please see github.com/open-telemetry/opamp-go/server/types/ConnectionCallbacks.
type PermissionManageUsecase ¶ added in v0.1.35
type PermissionManageUsecase interface {
GetPermission(ctx context.Context, uid uuid.UUID) (*v1.Permission, error)
ListPermissions(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.Permission], error)
}
PermissionManageUsecase is a use case that handles permission management operations.
type RBACManageUsecase ¶ added in v0.1.35
type RBACManageUsecase interface {
CheckPermission(ctx context.Context, req *v1.CheckPermissionRequest) (*v1.CheckPermissionResponse, error)
GetUserRoles(ctx context.Context, userID uuid.UUID) (*v1.ListResponse[v1.Role], error)
GetUserPermissions(ctx context.Context, userID uuid.UUID) (*v1.ListResponse[v1.Permission], error)
SyncPolicies(ctx context.Context) error
}
RBACManageUsecase is a use case that handles RBAC management operations.
type RoleBindingManageUsecase ¶ added in v0.1.35
type RoleBindingManageUsecase interface {
GetRoleBinding(ctx context.Context, namespace, name string) (*v1.RoleBinding, error)
ListRoleBindings(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.RoleBinding], error)
CreateRoleBinding(ctx context.Context, rb *v1.RoleBinding) (*v1.RoleBinding, error)
UpdateRoleBinding(ctx context.Context, namespace, name string, rb *v1.RoleBinding) (*v1.RoleBinding, error)
DeleteRoleBinding(ctx context.Context, namespace, name string) error
}
RoleBindingManageUsecase is a use case that handles RoleBinding management operations.
type RoleManageUsecase ¶ added in v0.1.35
type RoleManageUsecase interface {
GetRole(ctx context.Context, uid uuid.UUID) (*v1.Role, error)
ListRoles(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.Role], error)
CreateRole(ctx context.Context, role *v1.Role) (*v1.Role, error)
UpdateRole(ctx context.Context, uid uuid.UUID, role *v1.Role) (*v1.Role, error)
DeleteRole(ctx context.Context, uid uuid.UUID) error
}
RoleManageUsecase is a use case that handles role management operations.
type UserManageUsecase ¶ added in v0.1.35
type UserManageUsecase interface {
GetUser(ctx context.Context, uid uuid.UUID) (*v1.User, error)
GetUserByEmail(ctx context.Context, email string) (*v1.User, error)
ListUsers(ctx context.Context, options *model.ListOptions) (*v1.ListResponse[v1.User], error)
CreateUser(ctx context.Context, user *v1.User) (*v1.User, error)
DeleteUser(ctx context.Context, uid uuid.UUID) error
GetUserProfile(ctx context.Context, email string) (*v1.UserProfileResponse, error)
}
UserManageUsecase is a use case that handles user management operations.