23 #include <core/threading/thread_finalizer.h>
24 #include <plugins/openprs/aspect/openprs_inifin.h>
25 #include <plugins/openprs/aspect/openprs_kernel_manager.h>
26 #include <plugins/openprs/utils/openprs_comm.h>
27 #include <plugins/openprs/utils/openprs_server_proxy.h>
28 #include <utils/time/time.h>
46 kernel_timeout_sec_ = 30.;
59 openprs_thread = dynamic_cast<OpenPRSAspect *>(thread);
60 if (openprs_thread == NULL) {
62 "OpenPRSAspect, but RTTI says it "
69 openprs_thread->openprs_data_paths_,
70 openprs_thread->openprs_gdb_delay_);
74 openprs_kernel_mgr_->mp_host().c_str(),
75 openprs_kernel_mgr_->mp_port(),
76 openprs_server_proxy_);
77 }
catch (Exception &e) {
85 if ((now - &start) > kernel_timeout_sec_) {
87 throw Exception(
"OpenPRSAspect: timeout waiting for kernel startup");
93 "add (! (= @@FAWKES_MOD_DIR \"%s\"))",
96 "add (! (= @@FAWKES_HOST \"%s\"))",
97 fawkes_host_.c_str());
99 "add (! (= @@FAWKES_PORT \"%u\"))",
105 "add (! (= @@FAWKES_MP_NAME %s))",
114 OpenPRSAspect *openprs_thread;
115 openprs_thread = dynamic_cast<OpenPRSAspect *>(thread);
116 if (openprs_thread == NULL) {
118 "OpenPRSAspect, but RTTI says it "
123 openprs_kernel_mgr_->destroy_kernel(openprs_thread->openprs_kernel_name);
124 openprs_thread->finalize_OpenPRSAspect();
136 unsigned short fawkes_port,
137 LockPtr<OpenPRSKernelManager> &openprs_kernel_mgr,
141 fawkes_host_ = fawkes_host;
142 fawkes_port_ = fawkes_port;
143 openprs_kernel_mgr_ = openprs_kernel_mgr;
144 openprs_server_proxy_ = openprs_server_proxy;
145 openprs_mp_proxy_ = openprs_mp_proxy;
148 openprs_kernel_mgr_->mp_host().c_str(),
149 openprs_kernel_mgr_->mp_port(),
150 openprs_server_proxy_);
160 kernel_timeout_sec_ = timeout_sec;