google_spreadsheet_recorder 0.0.3 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d1079add2b597f0ebd1b10aa2416c2c8ecedcc9
4
- data.tar.gz: dbe182214336f3965b880593d3238748e452ab7f
3
+ metadata.gz: dd6b257755d023ceaf489958fdfd28a31339667a
4
+ data.tar.gz: 23b19f099264e41877b12befe3c63d539915a84b
5
5
  SHA512:
6
- metadata.gz: af30b5e03458d72a0810f88ea086b2107e1aaddd7612e243f5092c833fb7e68f4fbf50a713e863814f610f509f678a6a54ae72e240f035b2618b7c052427dd9b
7
- data.tar.gz: a642a4615f97268d5b102c0e851613d523fa48356fa22f9618a690dc703950b61c5afccf40519283ad7fef05e7fc7437a0fe0493075abc1bfe32718b973a6a68
6
+ metadata.gz: 910a01ca5997bfd5bbd2db108bb1c86a005b3bc8ae0fbb0f36e025c51b1214b5ee67791aef7e4e7aea4121566c5944959d22c874452da8b1fb9516ae4f441da7
7
+ data.tar.gz: b37826865b5b22dc891860b4c8b16fb9e213f5bde10a78203f5e01587279455c9d23b9d166c94a83aaabc51b1ad2ce61683378e2b0fb38d1f80727c0bc95ac2e
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "google_spreadsheet_recorder"
7
- spec.version = "0.0.3"
7
+ spec.version = "0.1.0"
8
8
  spec.authors = ["saeki"]
9
9
  spec.email = ["nobuo.seaki@gmail.com"]
10
10
  spec.summary = %q{Simple google spreadsheet data uploader.}
@@ -7,7 +7,9 @@ class GoogleSpreadsheetRecorder
7
7
  SCOPE = 'https://spreadsheets.google.com/feeds'
8
8
  REDIRECT_URI = 'urn:ietf:wg:oauth:2.0:oob'
9
9
 
10
- def initialize(client_id, client_secret, spreadsheet_key, token_file)
10
+ attr_accessor :spreadsheet_key
11
+
12
+ def initialize(client_id, client_secret, token_file, spreadsheet_key = nil)
11
13
  @client_id = client_id
12
14
  @client_secret = client_secret
13
15
  @token_file = token_file
@@ -15,8 +17,10 @@ class GoogleSpreadsheetRecorder
15
17
  load_or_refresh_token
16
18
  end
17
19
 
18
- def worksheets
19
- url = "https://spreadsheets.google.com/feeds/worksheets/#{@spreadsheet_key}/private/full"
20
+ def worksheets(spreadsheet_key = nil)
21
+ key = spreadsheet_key || @spreadsheet_key
22
+ raise ArgumentError("Must specify spreadsheet_key") if key.nil? || key.empty?
23
+ url = "https://spreadsheets.google.com/feeds/worksheets/#{key}/private/full"
20
24
  response = @token.get(url)
21
25
  doc = Nokogiri::XML(response.body)
22
26
  doc.css('feed entry').map do |e|
@@ -28,7 +32,9 @@ class GoogleSpreadsheetRecorder
28
32
  end
29
33
 
30
34
  def rows(sheet_id)
31
- url = "https://spreadsheets.google.com/feeds/list/#{@spreadsheet_key}/#{sheet_id}/private/full"
35
+ key = @spreadsheet_key
36
+ raise ArgumentError("Must specify spreadsheet_key") if key.nil? || key.empty?
37
+ url = "https://spreadsheets.google.com/feeds/list/#{key}/#{sheet_id}/private/full"
32
38
  response = @token.get(url)
33
39
  doc = Nokogiri::XML(response.body)
34
40
  doc.css('entry').map do |e|
@@ -37,7 +43,9 @@ class GoogleSpreadsheetRecorder
37
43
  end
38
44
 
39
45
  def send_row(row_data, sheet_id)
40
- url = "https://spreadsheets.google.com/feeds/list/#{@spreadsheet_key}/#{sheet_id}/private/full"
46
+ key = @spreadsheet_key
47
+ raise ArgumentError("Must specify spreadsheet_key") if key.nil? || key.empty?
48
+ url = "https://spreadsheets.google.com/feeds/list/#{key}/#{sheet_id}/private/full"
41
49
  body = <<-"EOS"
42
50
  <entry xmlns="http://www.w3.org/2005/Atom"
43
51
  xmlns:gsx="http://schemas.google.com/spreadsheets/2006/extended">
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_spreadsheet_recorder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - saeki
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-13 00:00:00.000000000 Z
11
+ date: 2014-11-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: oauth2