lws 7.2.4 → 7.3.2

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: 215d80612cb5ad547181deadb4a61244b8a108c3e1b6a24e52b288c9dcddc507
4
- data.tar.gz: '0892759a406c54e49087e7e84ac6a0b433144c936ca8b74e8e3ab0d23a652933'
3
+ metadata.gz: 584cf2af81ea2c838fc084ef6ce4bc7b95970491cd88c8b93168cfc2649d8c9f
4
+ data.tar.gz: efda07eca2af74024f69ba3bd8439044010c0977e51547de2df461fccf0155a6
5
5
  SHA512:
6
- metadata.gz: 76bb918ff504f80e6d7e65bce4eaa8a229cdbc9b6b52bced17aa600f87d1b5e1b5ab32adac0e28de00c0b0f1fa49d326962ceaeb80087aac8e5f82914915777e
7
- data.tar.gz: e63b88135279e691f345911a249d46a56d20c90534f6759ba64a3830f7c7b3074b0a67bc1206f972637a8a3c3a12b69e221e82cb6464f6b42f16662168de8f99
6
+ metadata.gz: 926f2d6dcdca21e5b61e9c7e09e35d1838b446821fcfe2e0fa7722d1561dfd31a5a236d00070d04dbad182136130a3e8c95fb8c486a4b5f1b711cc533abc7041
7
+ data.tar.gz: 49b3b7cbf19e8c6844bab2fccd46f4a6c8d1c00697f4bcf45ea06725e7a2dc4b51afe3cff361e182ea133351687d7dc5fd6faa4824132ef8fd6f0c014cf559c0
data/lib/lws/apps/auth.rb CHANGED
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The auth app module
@@ -14,18 +15,16 @@ module LWS::Auth
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the auth app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Auth app
18
22
  ENDPOINT = { production: "https://leftclick.cloud/" ,
19
23
  development: "https://dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- class << self
25
- attr_accessor :api
26
- end
27
- @api = LWS.setup_api(LWS.config.endpoints[:auth] ||
28
- ENDPOINT[LWS.config.environment])
27
+ include LWS::Generic
29
28
 
30
29
  ### Generic classes
31
30
 
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The corporate website app module
@@ -14,17 +15,16 @@ module LWS::CorporateWebsite
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the corporate website app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Corporate Website app
18
22
  ENDPOINT = { production: "https://www.leftclick.cloud/",
19
23
  development: "https://www-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:corporate_website] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The digital_signage app module
@@ -14,17 +15,16 @@ module LWS::DigitalSignage
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the digital signage app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Digital Signage app
18
22
  ENDPOINT = { production: "https://cm.leftclick.cloud/" ,
19
23
  development: "https://cm-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:digital_signage] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
@@ -78,6 +78,11 @@ module LWS::DigitalSignage
78
78
  # @return [Array<Channel::Group>] the groups the channel is a member of
79
79
  has_many :groups, class_name: "LWS::DigitalSignage::Channel::Group"
80
80
 
81
+ # @!attribute layout_kind
82
+ # @return ["default", "stage"] the layout (version) kinds to consider
83
+ # when generating a playlist for the channel
84
+ attribute :layout_kind
85
+
81
86
  # @!attribute marquee_config
82
87
  # @return [String] the marquee/ticker tape configuration (JSON) of the channel
83
88
  attribute :marquee_config
@@ -507,7 +512,7 @@ module LWS::DigitalSignage
507
512
  # the layout
508
513
  # FIXME: Missing endpoint in LWS
509
514
  has_many :categories, class_name: "LWS::DigitalSignage::Layout::Category",
510
- uri: "layout/:layout_id/categories(/:id)"
515
+ uri: "layouts/:layout_id/categories(/:id)"
511
516
 
512
517
  # @!attribute company_owner
513
518
  # @return [LWS::Auth::Company] the company that owns the layout
@@ -765,7 +770,7 @@ module LWS::DigitalSignage
765
770
  # This class is only used within the context of the {Layout} class.
766
771
  class Layout::Version < LWS::Generic::Model
767
772
  use_api LWS::DigitalSignage.api
768
- uri "layout/:layout_id/versions(/:id)"
773
+ uri "layouts/:layout_id/versions(/:id)"
769
774
 
770
775
  # @!attribute archive_storage_id
771
776
  # @return [String, nil] sthe storage ID of the archive/layout pack of the
@@ -809,8 +814,8 @@ module LWS::DigitalSignage
809
814
  attribute :rotation_angle
810
815
 
811
816
  # @!attribute status [r]
812
- # @return ["initializing", "creating_pack", "creating_thumbnail", "available", "archive"]
813
- # the status of the layout version
817
+ # @return ["initializing", "creating_pack", "creating_thumbnail",
818
+ # "available", "archive", "stage"] the status of the layout version
814
819
  attribute :status
815
820
 
816
821
  # @!attribute thumbnail_url
@@ -1805,6 +1810,10 @@ module LWS::DigitalSignage
1805
1810
  # @!attribute thumbnail_url
1806
1811
  # @return [String, nil] the URL of the thumbnail of the slide
1807
1812
  attribute :thumbnail_url
1813
+
1814
+ # @!attribute uuid
1815
+ # @return [String] the UUID of the slide
1816
+ attribute :uuid
1808
1817
  end
1809
1818
 
1810
1819
  # = The slide schedule class
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The generic app module
@@ -14,6 +15,25 @@
14
15
  # This module contains classes that are present in all applications.
15
16
  module LWS::Generic
16
17
 
18
+ def self.included(app_mod)
19
+ app_mod.module_eval do |mod|
20
+ # Set up the API using the configured or default endpoint for the current
21
+ # environment.
22
+ endpoints = mod.const_get(:ENDPOINT)
23
+ app_name = mod.name.demodulize.underscore.to_sym
24
+ @api = LWS.setup_api(LWS.config.endpoints[app_name] ||
25
+ endpoints[LWS.config.environment])
26
+
27
+ def self.api
28
+ @api
29
+ end
30
+
31
+ def self.endpoint
32
+ @api.url_prefix.to_s
33
+ end
34
+ end
35
+ end
36
+
17
37
  # = The generic model class
18
38
  #
19
39
  # This model forms the base for all LWS models.
@@ -205,7 +225,7 @@ module LWS::Generic
205
225
 
206
226
  # An API connection to Active Storage (with JSON request/response, but
207
227
  # without caching).
208
- @as_connection = Faraday.new(url: api.url_prefix) do |c|
228
+ @as_connection = Faraday.new(url: api.url_prefix, proxy: config.proxy) do |c|
209
229
  # Request
210
230
  c.request :json
211
231
  c.use LWS::Middleware::RequestHeaders, config.api_token
@@ -225,7 +245,7 @@ module LWS::Generic
225
245
 
226
246
  # A plain file connection to LWS (with token autnentication and caching but without
227
247
  # JSON request/response).
228
- @lws_connection = Faraday.new(url: api.url_prefix) do |c|
248
+ @lws_connection = Faraday.new(url: api.url_prefix, proxy: config.proxy) do |c|
229
249
  # Request
230
250
  if config.caching_object
231
251
  c.use FaradayMiddleware::Caching, config.caching_object
data/lib/lws/apps/maps.rb CHANGED
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The maps app module
@@ -14,17 +15,16 @@ module LWS::Maps
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the map app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Maps app
18
22
  ENDPOINT = { production: "https://maps.leftclick.cloud/",
19
23
  development: "https://maps-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:maps] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The presence app module
@@ -14,17 +15,16 @@ module LWS::Presence
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the presence app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Presence app
18
22
  ENDPOINT = { production: "https://presence.leftclick.cloud/",
19
23
  development: "https://presence-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:presence] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
@@ -220,6 +220,11 @@ module LWS::Presence
220
220
  # @return [String, nil] reference of the location in the remote database
221
221
  attribute :import_ref
222
222
 
223
+ # @!attribute invite_remarks
224
+ # @return [String, nil] the remarks to add when sending invites for
225
+ # appointments involving the location
226
+ attribute :invite_remarks
227
+
223
228
  # @!attribute journals
224
229
  # @return [Array<Journal>] the journal (entries) associated with the location
225
230
  has_many :journals, class: "LWS::Presence::Journal"
@@ -288,6 +293,11 @@ module LWS::Presence
288
293
  # @return [Array<Reader>] the (RFID/code/ID/...) readers linked to this location
289
294
  has_many :readers
290
295
 
296
+ # @!attribute reservation_required
297
+ # @return [Boolean] whether a reservation is required for checking in to
298
+ # this location
299
+ attribute :reservation_required
300
+
291
301
  # @!attribute status
292
302
  # @return ["available", "maintenance_cleaning",
293
303
  # "maintenance_technical", "reserved", "unavailable",
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The resource app module
@@ -14,17 +15,16 @@ module LWS::Resource
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the resource app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Resource app
18
22
  ENDPOINT = { production: "https://resource.leftclick.cloud/",
19
23
  development: "https://resource-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:resource] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
@@ -406,7 +406,7 @@ module LWS::Resource
406
406
  # @return [Forecast] the forecasts for the weather location
407
407
  has_many :forecasts,
408
408
  class_name: "LWS::Resource::Collection::WeatherLocation::Forecast",
409
- uri: "collections/:collection_id/weather_location/:weather_location_id/forecasts(/:id)"
409
+ uri: "collections/:collection_id/weather_locations/:weather_location_id/forecasts(/:id)"
410
410
 
411
411
  # @!attribute kind
412
412
  # @return ["unknown", "yahoo"] the kind of the weather location
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  # = The ticket app module
@@ -14,17 +15,16 @@ module LWS::Ticket
14
15
 
15
16
  # :nocov:
16
17
  unless defined? ENDPOINT
17
- # The API endpoint for the ticket app
18
+ # @!method self.endpoint
19
+ # @return [String] the actual API endpoint used to reach the app
20
+
21
+ # The API endpoint environment mapping for the Ticket app
18
22
  ENDPOINT = { production: "https://ticket.leftclick.cloud/",
19
23
  development: "https://ticket-dev.leftclick.cloud/" }
20
24
  end
21
25
  # :nocov:
22
26
 
23
- # @!visibility private
24
- def self.api
25
- LWS.setup_api(LWS.config.endpoints[:ticket] ||
26
- ENDPOINT[LWS.config.environment])
27
- end
27
+ include LWS::Generic
28
28
 
29
29
  ### Generic classes
30
30
 
data/lib/lws/config.rb CHANGED
@@ -1,13 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
10
-
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
11
11
 
12
12
  module LWS
13
13
 
@@ -20,7 +20,9 @@ module LWS
20
20
  # configured for the library to work properly!
21
21
  class Config < Hashie::Dash
22
22
  # The list of properties that can be set using a config file.
23
- VALID_FILE_PROPERTIES = [:api_token, :endpoints, :http_debug, :http_debug_headers, :json_debug]
23
+ VALID_FILE_PROPERTIES =
24
+ [:api_token, :endpoints, :environment, :http_debug, :http_debug_headers,
25
+ :json_debug, :proxy]
24
26
 
25
27
  #@!attribute api_token
26
28
  # @return [String, nil] the API token necessary to gain access
@@ -76,6 +78,14 @@ module LWS
76
78
  # (Rails logger, Logger, etc.)
77
79
  property :logger
78
80
 
81
+ #@!attribute proxy
82
+ # When passing a Hash, it should at least contain +:uri+ as key with
83
+ # a String or URI as value and optionally the +:user+ and +:password+
84
+ # keys with appropriate values.
85
+ # @return [Hash, String, URI] the proxy configuration, either as URL or
86
+ # as a Hash
87
+ property :proxy
88
+
79
89
  #@!attribute stubbing
80
90
  # @return [String] the path to a directory with stubbing fixtures
81
91
  # (setting this enables the default stubs)
@@ -121,9 +131,10 @@ module LWS
121
131
  # an environment key that selects the default environment (unless
122
132
  # overriden by the +LC_LWS_ENV+ environment variable).
123
133
  #
124
- # @example A elaborate configuration that sets the development environment as default, enables debugging and overrides an endpoint
134
+ # @example A elaborate configuration that sets the proxy and the development environment as default, enables debugging and overrides an endpoint
125
135
  # default:
126
136
  # environment: "development"
137
+ # proxy: "http://proxyserver:8080"
127
138
  #
128
139
  # production:
129
140
  # api_token: "my-prod-api-token"
@@ -144,11 +155,13 @@ module LWS
144
155
  def load_config_file(config_file, force_environment = nil)
145
156
  return false unless File.exist? config_file
146
157
  config_data = YAML.load_file(config_file)
158
+ default_config = config_data["default"] || {}
159
+
147
160
  self.environment = force_environment ||
148
161
  ENV["LC_LWS_ENV"] ||
149
162
  config_data.dig("default", "environment") ||
150
163
  self.environment
151
- config = config_data[self.environment.to_s] || {}
164
+ config = default_config.merge(config_data[self.environment.to_s] || {})
152
165
 
153
166
  config.each_pair do |key, value|
154
167
  unless VALID_FILE_PROPERTIES.include? key.to_sym
data/lib/lws/errors.rb CHANGED
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  module LWS
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  module LWS
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  module LWS
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  module LWS
@@ -1,12 +1,13 @@
1
1
  #
2
- # Copyright © 2016–2020 LeftClick B.V.
2
+ # Copyright © 2016–2021 LeftClick Web Services B.V.
3
3
  #
4
- # This software is property of LeftClick B.V. and cannot be redistributed
5
- # and/or modified without permission. The software or any of its parts
6
- # cannot be used for any other purposes than the LeftClick services and
7
- # only during a valid license subscription. For more information, please
8
- # contact LeftClick B.V. at: Schootense Dreef 20A, 5708 HZ Helmond, The
9
- # Netherlands, info@leftclick.eu, +3185-4444-004.
4
+ # This software is property of LeftClick Web Services B.V. and cannot be
5
+ # redistributed and/or modified without permission. The software or any
6
+ # of its parts cannot be used for any other purposes than the LeftClick
7
+ # services and only during a valid license subscription. For more
8
+ # information, please contact LeftClick Web Services B.V. at:
9
+ # Schootense Dreef 20A, 5708 HZ Helmond, The Netherlands,
10
+ # info@leftclick.eu, +3185-4444-004.
10
11
 
11
12
 
12
13
  module LWS