Class: Y2Packager::Service

Inherits:
Object
  • Object
show all
Includes:
Yast::Logger
Defined in:
library/packages/src/lib/y2packager/service.rb

Overview

This class represents a libzypp service.

Since:

  • 4.2.60

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(service_alias:, auto_refresh: nil, enabled: nil, file: nil, name: "", repos_to_disable: [], repos_to_enable: [], type: nil, url: nil) ⇒ Service

Returns a new instance of Service.

Since:

  • 4.2.60



29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'library/packages/src/lib/y2packager/service.rb', line 29

def initialize(service_alias:, auto_refresh: nil, enabled: nil, file: nil, name: "",
  repos_to_disable: [], repos_to_enable: [], type: nil, url: nil)

  @alias = service_alias
  @auto_refresh = auto_refresh
  @enabled = enabled
  @file = file
  @name = name
  @repos_to_disable = repos_to_disable
  @repos_to_enable = repos_to_enable
  @type = type
  @url = url
end

Instance Attribute Details

#aliasObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def alias
  @alias
end

#auto_refreshObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def auto_refresh
  @auto_refresh
end

#enabledObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def enabled
  @enabled
end

#fileObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def file
  @file
end

#nameObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def name
  @name
end

#repos_to_disableObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def repos_to_disable
  @repos_to_disable
end

#repos_to_enableObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def repos_to_enable
  @repos_to_enable
end

#typeObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def type
  @type
end

#urlObject (readonly)

Since:

  • 4.2.60



26
27
28
# File 'library/packages/src/lib/y2packager/service.rb', line 26

def url
  @url
end

Class Method Details

.allObject

Since:

  • 4.2.60



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'library/packages/src/lib/y2packager/service.rb', line 43

def self.all
  aliases = Yast::Pkg.ServiceAliases
  services = aliases.map do |a|
    srv = Yast::Pkg.ServiceGet(a)
    new(
      service_alias:    a,
      auto_refresh:     srv["autorefresh"],
      enabled:          srv["enabled"],
      file:             srv["file"],
      name:             srv["name"],
      repos_to_disable: srv["repos_to_disable"] || [],
      repos_to_enable:  srv["repos_to_enable"] || [],
      type:             srv["type"],
      url:              srv["url"]
    )
  end

  log.info("Found #{services.size} services (#{services.map(&:alias).inspect})")

  services
end