Class: Daemontools::Remover

Inherits:
Object
  • Object
show all
Defined in:
lib/daemontools/service_remover.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(roles, previous_builder, current_builder) ⇒ Remover

Returns a new instance of Remover.

Raises:

  • (ArgumentError)


5
6
7
8
9
10
11
12
13
# File 'lib/daemontools/service_remover.rb', line 5

def initialize(roles, previous_builder, current_builder)
  raise ArgumentError, "previous_builder couldn't be nil" if previous_builder.nil?
  raise ArgumentError, "current_builder couldn't be nil" if current_builder.nil?

  @roles = roles.split(',').map(&:to_sym)
  @previous_builder = previous_builder
  @current_builder = current_builder
  find_services_changes(@previous_builder.services, @current_builder.services)
end

Instance Attribute Details

#current_builderObject

Returns the value of attribute current_builder.



3
4
5
# File 'lib/daemontools/service_remover.rb', line 3

def current_builder
  @current_builder
end

#deleted_servicesObject

Returns the value of attribute deleted_services.



3
4
5
# File 'lib/daemontools/service_remover.rb', line 3

def deleted_services
  @deleted_services
end

#previous_builderObject

Returns the value of attribute previous_builder.



3
4
5
# File 'lib/daemontools/service_remover.rb', line 3

def previous_builder
  @previous_builder
end

Instance Method Details

#remove_unused_servicesObject



15
16
17
18
19
20
# File 'lib/daemontools/service_remover.rb', line 15

def remove_unused_services
  return if @deleted_services.empty?

  puts "Services for delete: #{@deleted_services.join(', ')}"
  @previous_builder.delete_services(@deleted_services)
end