Class: MendixBridge::BackendServer
- Inherits:
-
Object
- Object
- MendixBridge::BackendServer
- Defined in:
- lib/mendix_bridge/backend_server.rb
Constant Summary collapse
- INVENTORY_FILES =
{ "/inventory/project-tree.json" => ["inventory", "project-tree.json"], "/inventory/element-details.json" => ["inventory", "element-details.json"], "/inventory/dependencies.json" => ["inventory", "dependencies.json"], "/inventory/mendix-project.json" => ["mendix-project.json"], "/inventory/ui-layouts.json" => ["inventory", "ui-layouts.json"] }.freeze
Instance Attribute Summary collapse
-
#port ⇒ Object
readonly
Returns the value of attribute port.
Instance Method Summary collapse
-
#initialize(inventory_dir:, web_root:, mxcli:, bind: "127.0.0.1", port: 4567, logger: nil, run_cmd: nil) ⇒ BackendServer
constructor
A new instance of BackendServer.
- #shutdown ⇒ Object
- #start ⇒ Object
Constructor Details
#initialize(inventory_dir:, web_root:, mxcli:, bind: "127.0.0.1", port: 4567, logger: nil, run_cmd: nil) ⇒ BackendServer
Returns a new instance of BackendServer.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/mendix_bridge/backend_server.rb', line 26 def initialize( inventory_dir:, web_root:, mxcli:, bind: "127.0.0.1", port: 4567, logger: nil, run_cmd: nil ) @inventory_dir = File.(inventory_dir) @web_root = File.(web_root) @mxcli = File.(mxcli) @layout_mutex = Mutex.new @app_mutex = Mutex.new @app_log = [] @app_pid = nil @app_type = nil # :docker | :direct @docker_running = false @auth_user = nil @run_cmd_override = run_cmd @xas_log = [] @xas_mutex = Mutex.new @database_mutex = Mutex.new @xas_proxy_enabled = false @xas_target_port = nil validate! @server = WEBrick::HTTPServer.new( BindAddress: bind, Port: port, Logger: logger || WEBrick::Log.new(File::NULL), AccessLog: [] ) @port = @server.listeners.first.addr[1] mount_routes end |
Instance Attribute Details
#port ⇒ Object (readonly)
Returns the value of attribute port.
24 25 26 |
# File 'lib/mendix_bridge/backend_server.rb', line 24 def port @port end |
Instance Method Details
#shutdown ⇒ Object
66 67 68 |
# File 'lib/mendix_bridge/backend_server.rb', line 66 def shutdown @server.shutdown end |
#start ⇒ Object
62 63 64 |
# File 'lib/mendix_bridge/backend_server.rb', line 62 def start @server.start end |