power-bi 0.1.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97631e0f44964ce0b4d23675e5a023ff203456d7881fea9a2f425441ac4ede8c
4
- data.tar.gz: 86c3f858e9c34ec5bebd67659f803a60d2303037ddb9f7ffd9e2eb3af13624eb
3
+ metadata.gz: 61e60749c7e0da1010f9404770158dd257c2e4ea7bef82a6a97457dd85f8b7b8
4
+ data.tar.gz: 017767f4e263817f1d0fec40f56869a5191bd1778d53ef383c2b7f97869b0068
5
5
  SHA512:
6
- metadata.gz: c07b1a99e33190aa95e9cc4f4131a2cf9a7f875d2143b806e9e01fe0e1af1866dbd8785aea00f2d46765237431822d5814ff563c13cc9d4bc86ded7173b68798
7
- data.tar.gz: dc17f34a6ba983869a2e2e48ee90de87a8c2f1f55982e40fa1f323e6e83e6e71cf119b32fdb2a2a0c658d89adb4933b5d89649eef1435e50b0233d2e95254c70
6
+ metadata.gz: b9e2c7483672138a160dfcca55ab7422c20ee3bb01499d959f2fde71cafff5b208acf8deb5dbbe3e80866f937b4a08bf99b653a9f35a120c3c56bad257c72e8a
7
+ data.tar.gz: cccd0a870109d01e4db575487c402172144b9d0b928b9e62459c3a36cca5b4f09b3f5ac7274c187b7e9ea73b2aaad5bc6890d4411ad74aa61bb8124b5514e8f3
@@ -40,6 +40,11 @@ module PowerBI
40
40
  true
41
41
  end
42
42
 
43
+ def delete
44
+ @tenant.delete("/groups/#{workspace.id}/datasets/#{id}")
45
+ true
46
+ end
47
+
43
48
  end
44
49
 
45
50
  class DatasetArray < Array
@@ -27,6 +27,15 @@ module PowerBI
27
27
  Report.new(@tenant, data)
28
28
  end
29
29
 
30
+ def rebind(target_dataset)
31
+ @tenant.post("/groups/#{workspace.id}/reports/#{id}/Rebind") do |req|
32
+ req.body = {
33
+ datasetId: target_dataset.id
34
+ }.to_json
35
+ end
36
+ true
37
+ end
38
+
30
39
  end
31
40
 
32
41
  class ReportArray < Array
@@ -38,6 +38,21 @@ module PowerBI
38
38
  end
39
39
  end
40
40
 
41
+ def delete(url, params = {})
42
+ response = Faraday.delete(PowerBI::BASE_URL + url) do |req|
43
+ req.params = params
44
+ req.headers['Accept'] = 'application/json'
45
+ req.headers['authorization'] = "Bearer #{token}"
46
+ yield req if block_given?
47
+ end
48
+ unless [200, 202].include? response.status
49
+ raise APIError.new("Error calling Power BI API (status #{response.status}): #{response.body}")
50
+ end
51
+ unless response.body.empty?
52
+ JSON.parse(response.body, symbolize_names: true)
53
+ end
54
+ end
55
+
41
56
  def post_file(url, file, params = {})
42
57
  conn = Faraday.new do |f|
43
58
  f.request :multipart
@@ -31,6 +31,17 @@ module PowerBI
31
31
  true
32
32
  end
33
33
 
34
+ # TODO LATER: the 'Viewer' acces right is currently not settable throught the API. Fix that later
35
+ def add_user(email_address, access_right = 'Member')
36
+ @tenant.post("/groups/#{id}/users") do |req|
37
+ req.body = {
38
+ emailAddress: email_address,
39
+ groupUserAccessRight: access_right
40
+ }.to_json
41
+ end
42
+ true
43
+ end
44
+
34
45
  end
35
46
 
36
47
  class WorkspaceArray < Array
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: power-bi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lode Cools