gooddata 0.4.0 → 0.5.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.
- data/VERSION +1 -1
- data/lib/gooddata/client.rb +4 -0
- data/lib/gooddata/commands/base.rb +3 -1
- data/lib/gooddata/connection.rb +32 -9
- data/lib/gooddata/model.rb +3 -0
- data/lib/gooddata/version.rb +1 -1
- metadata +4 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.5.0
|
data/lib/gooddata/client.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
require 'gooddata/version'
|
2
2
|
require 'gooddata/connection'
|
3
|
+
|
4
|
+
# Metadata packages, such as report.rb, require this to be loaded first
|
5
|
+
require File.dirname(__FILE__) + '/models/metadata.rb'
|
6
|
+
|
3
7
|
Dir[File.dirname(__FILE__) + '/models/*.rb'].each { |file| require file }
|
4
8
|
Dir[File.dirname(__FILE__) + '/collections/*.rb'].each { |file| require file }
|
5
9
|
|
@@ -44,8 +44,10 @@ module GoodData
|
|
44
44
|
begin
|
45
45
|
if options.has_key? :answers
|
46
46
|
answer = nil
|
47
|
+
options[:default] = options[:answers][0] if !options.has_key? :default
|
47
48
|
while !options[:answers].include?(answer)
|
48
|
-
answer = get_answer "#{question}
|
49
|
+
answer = get_answer "#{question} (#{options[:answers].join(',')}) [#{options[:default]}]? ", options[:secret]
|
50
|
+
answer = options[:default] if answer == ""
|
49
51
|
end
|
50
52
|
else
|
51
53
|
question = "#{question} [#{options[:default]}]" if options[:default]
|
data/lib/gooddata/connection.rb
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'json'
|
2
|
-
require 'net/ftptls'
|
3
2
|
|
4
3
|
# silence the parenthesis warning in rest-client 1.6.1
|
5
4
|
old_verbose, $VERBOSE = $VERBOSE, nil ; require 'rest-client' ; $VERBOSE = old_verbose
|
@@ -33,6 +32,7 @@ module GoodData
|
|
33
32
|
DEFAULT_URL = 'https://secure.gooddata.com'
|
34
33
|
LOGIN_PATH = '/gdc/account/login'
|
35
34
|
TOKEN_PATH = '/gdc/account/token'
|
35
|
+
STAGE_PATH = '/uploads'
|
36
36
|
|
37
37
|
# Set the GoodData account credentials.
|
38
38
|
#
|
@@ -133,16 +133,39 @@ module GoodData
|
|
133
133
|
connect
|
134
134
|
end
|
135
135
|
|
136
|
-
# Uploads a file to GoodData server
|
136
|
+
# Uploads a file to GoodData server
|
137
|
+
# /uploads/ resources are special in that they use a different
|
138
|
+
# host and a basic authentication.
|
137
139
|
def upload(file, dir = nil)
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
140
|
+
# We should have followed a link. If it was correct.
|
141
|
+
stage_url = DEFAULT_URL.sub(/\./, '-di.')
|
142
|
+
|
143
|
+
# Make a directory, if needed
|
144
|
+
if dir then
|
145
|
+
RestClient::Request.execute(
|
146
|
+
:method => :mkcol,
|
147
|
+
:url => stage_url + STAGE_PATH + dir + '/',
|
148
|
+
:user => @username,
|
149
|
+
:password => @password,
|
150
|
+
:timeout => @options[:timeout],
|
151
|
+
:headers => {
|
152
|
+
:user_agent => GoodData.gem_version_string,
|
153
|
+
}
|
154
|
+
)
|
145
155
|
end
|
156
|
+
|
157
|
+
# Upload the file
|
158
|
+
RestClient::Request.execute(
|
159
|
+
:method => :put,
|
160
|
+
:url => stage_url + STAGE_PATH + dir + '/' + File.basename(file),
|
161
|
+
:user => @username,
|
162
|
+
:password => @password,
|
163
|
+
:timeout => @options[:timeout],
|
164
|
+
:headers => {
|
165
|
+
:user_agent => GoodData.gem_version_string,
|
166
|
+
},
|
167
|
+
:payload => File.read(file)
|
168
|
+
)
|
146
169
|
end
|
147
170
|
|
148
171
|
private
|
data/lib/gooddata/model.rb
CHANGED
@@ -572,6 +572,9 @@ module GoodData
|
|
572
572
|
def to_csv_data(headers, row)
|
573
573
|
val = row[name]
|
574
574
|
val.nil?() ? nil : (Date.strptime(val, format) - BEGINNING_OF_TIMES).to_i
|
575
|
+
rescue ArgumentError
|
576
|
+
raise "Value \"#{val}\" for column \"#{name}\" did not match the format: #{format}. " +
|
577
|
+
"Perhaps you need to add or change the \"format\" key in the data set configuration."
|
575
578
|
end
|
576
579
|
|
577
580
|
def to_manifest_part(mode)
|
data/lib/gooddata/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gooddata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 11
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 5
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.5.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Pavel Kolesnikov
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-09-
|
19
|
+
date: 2011-09-21 00:00:00 Z
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
requirement: &id001 !ruby/object:Gem::Requirement
|