class Joplin::Resource

Attributes

id[R]

Public Class Methods

all() click to toggle source
# File lib/joplin.rb, line 37
def self.all
    url = "#{Joplin::uri}/resources/?token=#{Joplin::token}&fields=id"
    res = Faraday.get url
    parsed = JSON.parse res.body
    if res.status != 200
      throw Error.new(parsed['error'])
    end
    parsed.map do |resource|
      Resource.new resource['id']
    end
end
new(id=nil) click to toggle source
# File lib/joplin.rb, line 49
def initialize(id=nil)

  raise Error.new("need id") unless id
  @id = id
  url = "#{Joplin::uri}/resources/#{id}?token=#{Joplin::token}&fields=mime,filename,id"
  res = Faraday.get url
  @parsed = JSON.parse res.body
end
orphaned() click to toggle source
# File lib/joplin.rb, line 70
def self.orphaned
  resources = all.map { |r| r.id }
  note_resources = Note.all.map { |n| n.resources }.flatten.map { |r| r.id }
  resources.difference(note_resources).map { |id| Resource.new id }
end

Public Instance Methods

delete() click to toggle source
# File lib/joplin.rb, line 58
def delete
  url = "#{Joplin::uri}/resources/#{id}?token=#{Joplin::token}"
  res = Faraday.delete url
  res.status == 200
end
to_s() click to toggle source
# File lib/joplin.rb, line 64
    def to_s
      """id: #{@id},
mime: #{@parsed['mime']}
filename: #{@parsed['filename']}"""
    end