google_url_shortener 0.0.2 → 0.0.3
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.
- data/Gemfile +3 -1
- data/Gemfile.lock +9 -1
- data/google_url_shortener.gemspec +2 -0
- data/lib/google/url_shortener.rb +21 -0
- data/lib/google/url_shortener/version.rb +1 -1
- data/lib/google_url_shortener.rb +2 -12
- data/readme.textile +33 -1
- metadata +38 -5
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,11 +1,17 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
google_url_shortener (0.0.
|
4
|
+
google_url_shortener (0.0.2)
|
5
|
+
json (= 1.4.6)
|
6
|
+
rest-client (= 1.6.1)
|
5
7
|
|
6
8
|
GEM
|
7
9
|
remote: http://rubygems.org/
|
8
10
|
specs:
|
11
|
+
json (1.4.6)
|
12
|
+
mime-types (1.16)
|
13
|
+
rest-client (1.6.1)
|
14
|
+
mime-types (>= 1.16)
|
9
15
|
|
10
16
|
PLATFORMS
|
11
17
|
ruby
|
@@ -13,3 +19,5 @@ PLATFORMS
|
|
13
19
|
DEPENDENCIES
|
14
20
|
bundler (>= 1.0.0)
|
15
21
|
google_url_shortener!
|
22
|
+
json (= 1.4.6)
|
23
|
+
rest-client (= 1.6.1)
|
@@ -14,6 +14,8 @@ Gem::Specification.new do |s|
|
|
14
14
|
s.required_rubygems_version = ">= 1.3.6"
|
15
15
|
s.rubyforge_project = "google_url_shortener"
|
16
16
|
|
17
|
+
s.add_dependency "json", "1.4.6"
|
18
|
+
s.add_dependency "rest-client", "1.6.1"
|
17
19
|
s.add_development_dependency "bundler", ">= 1.0.0"
|
18
20
|
|
19
21
|
s.files = `git ls-files`.split("\n")
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'restclient'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
%w{ version request base url }.each do |f|
|
5
|
+
require("#{GEM_ROOT}/lib/google/url_shortener/#{f}")
|
6
|
+
end
|
7
|
+
|
8
|
+
module Google
|
9
|
+
module UrlShortener
|
10
|
+
class << self
|
11
|
+
|
12
|
+
def shorten!(url)
|
13
|
+
Url.new(:long_url => url).shorten!
|
14
|
+
end
|
15
|
+
|
16
|
+
def expand!(url)
|
17
|
+
Url.new(:short_url => url).expand!
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
data/lib/google_url_shortener.rb
CHANGED
@@ -1,12 +1,2 @@
|
|
1
|
-
|
2
|
-
require
|
3
|
-
require 'restclient'
|
4
|
-
require 'json'
|
5
|
-
# EO TODO
|
6
|
-
|
7
|
-
ROOT = File.expand_path(File.dirname(__FILE__) + "/..")
|
8
|
-
|
9
|
-
%w{ version
|
10
|
-
request
|
11
|
-
base
|
12
|
-
url }.each { |f| require("#{ROOT}/lib/google/url_shortener/#{f}") }
|
1
|
+
GEM_ROOT = File.expand_path(File.dirname(__FILE__) + "/..")
|
2
|
+
require GEM_ROOT + "/lib/google/url_shortener"
|
data/readme.textile
CHANGED
@@ -15,13 +15,45 @@ h2. Installation
|
|
15
15
|
|
16
16
|
The project is hosted on rubygems.org. Getting it is simple:
|
17
17
|
|
18
|
-
|
18
|
+
pre. gem install google_url_shortener
|
19
19
|
|
20
20
|
|
21
21
|
|
22
22
|
h2. Usage
|
23
23
|
|
24
24
|
|
25
|
+
h3. Setup
|
26
|
+
|
27
|
+
You need to provide an API to use the URL shortener service. To do this set the @api_key@ class variable:
|
28
|
+
|
29
|
+
pre. Google::UrlShortener::Base.api_key = "KEY"
|
30
|
+
|
31
|
+
You can also turn on verbose logging to inspect requests made by the library. Behind the scenes the library uses "RestClient":https://github.com/archiloque/rest-client to call the API, therefore whatever you set here will be used as the RestClient log (@RestClient.log@).
|
32
|
+
|
33
|
+
pre. Google::UrlShortener::Base.log = $stdout
|
34
|
+
|
35
|
+
|
36
|
+
h3. Shorten/Expand a URL
|
37
|
+
|
38
|
+
To shorten a URL:
|
39
|
+
|
40
|
+
pre. url = Google::UrlShortener::Url.new(:long_url => "http://blog.josh-nesbitt.net")
|
41
|
+
url.shorten! # => http://goo.gl/r5akx
|
42
|
+
|
43
|
+
Or the shorthand form:
|
44
|
+
|
45
|
+
pre. Google::UrlShortener.shorten!("http://blog.josh-nesbitt.net") # => http://goo.gl/r5akx
|
46
|
+
|
47
|
+
To expand a URL:
|
48
|
+
|
49
|
+
pre. url = Google::UrlShortener::Url.new(:short_url => "http://goo.gl/r5akx")
|
50
|
+
url.expand! # => http://blog.josh-nesbitt.net
|
51
|
+
|
52
|
+
Or the shorthand form:
|
53
|
+
|
54
|
+
pre. Google::UrlShortener.expand!("http://goo.gl/r5akx") # => http://blog.josh-nesbitt.net
|
55
|
+
|
56
|
+
|
25
57
|
|
26
58
|
h2. Bugs
|
27
59
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google_url_shortener
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Josh Nesbitt
|
@@ -19,9 +19,41 @@ date: 2011-01-14 00:00:00 +00:00
|
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
|
-
name:
|
22
|
+
name: json
|
23
23
|
prerelease: false
|
24
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - "="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
hash: 11
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 4
|
33
|
+
- 6
|
34
|
+
version: 1.4.6
|
35
|
+
type: :runtime
|
36
|
+
version_requirements: *id001
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: rest-client
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - "="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
hash: 13
|
46
|
+
segments:
|
47
|
+
- 1
|
48
|
+
- 6
|
49
|
+
- 1
|
50
|
+
version: 1.6.1
|
51
|
+
type: :runtime
|
52
|
+
version_requirements: *id002
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: bundler
|
55
|
+
prerelease: false
|
56
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
25
57
|
none: false
|
26
58
|
requirements:
|
27
59
|
- - ">="
|
@@ -33,7 +65,7 @@ dependencies:
|
|
33
65
|
- 0
|
34
66
|
version: 1.0.0
|
35
67
|
type: :development
|
36
|
-
version_requirements: *
|
68
|
+
version_requirements: *id003
|
37
69
|
description: Google URL Shortener is a library to compress and expand goo.gl URL's. It also provides an interface to view analytics of any given URL.
|
38
70
|
email:
|
39
71
|
- josh@josh-nesbitt.net
|
@@ -50,6 +82,7 @@ files:
|
|
50
82
|
- LICENSE
|
51
83
|
- Rakefile
|
52
84
|
- google_url_shortener.gemspec
|
85
|
+
- lib/google/url_shortener.rb
|
53
86
|
- lib/google/url_shortener/analytics.rb
|
54
87
|
- lib/google/url_shortener/base.rb
|
55
88
|
- lib/google/url_shortener/request.rb
|