Class: KuberKit::Core::ServiceStore

Inherits:
Object
  • Object
show all
Defined in:
lib/kuber_kit/core/service_store.rb

Instance Method Summary collapse

Instance Method Details

#add_definition(service_definition) ⇒ Object



15
16
17
# File 'lib/kuber_kit/core/service_store.rb', line 15

def add_definition(service_definition)
  definitions_store.add(service_definition.service_name, service_definition)
end

#all_definitionsObject



52
53
54
# File 'lib/kuber_kit/core/service_store.rb', line 52

def all_definitions
  definitions_store.items
end

#countObject



48
49
50
# File 'lib/kuber_kit/core/service_store.rb', line 48

def count
  definitions_store.size
end

#define(service_name) ⇒ Object



9
10
11
12
13
# File 'lib/kuber_kit/core/service_store.rb', line 9

def define(service_name)
  definition = service_definition_factory.create(service_name)
  add_definition(definition)
  definition
end

#exists?(service_name) ⇒ Boolean

Returns:

  • (Boolean)


56
57
58
# File 'lib/kuber_kit/core/service_store.rb', line 56

def exists?(service_name)
  definitions_store.exists?(service_name)
end

#get_definition(service_name) ⇒ Object



20
21
22
# File 'lib/kuber_kit/core/service_store.rb', line 20

def get_definition(service_name)
  definitions_store.get(service_name)
end

#get_service(service_name) ⇒ Object



25
26
27
28
29
# File 'lib/kuber_kit/core/service_store.rb', line 25

def get_service(service_name)
  definition = get_definition(service_name)

  service_factory.create(definition)
end

#load_definition(file_path) ⇒ Object



40
41
42
# File 'lib/kuber_kit/core/service_store.rb', line 40

def load_definition(file_path)
  require(file_path)
end

#load_definitions(dir_path) ⇒ Object



31
32
33
34
35
36
37
38
# File 'lib/kuber_kit/core/service_store.rb', line 31

def load_definitions(dir_path)
  files = local_shell.recursive_list_files(dir_path, name: "*.rb").each do |path|
    load_definition(path)
  end
rescue KuberKit::Shell::AbstractShell::DirNotFoundError
  ui.print_warning("ServiceStore", "Directory with services not found: #{dir_path}")
  []
end

#reset!Object



44
45
46
# File 'lib/kuber_kit/core/service_store.rb', line 44

def reset!
  definitions_store.reset!
end