Class: Docker_Sync::WatchStrategy::Unison

Inherits:
Object
  • Object
show all
Includes:
Execution
Defined in:
lib/docker-sync/watch_strategy/unison.rb

Instance Method Summary collapse

Methods included from Execution

#forkexec, #threadexec

Constructor Details

#initialize(sync_name, options) ⇒ Unison

Returns a new instance of Unison.



14
15
16
17
18
19
20
21
22
23
# File 'lib/docker-sync/watch_strategy/unison.rb', line 14

def initialize(sync_name, options)
  @options = options
  @sync_name = sync_name
  @watch_fork = nil
  # instantiate the sync task to easily access all common parameters between
  # unison sync and watch
  # basically unison watch is the command with the additionnal -repeat watch option
  # note: this doesn't run a sync
  @unison = Docker_Sync::SyncStrategy::Unison.new(@sync_name, @options)
end

Instance Method Details

#cleanObject



34
35
# File 'lib/docker-sync/watch_strategy/unison.rb', line 34

def clean
end

#runObject



25
26
27
# File 'lib/docker-sync/watch_strategy/unison.rb', line 25

def run
  @watch_fork = @unison.watch
end

#stopObject



29
30
31
32
# File 'lib/docker-sync/watch_strategy/unison.rb', line 29

def stop
  Process.kill 'TERM', @watch_fork
  Process.wait @watch_fork
end

#watchObject



37
38
# File 'lib/docker-sync/watch_strategy/unison.rb', line 37

def watch
end

#watch_forkObject



43
44
45
# File 'lib/docker-sync/watch_strategy/unison.rb', line 43

def watch_fork
  return @watch_fork
end

#watch_optionsObject



40
41
# File 'lib/docker-sync/watch_strategy/unison.rb', line 40

def watch_options
end

#watch_threadObject



47
48
49
# File 'lib/docker-sync/watch_strategy/unison.rb', line 47

def watch_thread
  return nil
end