Merge pull request #22 from mikepea/library_break_out

Expose key functionality for library consumption
This commit is contained in:
coryb
2015-12-31 12:22:09 -08:00
4 changed files with 22 additions and 7 deletions
+15 -1
View File
@@ -19,7 +19,7 @@ import (
) )
var ( var (
log = logging.MustGetLogger("jira") log = logging.MustGetLogger("jira")
VERSION string VERSION string
) )
@@ -177,6 +177,10 @@ func (c *Cli) makeRequest(req *http.Request) (resp *http.Response, err error) {
return resp, nil return resp, nil
} }
func (c *Cli) GetTemplate(name string) string {
return c.getTemplate(name)
}
func (c *Cli) getTemplate(name string) string { func (c *Cli) getTemplate(name string) string {
if override, ok := c.opts["template"].(string); ok { if override, ok := c.opts["template"].(string); ok {
if _, err := os.Stat(override); err == nil { if _, err := os.Stat(override); err == nil {
@@ -364,6 +368,16 @@ func (c *Cli) SaveData(data interface{}) error {
return nil return nil
} }
func (c *Cli) ViewIssue(issue string) (interface{}, error) {
uri := fmt.Sprintf("%s/rest/api/2/issue/%s", c.endpoint, issue)
data, err := responseToJson(c.get(uri))
if err != nil {
return nil, err
} else {
return data, nil
}
}
func (c *Cli) FindIssues() (interface{}, error) { func (c *Cli) FindIssues() (interface{}, error) {
var query string var query string
var ok bool var ok bool
+1 -3
View File
@@ -80,12 +80,10 @@ func (c *Cli) CmdList() error {
func (c *Cli) CmdView(issue string) error { func (c *Cli) CmdView(issue string) error {
log.Debug("view called") log.Debug("view called")
c.Browse(issue) c.Browse(issue)
uri := fmt.Sprintf("%s/rest/api/2/issue/%s", c.endpoint, issue) data, err := c.ViewIssue(issue)
data, err := responseToJson(c.get(uri))
if err != nil { if err != nil {
return err return err
} }
return runTemplate(c.getTemplate("view"), data, nil) return runTemplate(c.getTemplate("view"), data, nil)
} }
+2 -2
View File
@@ -14,8 +14,8 @@ import (
) )
var ( var (
log = logging.MustGetLogger("jira") log = logging.MustGetLogger("jira")
format = "%{color}%{time:2006-01-02T15:04:05.000Z07:00} %{level:-5s} [%{shortfile}]%{color:reset} %{message}" format = "%{color}%{time:2006-01-02T15:04:05.000Z07:00} %{level:-5s} [%{shortfile}]%{color:reset} %{message}"
) )
func main() { func main() {
+4 -1
View File
@@ -109,8 +109,11 @@ func dateFormat(format string, content string) (string, error) {
} }
} }
func runTemplate(templateContent string, data interface{}, out io.Writer) error { func RunTemplate(templateContent string, data interface{}, out io.Writer) error {
return runTemplate(templateContent, data, out)
}
func runTemplate(templateContent string, data interface{}, out io.Writer) error {
if out == nil { if out == nil {
out = os.Stdout out = os.Stdout
} }