def initialize(ref, from, to, options = {})
@ref = ref
@from = from
@to = to
@options = options
@token = options[:token] || config["flowdock.token"] || raise(TokenError.new("Flowdock API token not found"))
@commit_url = options[:commit_url] || config["flowdock.commit-url-pattern"] || nil
@diff_url = options[:diff_url] || config["flowdock.diff-url-pattern"] || nil
@repo_url = options[:repo_url] || config["flowdock.repository-url"] || nil
@repo_name = options[:repo_name] || config["flowdock.repository-name"] || nil
@permanent_refs = options[:permanent_refs] ||
(config["flowdock.permanent-references"] || "refs/heads/master")
.split(",")
.map(&:strip)
.map {|exp| Regexp.new(exp) }
end