2018-07-12 22:31:41 +03:00
|
|
|
package operations
|
|
|
|
|
2018-07-18 01:16:06 +03:00
|
|
|
import (
|
|
|
|
"github.com/MichaelMure/git-bug/bug"
|
|
|
|
)
|
|
|
|
|
|
|
|
// SetTitleOperation will change the title of a bug
|
2018-07-12 22:31:41 +03:00
|
|
|
|
2018-07-13 17:13:40 +03:00
|
|
|
var _ bug.Operation = SetTitleOperation{}
|
2018-07-12 22:31:41 +03:00
|
|
|
|
|
|
|
type SetTitleOperation struct {
|
2018-07-13 22:21:24 +03:00
|
|
|
bug.OpBase
|
2018-07-15 00:03:43 +03:00
|
|
|
Title string
|
2018-07-12 22:31:41 +03:00
|
|
|
}
|
|
|
|
|
2018-07-25 22:25:26 +03:00
|
|
|
func (op SetTitleOperation) Apply(snapshot bug.Snapshot) bug.Snapshot {
|
|
|
|
snapshot.Title = op.Title
|
|
|
|
|
|
|
|
return snapshot
|
|
|
|
}
|
|
|
|
|
2018-07-18 01:16:06 +03:00
|
|
|
func NewSetTitleOp(author bug.Person, title string) SetTitleOperation {
|
2018-07-12 22:31:41 +03:00
|
|
|
return SetTitleOperation{
|
2018-07-18 01:16:06 +03:00
|
|
|
OpBase: bug.NewOpBase(bug.SetTitleOp, author),
|
2018-07-13 22:21:24 +03:00
|
|
|
Title: title,
|
2018-07-12 22:31:41 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-07-25 22:25:26 +03:00
|
|
|
// Convenience function to apply the operation
|
2018-07-25 19:01:32 +03:00
|
|
|
func SetTitle(b *bug.Bug, author bug.Person, title string) {
|
|
|
|
setTitleOp := NewSetTitleOp(author, title)
|
|
|
|
b.Append(setTitleOp)
|
|
|
|
}
|