Sha256: 5c504d5b6a1a83b6803d25828db9502f370c3f9274e82da2729a54c8783acad8
Contents?: true
Size: 759 Bytes
Versions: 3
Compression:
Stored size: 759 Bytes
Contents
module Mercurial class HookFactory attr_reader :repository def initialize(repository) @repository = repository end def all [].tap do |returning| repository.config.find_header('hooks').each_pair do |name, value| returning << build(name, value) end end end def by_name(name) all.find do |h| h.name == name.to_s end end def add(name, value) build(name, value).tap do |hook| hook.save end end def remove(name) if hook = by_name(name) hook.destroy! end end protected def build(name, value) Mercurial::Hook.new(repository, name, value) end end end
Version data entries
3 entries across 3 versions & 1 rubygems