Class: Yast::SnapperDbusClass

Inherits:
Module
  • Object
show all
Includes:
Logger
Defined in:
../../src/modules/SnapperDbus.rb

Constant Summary

TYPE_INT_TO_SYMBOL =
{
  0 => :SINGLE,
  1 => :PRE,
  2 => :POST
}

Instance Method Summary (collapse)

Instance Method Details

- (Object) create_comparison(config_name, num1, num2)



147
148
149
150
151
152
153
# File '../../src/modules/SnapperDbus.rb', line 147

def create_comparison(config_name, num1, num2)
  result = @dbus_object.CreateComparison(config_name, num1, num2).first
  log.debug("create_comparison config_name:#{config_name} num1:#{num1} num2:#{num2} "\
           "result: #{result}")

  result
end

- (Object) create_post_snapshot(config_name, prenum, description, cleanup, userdata)



109
110
111
112
113
114
115
116
117
# File '../../src/modules/SnapperDbus.rb', line 109

def create_post_snapshot(config_name, prenum, description, cleanup, userdata)
  result = @dbus_object.CreatePostSnapshot(config_name, prenum, escape(description),
                                           escape(cleanup), escape(userdata)).first
  log.debug("create_post_snapshot config_name:#{config_name} prenum:#{prenum} "\
           "description:#{description} cleanup:#{cleanup} userdata:#{userdata}"\
           "result #{result}")

  result
end

- (Object) create_pre_snapshot(config_name, description, cleanup, userdata)



99
100
101
102
103
104
105
106
# File '../../src/modules/SnapperDbus.rb', line 99

def create_pre_snapshot(config_name, description, cleanup, userdata)
  result = @dbus_object.CreatePreSnapshot(config_name, escape(description), escape(cleanup),
                                          escape(userdata)).first
  log.debug("create_pre_snapshot config_name:#{config_name} description:#{description} "\
           "cleanup:#{cleanup} userdata:#{userdata} result: #{result}")

  result
end

- (Object) create_single_snapshot(config_name, description, cleanup, userdata)



89
90
91
92
93
94
95
96
# File '../../src/modules/SnapperDbus.rb', line 89

def create_single_snapshot(config_name, description, cleanup, userdata)
  result = @dbus_object.CreateSingleSnapshot(config_name, escape(description), escape(cleanup),
                                             escape(userdata)).first
  log.debug("create_single_snapshot config_name:#{config_name} description:#{description} "\
           "cleanup:#{cleanup} userdata:#{userdata} result:#{result}")

  result
end

- (Object) delete_comparison(config_name, num1, num2)



156
157
158
159
160
161
162
# File '../../src/modules/SnapperDbus.rb', line 156

def delete_comparison(config_name, num1, num2)
  result = @dbus_object.DeleteComparison(config_name, num1, num2).first
  log.debug("delete_comparison config_name:#{config_name} num1:#{num1} num2:#{num2} "\
           "result:#{result}")

  result
end

- (Object) delete_snapshots(config_name, nums)



120
121
122
123
124
125
# File '../../src/modules/SnapperDbus.rb', line 120

def delete_snapshots(config_name, nums)
  result = @dbus_object.DeleteSnapshots(config_name, nums).first
  log.debug("delete_snapshots config_name:#{config_name} nums:#{nums} result:#{result}")

  result
end

- (Object) get_config(config_name)



51
52
53
54
55
56
# File '../../src/modules/SnapperDbus.rb', line 51

def get_config(config_name)
  result = @dbus_object.GetConfig(config_name).first
  log.debug("get_config for name '#{config_name}' result:#{result}")

  result
end

- (Object) get_files(config_name, num1, num2)



165
166
167
168
169
170
171
172
# File '../../src/modules/SnapperDbus.rb', line 165

def get_files(config_name, num1, num2)
  result = @dbus_object.GetFiles(config_name, num1, num2).first
  log.debug("get_files config_name:#{config_name} num1:#{num1} num2:#{num2} result:#{result}")

  result.map do |file|
    { "filename" => unescape(file[0]), "status" => file[1] }
  end
end

- (Object) get_mount_point(config_name, num)



139
140
141
142
143
144
# File '../../src/modules/SnapperDbus.rb', line 139

def get_mount_point(config_name, num)
  result = @dbus_object.GetMountPoint(config_name, num).first
  log.debug("get_mount_point config_name:#{config_name} num:#{num} result#{result}")

  result
end

- (Object) list_configs



43
44
45
46
47
48
# File '../../src/modules/SnapperDbus.rb', line 43

def list_configs
  result = @dbus_object.ListConfigs().first
  log.debug("list_configs result:#{result}")

  result.map(&:first)
end

- (Object) list_snapshots(config_name)



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File '../../src/modules/SnapperDbus.rb', line 65

def list_snapshots(config_name)
  result = @dbus_object.ListSnapshots(config_name).first
  log.debug("list_snapshots for name #{config_name} result:#{result}")

  ret = result.map do |snapshot|
    {
      "num" => snapshot[0],
      "type" => TYPE_INT_TO_SYMBOL[snapshot[1]],
      "pre_num" => snapshot[2],
      "date" => Time.at(snapshot[3]),
      "uid" => snapshot[4],
      "description" => unescape(snapshot[5]),
      "cleanup" => unescape(snapshot[6]),
      "userdata" => unescape(snapshot[7])
    }
  end

  log.debug("list_snapshots ret:#{ret}")

  return ret

end

- (Object) main



30
31
32
33
34
35
36
37
38
39
40
# File '../../src/modules/SnapperDbus.rb', line 30

def main

  log.info("connecting to snapperd")

  @system_bus = DBus::SystemBus.instance()
  @service = @system_bus.service("org.opensuse.Snapper")
  @dbus_object = @service.object("/org/opensuse/Snapper")
  @dbus_object.default_iface = "org.opensuse.Snapper"
  @dbus_object.introspect()

end

- (Object) set_snapshot(config_name, num, description, cleanup, userdata)



128
129
130
131
132
133
134
135
136
# File '../../src/modules/SnapperDbus.rb', line 128

def set_snapshot(config_name, num, description, cleanup, userdata)
  result = @dbus_object.SetSnapshot(config_name, num, escape(description), escape(cleanup),
                                    escape(userdata)).first
  log.debug("set_snapshot config_name:#{config_name} num:#{num} "\
           "description:#{description} cleanup:#{cleanup} userdata:#{userdata} "\
           "result #{result}")

  result
end