Class: SonyCiAdmin

Inherits:
SonyCiBasic show all
Includes:
Enumerable
Defined in:
lib/sony_ci_api/sony_ci_admin.rb

Defined Under Namespace

Classes: Deleter, Detailer, Lister, Uploader

Instance Attribute Summary

Attributes inherited from SonyCiBasic

#access_token, #verbose, #workspace_id

Instance Method Summary collapse

Methods inherited from SonyCiBasic

#download, #initialize

Constructor Details

This class inherits a constructor from SonyCiBasic

Instance Method Details

#delete(asset_id) ⇒ Object

Delete items by asset ID.



32
33
34
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 32

def delete(asset_id)
  Deleter.new(self).delete(asset_id)
end

#detail(asset_id) ⇒ Object

Get detailed metadata by asset ID.



37
38
39
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 37

def detail(asset_id)
  Detailer.new(self).detail(asset_id)
end

#eachObject

Iterate over all items.



27
28
29
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 27

def each
  Lister.new(self).each { |asset| yield asset }
end

#list(limit = 50, offset = 0) ⇒ Object

Full metadata for a windowed set of items.



22
23
24
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 22

def list(limit = 50, offset = 0)
  Lister.new(self).list(limit, offset)
end

#list_namesObject

Just the names of items in the workspace. This may include directories.



16
17
18
19
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 16

def list_names
  list.map { |item| item['name'] } - ['Workspace']
  # A self reference is present even in an empty workspace.
end

#multi_details(asset_ids, fields) ⇒ Object



41
42
43
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 41

def multi_details(asset_ids, fields)
  Detailer.new(self).multi_details(asset_ids, fields)
end

#upload(file_path, log_file) ⇒ Object

Upload a document to Ci. Underlying API treats large and small files differently, but this should treat both alike.



11
12
13
# File 'lib/sony_ci_api/sony_ci_admin.rb', line 11

def upload(file_path, log_file)
  Uploader.new(self, file_path, log_file).upload
end