Documentation
¶
Overview ¶
Package repository implements different repository services required by the project service
Package repository implements different repository services required by the project service
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateProjectRequest ¶
CreateProjectRequest contains the request to create a new project
type CreateProjectResponse ¶
CreateProjectResponse contains the result of creating a new project
type DeleteProjectRequest ¶
DeleteProjectRequest contains the request to delete an existing project
type DeleteProjectResponse ¶
type DeleteProjectResponse struct {
}
DeleteProjectResponse contains the result of deleting an existing project
type ReadProjectRequest ¶
ReadProjectRequest contains the request to read an existing project
type ReadProjectResponse ¶
ReadProjectResponse contains the result of reading an existing project
type RepositoryContract ¶
type RepositoryContract interface {
// CreateProject creates a new project.
// ctx: Mandatory The reference to the context
// request: Mandatory. The request to create a new project
// Returns either the result of creating new project or error if something goes wrong.
CreateProject(
ctx context.Context,
request *CreateProjectRequest) (*CreateProjectResponse, error)
// ReadProject read an existing project
// ctx: Mandatory The reference to the context
// request: Mandatory. The request to read an esiting project
// Returns either the result of reading an existing project or error if something goes wrong.
ReadProject(
ctx context.Context,
request *ReadProjectRequest) (*ReadProjectResponse, error)
// UpdateProject update an existing project
// ctx: Mandatory The reference to the context
// request: Mandatory. The request to update an esiting project
// Returns either the result of updateing an existing project or error if something goes wrong.
UpdateProject(
ctx context.Context,
request *UpdateProjectRequest) (*UpdateProjectResponse, error)
// DeleteProject delete an existing project
// ctx: Mandatory The reference to the context
// request: Mandatory. The request to delete an esiting project
// Returns either the result of deleting an existing project or error if something goes wrong.
DeleteProject(
ctx context.Context,
request *DeleteProjectRequest) (*DeleteProjectResponse, error)
// Search returns the list of projects that matched the criteria
// ctx: Mandatory The reference to the context
// request: Mandatory. The request contains the search criteria
// Returns the list of projects that matched the criteria
Search(
ctx context.Context,
request *SearchRequest) (*SearchResponse, error)
}
RepositoryContract declares the repository service that can create new project, read, update and delete existing projects.
type SearchRequest ¶
type SearchRequest struct {
UserEmail string
Pagination common.Pagination
SortingOptions []common.SortingOptionPair
ProjectIDs []string
}
SearchRequest contains the filter criteria to look for existing projects
type SearchResponse ¶
type SearchResponse struct {
HasPreviousPage bool
HasNextPage bool
TotalCount int64
Projects []models.ProjectWithCursor
}
SearchResponse contains the list of the projects that matched the result
type UpdateProjectRequest ¶
UpdateProjectRequest contains the request to update an existing project
type UpdateProjectResponse ¶
UpdateProjectResponse contains the result of updating an existing project