Class: Y2Network::AutoinstProfile::RoutingSection

Inherits:
Installation::AutoinstProfile::SectionWithAttributes
  • Object
show all
Defined in:
src/lib/y2network/autoinst_profile/routing_section.rb

Overview

This class represents an AutoYaST section under

false false <!-- see RouteSection class --> 192.168.1.0 eth0 foo - -

See Also:

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*_args) ⇒ RoutingSection

Constructor



74
75
76
77
# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 74

def initialize(*_args)
  super
  @routes = []
end

Instance Attribute Details

#ipv4_forwardBoolean

Returns:

  • (Boolean)


# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 53

#ipv6_forwardBoolean

Returns:

  • (Boolean)


# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 56

#routesArray<RouteSection>

Returns:



# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 59

Class Method Details

.attributesObject



43
44
45
46
47
48
49
# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 43

def self.attributes
  [
    { name: :ipv4_forward },
    { name: :ipv6_forward },
    { name: :routes }
  ]
end

.new_from_network(routing, parent = nil) ⇒ RoutingSection

Clones network routing settings into an AutoYaST routing section

Parameters:

  • routing (Y2Network::Routing)

    Routing settings

  • parent (SectionWithAttributes, nil) (defaults to: nil)

    Parent section

Returns:



67
68
69
70
71
# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 67

def self.new_from_network(routing, parent = nil)
  result = new(parent)
  initialized = result.init_from_network(routing)
  initialized ? result : nil
end

Instance Method Details

#init_from_hashes(hash) ⇒ Object

Method used by new_from_hashes to populate the attributes when importing a profile

Parameters:

  • hash (Hash)

    see new_from_hashes



82
83
84
85
86
87
88
# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 82

def init_from_hashes(hash)
  super
  ip_forward = hash["ip_forward"]
  @ipv4_forward = hash.fetch("ipv4_forward", ip_forward)
  @ipv6_forward = hash.fetch("ipv6_forward", ip_forward)
  @routes = routes_from_hash(hash)
end

#init_from_network(routing) ⇒ Boolean

Method used by new_from_network to populate the attributes when cloning routing settings

Parameters:

Returns:

  • (Boolean)

    Result true on success or false otherwise



94
95
96
97
98
99
# File 'src/lib/y2network/autoinst_profile/routing_section.rb', line 94

def init_from_network(routing)
  @ipv4_forward = routing.forward_ipv4
  @ipv6_forward = routing.forward_ipv6
  @routes = routes_section(routing.routes)
  true
end