tincan-api 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/tincan.rb +47 -0
- metadata +72 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: a1d8e6d0f6665e44b42e6a10c0874876c9fcac4f
|
4
|
+
data.tar.gz: 47d1993e51ca9618e0a9c95d41736a5885320d44
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2b2fc497a67586a015b028fa3ef8d818785e8dd042051b35a9de1e68c817f63a5f9d6b729d94b23c921b04c6d7b9fbb332da74615a14dcc9e9fa6dd2f8b67616
|
7
|
+
data.tar.gz: 20199b6ec7dd4b73da6b4ee708da07424fa1b06f5905954c0743e3391dc7f9cd29c44f0bcde73133dfad0ed72c0f74630396868154b6f23e67dd3c17274d5ef6
|
data/lib/tincan.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
["httparty", "json"].each(&method(:require))
|
2
|
+
|
3
|
+
class TinCan
|
4
|
+
include HTTParty
|
5
|
+
base_uri "apps.tincan.me"
|
6
|
+
|
7
|
+
def initialize(app_id, app_key, app_name)
|
8
|
+
@id = app_id
|
9
|
+
@key = app_key
|
10
|
+
@name = app_name
|
11
|
+
end
|
12
|
+
|
13
|
+
def insert(query) return read_response(req("insert", query.to_json)) end
|
14
|
+
def find(query) return read_response(req("find", query.to_json), true) end
|
15
|
+
def update(query) return read_response(req("update", query.to_json)) end
|
16
|
+
def delete(query) return read_response(req("remove", query.to_json)) end
|
17
|
+
|
18
|
+
def validate
|
19
|
+
return read_response(
|
20
|
+
self.class.get(
|
21
|
+
"/#{@name}/authorized",
|
22
|
+
:basic_auth => {:username => @id, :password => @key},
|
23
|
+
:headers => {"ContentType" => "application/json"}
|
24
|
+
).body
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
def req(type, query)
|
30
|
+
return self.class.post(
|
31
|
+
"/#{@name}/#{type}",
|
32
|
+
:body => query,
|
33
|
+
:basic_auth => {:username => @id, :password => @key},
|
34
|
+
:headers => {"ContentType" => "application/json"}
|
35
|
+
).body
|
36
|
+
end
|
37
|
+
|
38
|
+
def read_response(res, has_data = false)
|
39
|
+
res = JSON.parse(res)
|
40
|
+
|
41
|
+
if res["success"]
|
42
|
+
return res_data if has_data
|
43
|
+
return true
|
44
|
+
end
|
45
|
+
return res["error"]
|
46
|
+
end
|
47
|
+
end
|
metadata
ADDED
@@ -0,0 +1,72 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: tincan-api
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Charles Hollenbeck
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-05-01 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: httparty
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: json
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
description:
|
42
|
+
email: charles@hollenbeck.pw
|
43
|
+
executables: []
|
44
|
+
extensions: []
|
45
|
+
extra_rdoc_files: []
|
46
|
+
files:
|
47
|
+
- lib/tincan.rb
|
48
|
+
homepage: https://github.com/XD6Code/tincan-gem
|
49
|
+
licenses:
|
50
|
+
- MIT
|
51
|
+
metadata: {}
|
52
|
+
post_install_message:
|
53
|
+
rdoc_options: []
|
54
|
+
require_paths:
|
55
|
+
- lib
|
56
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - '>='
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
61
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
62
|
+
requirements:
|
63
|
+
- - '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
requirements: []
|
67
|
+
rubyforge_project:
|
68
|
+
rubygems_version: 2.0.14
|
69
|
+
signing_key:
|
70
|
+
specification_version: 4
|
71
|
+
summary: Ruby gem for the TinCan Storage API
|
72
|
+
test_files: []
|