Class: Nonnative::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/nonnative/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



5
6
7
8
9
# File 'lib/nonnative/configuration.rb', line 5

def initialize
  @processes = []
  @servers = []
  @services = []
end

Instance Attribute Details

#processesObject

Returns the value of attribute processes.



11
12
13
# File 'lib/nonnative/configuration.rb', line 11

def processes
  @processes
end

#serversObject

Returns the value of attribute servers.



11
12
13
# File 'lib/nonnative/configuration.rb', line 11

def servers
  @servers
end

#servicesObject

Returns the value of attribute services.



11
12
13
# File 'lib/nonnative/configuration.rb', line 11

def services
  @services
end

Instance Method Details

#load_file(path) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/nonnative/configuration.rb', line 13

def load_file(path)
  cfg = Nonnative.configurations(path)

  add_processes(cfg)
  add_servers(cfg)
  add_services(cfg)
end

#process {|process| ... } ⇒ Object

Yields:



21
22
23
24
25
26
# File 'lib/nonnative/configuration.rb', line 21

def process
  process = Nonnative::ConfigurationProcess.new
  yield process

  processes << process
end

#process_by_name(name) ⇒ Object

Raises:



42
43
44
45
46
47
# File 'lib/nonnative/configuration.rb', line 42

def process_by_name(name)
  process = processes.find { |s| s.name == name }
  raise NotFoundError, "Could not find process with name '#{name}'" if process.nil?

  process
end

#server {|server| ... } ⇒ Object

Yields:



28
29
30
31
32
33
# File 'lib/nonnative/configuration.rb', line 28

def server
  server = Nonnative::ConfigurationServer.new
  yield server

  servers << server
end

#service {|service| ... } ⇒ Object

Yields:



35
36
37
38
39
40
# File 'lib/nonnative/configuration.rb', line 35

def service
  service = Nonnative::ConfigurationService.new
  yield service

  services << service
end