power-bi 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9193c3d643da35d86134e135a564a6e09864ae9bc95faa3e443d51624f9d8bb
4
- data.tar.gz: 0e6a92e0ba9f7afea7b7ecc30afabfdaccbcbb67919c2f8bc3d2981f542d9b75
3
+ metadata.gz: b5ef83e5bdcaaa737a8bd83a825b597d302d70b31ff35b3aff95a6b3c1c7f2a4
4
+ data.tar.gz: '019b0bd626eccac2f699d500d3eec467cfa209ee1658cd85e5ee9323856e4fa8'
5
5
  SHA512:
6
- metadata.gz: 6d4f514fa5df2146b9304e48a43a33013e2bd09ddb24ad47cb1dd1a9437759b2507b3d16b8aa6593c79de073f9fd6c340d70cd081ef23c0dd35615c069ebb48c
7
- data.tar.gz: 9633e6e5e1e7c9e123312794e294ff47d28bff8943ea7166c17832da05a8a65373185bd719b4719b2dfd1f7cc43d141ab739cd765d6755fd8236544ca9d7bc36
6
+ metadata.gz: a0432e8d536199d1edacb320ddabf5a4abc819a1c2e565c647727c12cad819f10696043d57b102611e5adcf5facf8553f2d2702cd6879fd24a82f335033ba95b
7
+ data.tar.gz: ed395225b4a0a26645a167cb17319ee5c8714195680fbbbb13e533f6293152de58aae3fc823b7540b0dcb26f1523e014be7e107f66386e61b7756508a51c8374
data/lib/power-bi.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'pry' # TODO remove in final product
2
2
  require 'faraday'
3
3
  require 'json'
4
+ require 'date'
4
5
 
5
6
  module PowerBI
6
7
  BASE_URL = 'https://api.powerbi.com/v1.0/myorg'
@@ -16,3 +17,4 @@ require_relative "power-bi/report"
16
17
  require_relative "power-bi/dataset"
17
18
  require_relative "power-bi/datasource"
18
19
  require_relative "power-bi/parameter"
20
+ require_relative "power-bi/refresh"
@@ -2,7 +2,7 @@ module PowerBI
2
2
  class Dataset
3
3
  attr_reader :id, :name, :add_rows_API_enabled, :configured_by, :is_refreshable, :is_effective_identity_required,
4
4
  :is_effective_identity_roles_required, :is_on_prem_gateway_required, :target_storage_mode, :workspace, :datasources,
5
- :parameters
5
+ :parameters, :refresh_history
6
6
 
7
7
  def initialize(tenant, data)
8
8
  @id = data[:id]
@@ -18,6 +18,7 @@ module PowerBI
18
18
  @tenant = tenant
19
19
  @datasources = DatasourceArray.new(@tenant, self)
20
20
  @parameters = ParameterArray.new(@tenant, self)
21
+ @refresh_history = RefreshArray.new(@tenant, self)
21
22
  end
22
23
 
23
24
  def update_parameter(name, value)
@@ -30,6 +31,9 @@ module PowerBI
30
31
  true
31
32
  end
32
33
 
34
+ def last_refresh
35
+ @refresh_history.first
36
+ end
33
37
 
34
38
  def refresh
35
39
  @tenant.post("/groups/#{workspace.id}/datasets/#{id}/refreshes") do |req|
@@ -37,6 +41,7 @@ module PowerBI
37
41
  notifyOption: "NoNotification"
38
42
  }.to_json
39
43
  end
44
+ @refresh_history.reload
40
45
  true
41
46
  end
42
47
 
@@ -0,0 +1,32 @@
1
+ module PowerBI
2
+ class Refresh
3
+ attr_reader :refresh_type, :start_time, :end_time, :service_exception_json, :status, :request_id
4
+
5
+ def initialize(tenant, data)
6
+ @id = data[:id]
7
+ @refresh_type = data[:refreshType]
8
+ @start_time = DateTime.iso8601(data[:startTime])
9
+ @end_time = DateTime.iso8601(data[:endTime])
10
+ @service_exception_json = data[:serviceExceptionJson]
11
+ @status = data[:status]
12
+ @request_id = data[:requestId]
13
+ end
14
+
15
+ end
16
+
17
+ class RefreshArray < Array
18
+
19
+ def initialize(tenant, dataset)
20
+ super(tenant)
21
+ @dataset = dataset
22
+ end
23
+
24
+ def self.get_class
25
+ Refresh
26
+ end
27
+
28
+ def get_data
29
+ @tenant.get("/groups/#{@dataset.workspace.id}/datasets/#{@dataset.id}/refreshes", {'$top': '3'})[:value]
30
+ end
31
+ end
32
+ end
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.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lode Cools
@@ -51,6 +51,7 @@ files:
51
51
  - lib/power-bi/dataset.rb
52
52
  - lib/power-bi/datasource.rb
53
53
  - lib/power-bi/parameter.rb
54
+ - lib/power-bi/refresh.rb
54
55
  - lib/power-bi/report.rb
55
56
  - lib/power-bi/tenant.rb
56
57
  - lib/power-bi/workspace.rb