kraken-io 0.0.1

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.
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
+