package pkg import ( "regexp" "github.rackspace.com/gorax/tools/util" ) type ( GlobalRules struct { Rule *GlobalRule `json:"global-rules"` } GlobalRule struct { Enforced string `json:"enforced-policy,omitempty"` Staged string `json:"staged-policy,omitempty"` Desc string `json:"description,omitempty"` } ) func (g *GlobalRules) Parse(s string) { v := regexp.MustCompile(`(?i)security\s+firewall\s+global-rules\s+{((.|\n)*?)}`).FindStringSubmatch(s) g.Rule = &GlobalRule{ Enforced: util.RegexpString(regexp.MustCompile(`(?i)enforced-policy\s+(\S+)`), v[1]), Staged: util.RegexpString(regexp.MustCompile(`(?i)staged-policy\s+(\S+)`), v[1]), Desc: util.RegexpString(regexp.MustCompile(`(?i)description\s+\"(.*)\"`), v[1]), } }