@SuppressWarnings({ "unchecked", "rawtypes" }) protected void configureRuntimeOnTaskService(InternalTaskService internalTaskService, RuntimeEngine engine) { if (internalTaskService != null) { ExternalTaskEventListener listener = new ExternalTaskEventListener(); if (internalTaskService instanceof EventService) { ((EventService)internalTaskService).registerTaskEventListener(listener); } // register task listeners if any RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); for (TaskLifeCycleEventListener taskListener : factory.getTaskListeners()) { ((EventService<TaskLifeCycleEventListener>)internalTaskService).registerTaskEventListener(taskListener); } if (engine != null && engine instanceof Disposable) { ((Disposable)engine).addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (runtime.getTaskService() instanceof EventService) { ((EventService)runtime.getTaskService()).clearTaskEventListeners();; } } }); } } }
@Override public void close() { if (singleton == null) { return; } super.close(); // dispose singleton session only when manager is closing try { removeRuntimeFromTaskService(); } catch (UnsupportedOperationException e) { logger.debug("Exception while closing task service, was it initialized? {}", e.getMessage()); } if (this.singleton instanceof Disposable) { ((Disposable) this.singleton).dispose(); } factory.close(); this.singleton = null; }
if (!_sessionIds.contains(sessionId)) { _sessionIds.add(sessionId); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (name != null && channel != null) { session.registerChannel(name, channel); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { final KieScanner scanner = _kieServices.newKieScanner(kieContainer); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) {
if (!_sessionIds.contains(sessionId)) { _sessionIds.add(sessionId); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (name != null && channel != null) { session.registerChannel(name, channel); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { final KieScanner scanner = _kieServices.newKieScanner(kieContainer); disposable.addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) {
return; ((Disposable) runtime).dispose();
@SuppressWarnings({ "unchecked", "rawtypes" }) protected void configureRuntimeOnTaskService(InternalTaskService internalTaskService, RuntimeEngine engine) { if (internalTaskService != null) { ExternalTaskEventListener listener = new ExternalTaskEventListener(); if (internalTaskService instanceof EventService) { ((EventService)internalTaskService).registerTaskEventListener(listener); } // register task listeners if any RegisterableItemsFactory factory = environment.getRegisterableItemsFactory(); for (TaskLifeCycleEventListener taskListener : factory.getTaskListeners()) { ((EventService<TaskLifeCycleEventListener>)internalTaskService).registerTaskEventListener(taskListener); } if (engine != null && engine instanceof Disposable) { ((Disposable)engine).addDisposeListener(new DisposeListener() { @Override public void onDispose(RuntimeEngine runtime) { if (runtime.getTaskService() instanceof EventService) { ((EventService)runtime.getTaskService()).clearTaskEventListeners();; } } }); } } }
return; ((Disposable) runtime).dispose();
runtime, fireUntilHaltLoader); ((Disposable) runtime.getWrapped()) .addDisposeListener(fireUntilHalt); _fireUntilHaltThread = fireUntilHalt.startThread();
@Override public void disposeRuntimeEngine(RuntimeEngine runtime) { if (isClosed()) { throw new IllegalStateException("Runtime manager " + identifier + " is already closed"); } removeLocalRuntime(runtime); if (runtime instanceof Disposable && environment.usePersistence()) { ((Disposable) runtime).dispose(); } }
@Override public void close() { if (singleton == null) { return; } super.close(); // dispose singleton session only when manager is closing try { removeRuntimeFromTaskService(); } catch (UnsupportedOperationException e) { logger.debug("Exception while closing task service, was it initialized? {}", e.getMessage()); } if (this.singleton instanceof Disposable) { ((Disposable) this.singleton).dispose(); } factory.close(); this.singleton = null; }
return; ((Disposable) runtime).dispose();
return; ((Disposable) runtime).dispose();