module AssMaintainer::InfoBase::ServerIb::EnterpriseServers::Support::OleRuntime

Ole runtime mixin

Public Class Methods

runtime_new(inst) click to toggle source

Make new runtime module +AssOle::Runtimes::Claster::(Agent|Wp)+ for access to +AssLauncher::Enterprise::Ole::(AgentConnection|WpConnection)+ @param inst [#runtime_type] #runtime_type must returns

+:wp+ or +:agent+ values

@return [Module]

# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 47
def self.runtime_new(inst)
  Module.new do
    is_ole_runtime inst.runtime_type
  end
end

Public Instance Methods

_connect(host_port, platform_require) click to toggle source
# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 53
def _connect(host_port, platform_require)
  runtime_run host_port, platform_require unless connected?
  begin
    authenticate unless authenticate?
  rescue
    runtime_stop
    raise
  end
  self
end
authenticate() click to toggle source
# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 64
def authenticate
  fail 'Abstract method'
end
authenticate?() click to toggle source
# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 68
def authenticate?
  fail 'Abstract method'
end
connected?() click to toggle source

True if connected

# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 24
def connected?
  respond_to?(:ole_runtime_get) && ole_runtime_get.runned?
end
disconnect() click to toggle source

Close connection with 1C:Enterprise server

# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 19
def disconnect
  runtime_stop
end

Private Instance Methods

runtime_run(host_port, platform_require) click to toggle source

Include and run {.runtime_new} runtime

# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 34
def runtime_run(host_port, platform_require)
  self.class.like_ole_runtime OleRuntime.runtime_new(self) unless\
    respond_to? :ole_runtime_get
  ole_runtime_get.run host_port, platform_require
end
runtime_stop() click to toggle source
# File lib/ass_maintainer/info_base/server_ib/enterprise_servers/support.rb, line 28
def runtime_stop
  ole_runtime_get.stop if respond_to? :ole_runtime_get
end