Documentation
¶
Index ¶
- func ConvertToDBProjectBase(project *projsvc.ProjectBase) (*models.ProjectBase, error)
- func ConvertToDBProjectSettings(settings *projsvc.ProjectSettings) (*models.ProjectSettings, error)
- func ConvertToProjectFull(base *models.ProjectBase, settings *models.ProjectSettings) *projsvc.ProjectFull
- func ConvertToServiceProjectBase(p *models.ProjectBase) *projsvc.ProjectBase
- func ConvertToServiceProjectSettings(s *models.ProjectSettings) *projsvc.ProjectSettings
- type ProjectsService
- func (s *ProjectsService) CreateProject(ctx context.Context, payload *projsvc.CreateProjectPayload) (*projsvc.ProjectFull, error)
- func (s *ProjectsService) DeleteProject(ctx context.Context, payload *projsvc.DeleteProjectPayload) error
- func (s *ProjectsService) GetOneProjectBase(ctx context.Context, payload *projsvc.GetOneProjectBasePayload) (*projsvc.GetOneProjectBaseResult, error)
- func (s *ProjectsService) GetOneProjectSettings(ctx context.Context, payload *projsvc.GetOneProjectSettingsPayload) (*projsvc.GetOneProjectSettingsResult, error)
- func (s *ProjectsService) GetProjects(ctx context.Context) ([]*projsvc.ProjectFull, error)
- func (s *ProjectsService) HandleMessage(ctx context.Context, msg domain.Message)
- func (s *ProjectsService) HandleProjectGetLogo(ctx context.Context, msg domain.Message) ([]byte, error)
- func (s *ProjectsService) HandleProjectGetName(ctx context.Context, msg domain.Message) ([]byte, error)
- func (s *ProjectsService) HandleProjectGetSlug(ctx context.Context, msg domain.Message) ([]byte, error)
- func (s *ProjectsService) HandleProjectSlugToUID(ctx context.Context, msg domain.Message) ([]byte, error)
- func (s *ProjectsService) ServiceReady() bool
- func (s *ProjectsService) UpdateProjectBase(ctx context.Context, payload *projsvc.UpdateProjectBasePayload) (*projsvc.ProjectBase, error)
- func (s *ProjectsService) UpdateProjectSettings(ctx context.Context, payload *projsvc.UpdateProjectSettingsPayload) (*projsvc.ProjectSettings, error)
- type ServiceConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertToDBProjectBase ¶ added in v0.4.1
func ConvertToDBProjectBase(project *projsvc.ProjectBase) (*models.ProjectBase, error)
ConvertToDBProjectBase converts a project service project to a project database representation.
func ConvertToDBProjectSettings ¶ added in v0.4.1
func ConvertToDBProjectSettings(settings *projsvc.ProjectSettings) (*models.ProjectSettings, error)
ConvertToDBProjectSettings converts a project settings service representation to a database representation.
func ConvertToProjectFull ¶ added in v0.4.1
func ConvertToProjectFull(base *models.ProjectBase, settings *models.ProjectSettings) *projsvc.ProjectFull
ConvertToProjectFull merges ProjectBase and ProjectSettings into ProjectFull
func ConvertToServiceProjectBase ¶ added in v0.4.1
func ConvertToServiceProjectBase(p *models.ProjectBase) *projsvc.ProjectBase
ConvertToServiceProjectBase converts a project database representation to a project service project.
func ConvertToServiceProjectSettings ¶ added in v0.4.1
func ConvertToServiceProjectSettings(s *models.ProjectSettings) *projsvc.ProjectSettings
ConvertToServiceProjectSettings converts a project settings database representation to a service representation.
Types ¶
type ProjectsService ¶
type ProjectsService struct {
ProjectRepository domain.ProjectRepository
MessageBuilder domain.MessageBuilder
Auth domain.Authenticator
Config ServiceConfig
}
ProjectsService implements the projsvc.Service interface and domain.MessageHandler
func NewProjectsService ¶
func NewProjectsService(auth domain.Authenticator, config ServiceConfig) *ProjectsService
NewProjectsService creates a new ProjectsService.
func (*ProjectsService) CreateProject ¶
func (s *ProjectsService) CreateProject(ctx context.Context, payload *projsvc.CreateProjectPayload) (*projsvc.ProjectFull, error)
CreateProject creates a new project
func (*ProjectsService) DeleteProject ¶
func (s *ProjectsService) DeleteProject(ctx context.Context, payload *projsvc.DeleteProjectPayload) error
Delete a project.
func (*ProjectsService) GetOneProjectBase ¶
func (s *ProjectsService) GetOneProjectBase(ctx context.Context, payload *projsvc.GetOneProjectBasePayload) (*projsvc.GetOneProjectBaseResult, error)
func (*ProjectsService) GetOneProjectSettings ¶
func (s *ProjectsService) GetOneProjectSettings(ctx context.Context, payload *projsvc.GetOneProjectSettingsPayload) (*projsvc.GetOneProjectSettingsResult, error)
Get a single project's settings information.
func (*ProjectsService) GetProjects ¶
func (s *ProjectsService) GetProjects(ctx context.Context) ([]*projsvc.ProjectFull, error)
GetProjects fetches all projects
func (*ProjectsService) HandleMessage ¶
func (s *ProjectsService) HandleMessage(ctx context.Context, msg domain.Message)
HandleMessage implements domain.MessageHandler interface
func (*ProjectsService) HandleProjectGetLogo ¶ added in v0.4.4
func (s *ProjectsService) HandleProjectGetLogo(ctx context.Context, msg domain.Message) ([]byte, error)
HandleProjectGetLogo is the message handler for the project-get-logo subject.
func (*ProjectsService) HandleProjectGetName ¶
func (s *ProjectsService) HandleProjectGetName(ctx context.Context, msg domain.Message) ([]byte, error)
HandleProjectGetName is the message handler for the project-get-name subject.
func (*ProjectsService) HandleProjectGetSlug ¶ added in v0.3.0
func (s *ProjectsService) HandleProjectGetSlug(ctx context.Context, msg domain.Message) ([]byte, error)
HandleProjectGetSlug is the message handler for the project-get-slug subject.
func (*ProjectsService) HandleProjectSlugToUID ¶
func (s *ProjectsService) HandleProjectSlugToUID(ctx context.Context, msg domain.Message) ([]byte, error)
HandleProjectSlugToUID is the message handler for the project-slug-to-uid subject.
func (*ProjectsService) ServiceReady ¶
func (s *ProjectsService) ServiceReady() bool
ServiceReady checks if the service is ready for use.
func (*ProjectsService) UpdateProjectBase ¶
func (s *ProjectsService) UpdateProjectBase(ctx context.Context, payload *projsvc.UpdateProjectBasePayload) (*projsvc.ProjectBase, error)
Update a project's base information.
func (*ProjectsService) UpdateProjectSettings ¶
func (s *ProjectsService) UpdateProjectSettings(ctx context.Context, payload *projsvc.UpdateProjectSettingsPayload) (*projsvc.ProjectSettings, error)
Update a project's settings.
type ServiceConfig ¶
type ServiceConfig struct {
// SkipEtagValidation is a flag to skip the Etag validation - only meant for local development.
SkipEtagValidation bool
}
ServiceConfig is the configuration for the ProjectsService.