I forgot some files

This commit is contained in:
Olivier Tremblay 2018-05-02 09:45:01 -04:00
parent 9aa31ec22c
commit 22a1ba56e5
No known key found for this signature in database
GPG key ID: D1C73ACB855E3A6D
3 changed files with 100 additions and 0 deletions

36
cmd/jkl/assign.go Normal file
View file

@ -0,0 +1,36 @@
package main
import (
"errors"
"flag"
"otremblay.com/jkl"
)
type AssignCmd struct {
args []string
assignee string
issueKey string
}
func NewAssignCmd(args []string) (*AssignCmd, error) {
ccmd := &AssignCmd{}
f := flag.NewFlagSet("assign", flag.ExitOnError)
f.Parse(args)
if len(f.Args()) < 2 {
return nil, ErrAssignNotEnoughArgs
}
ccmd.issueKey = f.Arg(0)
ccmd.assignee = f.Arg(1)
return ccmd, nil
}
var ErrAssignNotEnoughArgs = errors.New("Not enough arguments, need issue key + assignee")
func (ccmd *AssignCmd) Assign() error {
return jkl.Assign(ccmd.issueKey, ccmd.assignee)
}
func (ccmd *AssignCmd) Run() error {
return ccmd.Assign()
}

34
cmd/jkl/flag.go Normal file
View file

@ -0,0 +1,34 @@
package main
import (
"errors"
"flag"
"otremblay.com/jkl"
)
type FlagCmd struct {
args []string
flg bool
}
func NewFlagCmd(args []string, flg bool) (*FlagCmd, error) {
ccmd := &FlagCmd{flg: flg}
f := flag.NewFlagSet("flag", flag.ExitOnError)
f.Parse(args)
if len(f.Args()) < 1 {
return nil, ErrFlagNotEnoughArgs
}
ccmd.args = f.Args()
return ccmd, nil
}
var ErrFlagNotEnoughArgs = errors.New("Not enough arguments, need at least one issue key")
func (ccmd *FlagCmd) Flag() error {
return jkl.FlagIssue(ccmd.args, ccmd.flg)
}
func (ccmd *FlagCmd) Run() error {
return ccmd.Flag()
}

30
cmd/jkl/link.go Normal file
View file

@ -0,0 +1,30 @@
package main
import (
"errors"
"flag"
"otremblay.com/jkl"
)
type LinkCmd struct {
args []string
}
func NewLinkCmd(args []string) (*LinkCmd, error) {
ccmd := &LinkCmd{}
f := flag.NewFlagSet("Link", flag.ExitOnError)
f.Parse(args)
ccmd.args = f.Args()
return ccmd, nil
}
var ErrLinkNotEnoughArgs = errors.New("Not enough arguments, need at least two issue keys and a reason")
func (ccmd *LinkCmd) Link() error {
return jkl.LinkIssue(ccmd.args)
}
func (ccmd *LinkCmd) Run() error {
return ccmd.Link()
}