Class: SFRest::Backup

Inherits:
Object
  • Object
show all
Defined in:
lib/sfrest/backup.rb

Overview

Backup a site or restore onto that site

Instance Method Summary collapse

Constructor Details

#initialize(conn) ⇒ Backup

Returns a new instance of Backup.

Parameters:



5
6
7
# File 'lib/sfrest/backup.rb', line 5

def initialize(conn)
  @conn = conn
end

Instance Method Details

#backup_url(site_id, backup_id, lifetime = 60) ⇒ Object

Gets a url to download a backup

Parameters:

  • site_id (Integer)

    Node id of site

  • backup_id (Integer)

    Id of backup to delete

  • lifetime (Integer) (defaults to: 60)

    TTL of the url



42
43
44
# File 'lib/sfrest/backup.rb', line 42

def backup_url(site_id, backup_id, lifetime = 60)
  @conn.get("/api/v1/sites/#{site_id}/backups/#{backup_id}/url?lifetime=#{lifetime}")
end

#create_backup(site_id, datum = nil) ⇒ Object

Backs up a site.

Parameters:

  • site_id (Integer)
  • datum (Hash) (defaults to: nil)

    Options to the backup

Options Hash (datum):

  • 'label' (String)
  • 'callback_url' (Url)
  • 'callback_method' (String)

    GET|POST

  • 'caller_data' (Json)

    json encoded string



33
34
35
36
# File 'lib/sfrest/backup.rb', line 33

def create_backup(site_id, datum = nil)
  current_path = "/api/v1/sites/#{site_id}/backup"
  @conn.post(current_path, datum.to_json)
end

#delete_backup(site_id, backup_id) ⇒ Object

Deletes a site backup.

Parameters:

  • site_id (Integer)

    Node id of site

  • backup_id (Integer)

    Id of backup to delete



21
22
23
24
# File 'lib/sfrest/backup.rb', line 21

def delete_backup(site_id, backup_id)
  current_path = "/api/v1/sites/#{site_id}/backups/#{backup_id}"
  @conn.delete(current_path)
end

#get_backups(site_id, datum = nil) ⇒ Hash

cool stuff goes here

Parameters:

  • site_id (Integer)

    the node id of the site node

Returns:

  • (Hash)


12
13
14
15
16
# File 'lib/sfrest/backup.rb', line 12

def get_backups(site_id, datum = nil)
  current_path = "/api/v1/sites/#{site_id}/backups"
  pb = SFRest::Pathbuilder.new
  @conn.get URI.parse(pb.build_url_query(current_path, datum)).to_s
end