Class: ServiceKiosk::Kiosk
- Inherits:
-
Object
- Object
- ServiceKiosk::Kiosk
- Defined in:
- lib/kiosk.rb
Constant Summary collapse
- @@kiosks =
{}
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(id) ⇒ Kiosk
constructor
A new instance of Kiosk.
- #is_remote ⇒ Object
- #service(name) ⇒ Object
Constructor Details
#initialize(id) ⇒ Kiosk
Returns a new instance of Kiosk.
33 34 35 36 |
# File 'lib/kiosk.rb', line 33 def initialize(id) @id = id @is_remote = is_remote end |
Class Method Details
.gem_dir ⇒ Object
26 27 28 29 30 31 |
# File 'lib/kiosk.rb', line 26 def self.gem_dir spec = Gem::Specification.find_by_name("service_kiosk") #gem_root = spec.gem_dir #gem_lib = gem_root + "/lib" spec.gem_dir end |
.open(handle_raw) ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/kiosk.rb', line 11 def self.open(handle_raw) handle = handle_raw.upcase kiosk = @@kiosks[handle] if kiosk.nil? locator = ENV['KIOSK_' + handle] kiosk = @@kiosks[handle] = ServiceKiosk::Kiosk.new locator if locator end raise "No '#{handle}' kiosk found" unless kiosk kiosk end |
.register(handle, locator) ⇒ Object
22 23 24 |
# File 'lib/kiosk.rb', line 22 def self.register(handle, locator) @@kiosks[handle.upcase] = ServiceKiosk::Kiosk.new locator end |
Instance Method Details
#is_remote ⇒ Object
46 47 48 |
# File 'lib/kiosk.rb', line 46 def is_remote /^http/.match @id end |
#service(name) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/kiosk.rb', line 38 def service(name) if @is_remote ServiceKiosk::RemoteService.new @id, name else ServiceKiosk::InternalService.new @id, name end end |