Documentation ¶
Index ¶
- type BaseManager
- func (bm *BaseManager) Exists(labelID int64) (*models.Label, error)
- func (bm *BaseManager) GetLabelsOfResource(resourceType string, resourceIDOrName interface{}) ([]*models.Label, error)
- func (bm *BaseManager) MarkLabelToResource(label *models.ResourceLabel) (int64, error)
- func (bm *BaseManager) RemoveLabelFromResource(resourceType string, resourceIDOrName interface{}, labelID int64) error
- func (bm *BaseManager) Validate(labelID int64, projectID int64) (*models.Label, error)
- type ErrLabelBadRequest
- type ErrLabelBase
- type ErrLabelConflict
- type ErrLabelNotFound
- type Manager
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BaseManager ¶
type BaseManager struct{}
BaseManager is the default implementation of the Manager interface.
func (*BaseManager) Exists ¶
func (bm *BaseManager) Exists(labelID int64) (*models.Label, error)
Exists is the implementation of same method in Manager interface.
func (*BaseManager) GetLabelsOfResource ¶
func (bm *BaseManager) GetLabelsOfResource(resourceType string, resourceIDOrName interface{}) ([]*models.Label, error)
GetLabelsOfResource is the implementation of same method in Manager interface.
func (*BaseManager) MarkLabelToResource ¶
func (bm *BaseManager) MarkLabelToResource(label *models.ResourceLabel) (int64, error)
MarkLabelToResource is the implementation of same method in Manager interface.
func (*BaseManager) RemoveLabelFromResource ¶
func (bm *BaseManager) RemoveLabelFromResource(resourceType string, resourceIDOrName interface{}, labelID int64) error
RemoveLabelFromResource is the implementation of same method in Manager interface.
type ErrLabelBadRequest ¶
type ErrLabelBadRequest struct {
Message string
}
ErrLabelBadRequest defines the error of bad request to the resource.
func NewErrLabelBadRequest ¶
func NewErrLabelBadRequest(message string) *ErrLabelBadRequest
NewErrLabelBadRequest builds an error with ErrLabelBadRequest type.
func (*ErrLabelBadRequest) Error ¶
func (br *ErrLabelBadRequest) Error() string
Error returns the error message of ErrLabelBadRequest.
type ErrLabelBase ¶
ErrLabelBase contains the basic required info for building the final errors.
type ErrLabelConflict ¶
type ErrLabelConflict struct {
ErrLabelBase
}
ErrLabelConflict defines the error of label conflicts on the resource.
func NewErrLabelConflict ¶
func NewErrLabelConflict(labelID int64, resourceType string, resourceIDOrName interface{}) *ErrLabelConflict
NewErrLabelConflict builds an error with NewErrLabelConflict type.
func (*ErrLabelConflict) Error ¶
func (cl *ErrLabelConflict) Error() string
Error returns the error message of ErrLabelConflict.
type ErrLabelNotFound ¶
type ErrLabelNotFound struct {
ErrLabelBase
}
ErrLabelNotFound defines the error of not found label on the resource or the specified label is not found.
func NewErrLabelNotFound ¶
func NewErrLabelNotFound(labelID int64, resourceType string, resourceIDOrName interface{}) *ErrLabelNotFound
NewErrLabelNotFound builds an error with ErrLabelNotFound type
func (*ErrLabelNotFound) Error ¶
func (nf *ErrLabelNotFound) Error() string
Error returns the error message of ErrLabelNotFound.
type Manager ¶
type Manager interface { // Mark label to the resource. // // If succeed, the relationship ID will be returned. // Otherwise, an non-nil error will be returned. MarkLabelToResource(label *models.ResourceLabel) (int64, error) // Remove the label from the resource. // Resource type and ID(/name) should be provided to identify the relationship. // // An non-nil error will be got if meet any issues or nil error returned. RemoveLabelFromResource(resourceType string, resourceIDOrName interface{}, labelID int64) error // Get labels for the specified resource. // Resource is identified by the resource type and ID(/name). // // If succeed, a label list is returned. // Otherwise, a non-nil error will be returned. GetLabelsOfResource(resourceType string, resourceIDOrName interface{}) ([]*models.Label, error) // Check the existence of the specified label. // // If label existing, a non-nil label object is returned and nil error is set. // A non-nil error will be set if any issues met while checking or label is not found. Exists(labelID int64) (*models.Label, error) // Validate if the scope of the input label is correct. // If the scope is project level, the projectID is required then. // // If everything is ok, an validated label reference will be returned. // Otherwise, a non-nil error is returned. Validate(labelID int64, projectID int64) (*models.Label, error) }
Manager defines the related operations for label management