kraken-io 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/kraken-io.rb +51 -0
  2. metadata +121 -0
data/lib/kraken-io.rb ADDED
@@ -0,0 +1,51 @@
1
+ require 'json'
2
+ require 'httparty'
3
+ require 'rest-client'
4
+ require 'net/http/post/multipart'
5
+
6
+ module Kraken
7
+ class API
8
+ include HTTParty
9
+
10
+ attr_accessor :api_key, :api_secret
11
+
12
+ def initialize(api_key = '', api_secret = '')
13
+ @api_key = api_key
14
+ @api_secret = api_secret
15
+ end
16
+
17
+ def url(params = {})
18
+ params.merge!({
19
+ 'auth' => {
20
+ 'api_key' => @api_key,
21
+ 'api_secret' => @api_secret
22
+ }
23
+ })
24
+
25
+ self.class.post('https://api.hub/url', {:body => JSON.generate(params)})
26
+ end
27
+
28
+ def upload(params = {})
29
+ params.merge!({
30
+ 'auth' => {
31
+ 'api_key' => @api_key,
32
+ 'api_secret' => @api_secret
33
+ }
34
+ })
35
+
36
+ url = URI.parse("https://api.hub/upload")
37
+
38
+ File.open(params['file']) do |file|
39
+ params.delete('file')
40
+
41
+ req = Net::HTTP::Post::Multipart.new url.path, "body" => JSON.generate(params), "file" => UploadIO.new(file, 'logotyp.png')
42
+
43
+ https = Net::HTTP.new(url.host, url.port)
44
+ https.use_ssl = true
45
+
46
+ res = https.start() {|conn| conn.request(req)}
47
+ response = JSON.parse(res.body)
48
+ end
49
+ end
50
+ end
51
+ end
metadata ADDED
@@ -0,0 +1,121 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kraken-io
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Przemek Matylla
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2013-01-24 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: json
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: httparty
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ type: :runtime
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: httmultiparty
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ type: :runtime
61
+ version_requirements: *id003
62
+ - !ruby/object:Gem::Dependency
63
+ name: multipart-post
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 3
71
+ segments:
72
+ - 0
73
+ version: "0"
74
+ type: :runtime
75
+ version_requirements: *id004
76
+ description: With this gem you can plug into the power and speed of Kraken.io Image Optimizer. http://kraken.io/
77
+ email:
78
+ - przemek@matylla.pl
79
+ executables: []
80
+
81
+ extensions: []
82
+
83
+ extra_rdoc_files: []
84
+
85
+ files:
86
+ - lib/kraken-io.rb
87
+ homepage: http://github.com/kraken-io/kraken-ruby-gem
88
+ licenses:
89
+ - MIT
90
+ post_install_message:
91
+ rdoc_options: []
92
+
93
+ require_paths:
94
+ - lib
95
+ required_ruby_version: !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ hash: 3
101
+ segments:
102
+ - 0
103
+ version: "0"
104
+ required_rubygems_version: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ hash: 3
110
+ segments:
111
+ - 0
112
+ version: "0"
113
+ requirements: []
114
+
115
+ rubyforge_project:
116
+ rubygems_version: 1.8.24
117
+ signing_key:
118
+ specification_version: 3
119
+ summary: Ruby gem for interacting with Kraken.io API
120
+ test_files: []
121
+