Class: Clarifai::Rails::Image

Inherits:
Object
  • Object
show all
Defined in:
lib/clarifai/rails/image.rb

Instance Method Summary collapse

Constructor Details

#initialize(json) ⇒ Image

Returns a new instance of Image.



5
6
7
# File 'lib/clarifai/rails/image.rb', line 5

def initialize(json)
  @json = json.symbolize_keys
end

Instance Method Details

#conceptsObject



19
20
21
22
# File 'lib/clarifai/rails/image.rb', line 19

def concepts
  raise error if error?
  data[:concepts].map{ |item| item['name'] }
end

#concepts_with_percentObject



24
25
26
27
28
# File 'lib/clarifai/rails/image.rb', line 24

def concepts_with_percent
  data[:concepts].map do |item|
    [item['name'], item['value']]
  end.to_h
end

#docidObject



9
10
11
# File 'lib/clarifai/rails/image.rb', line 9

def docid
  json[:id]
end

#errorObject



38
39
40
# File 'lib/clarifai/rails/image.rb', line 38

def error
  Clarifai::Rails::Error.detector(status_code)
end

#error?Boolean

Returns:

  • (Boolean)


42
43
44
# File 'lib/clarifai/rails/image.rb', line 42

def error?
  error.present?
end

#status_codeObject



30
31
32
# File 'lib/clarifai/rails/image.rb', line 30

def status_code
  status[:code]
end

#status_messagesObject



34
35
36
# File 'lib/clarifai/rails/image.rb', line 34

def status_messages
  status[:description]
end

#success?Boolean

Returns:

  • (Boolean)


46
47
48
# File 'lib/clarifai/rails/image.rb', line 46

def success?
  error.blank?
end

#urlObject



13
14
15
16
17
# File 'lib/clarifai/rails/image.rb', line 13

def url
  json[:input]['data']['image']['url']
rescue
  nil
end