@Override public void wrap() { // Restore and clean class loaders (if needed, as CLs may be persistent) if (this.classLoaderToRestoreAtEnd != null) { if (Thread.currentThread().getContextClassLoader() instanceof PayloadClassLoader) { ((PayloadClassLoader) Thread.currentThread().getContextClassLoader()).tryClose(); } Thread.currentThread().setContextClassLoader(classLoaderToRestoreAtEnd); jqmlogger.trace("Class Loader was correctly restored"); } // Unregister MBean if (engineCallback != null && engineCallback.isJmxEnabled()) { try { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); mbs.unregisterMBean(name); } catch (Exception e) { jqmlogger.error("Could not unregister JobInstance JMX bean", e); } } }
@Override public void wrap() { // Unregister MBean if (this.cb != null && this.cb.isJmxEnabled()) { try { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); mbs.unregisterMBean(name); } catch (Exception e) { jqmlogger.error("Could not unregister JobInstance JMX bean", e); } } // Collect delivery files for (File f : this.deliveryDir.listFiles()) { try { this.engineApi.addDeliverable(f.getAbsolutePath(), f.getName()); } catch (IOException e) { jqmlogger.warn("Could not register delivery file " + f.getAbsolutePath(), e); } } this.deliveryDir.delete(); }
@Override public void wrap() { // Unregister MBean if (this.cb != null && this.cb.isJmxEnabled()) { try { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); mbs.unregisterMBean(name); } catch (Exception e) { jqmlogger.error("Could not unregister JobInstance JMX bean", e); } } // Collect delivery files for (File f : this.deliveryDir.listFiles()) { try { this.engineApi.addDeliverable(f.getAbsolutePath(), f.getName()); } catch (IOException e) { jqmlogger.warn("Could not register delivery file " + f.getAbsolutePath(), e); } } this.deliveryDir.delete(); }
JavaJobInstanceTracker(JobInstance job, JobRunnerCallback cb, ClassloaderManager clm, JobManager engineApi) { this.engineCallback = cb; this.clm = clm; this.job = job; this.engineApi = engineApi; // JMX if (cb != null && cb.isJmxEnabled()) { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try { name = new ObjectName(cb.getJmxBeanName()); mbs.registerMBean(this, name); } catch (Exception e) { throw new JobRunnerException("Could not create JMX bean for running job instance", e); } } }
@Override public void initialize(DbConn cnx) { // API user login = this.cb.getWebApiUser(cnx).getKey(); pwd = this.cb.getWebApiUser(cnx).getValue(); url = this.cb.getWebApiLocalUrl(cnx); // JMX if (cb != null && cb.isJmxEnabled()) { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try { name = new ObjectName(cb.getJmxBeanName()); mbs.registerMBean(this, name); } catch (Exception e) { throw new JobRunnerException("Could not create JMX bean for running job instance", e); } } // Temp work directory tmpDir = this.engineApi.getWorkDir(); // Delivery deliveryDir = new File(tmpDir.getAbsolutePath() + "_delivery"); if (!deliveryDir.mkdirs()) { throw new JobRunnerException("Could not create delivery directory"); } }
@Override public void initialize(DbConn cnx) { // API user login = this.cb.getWebApiUser(cnx).getKey(); pwd = this.cb.getWebApiUser(cnx).getValue(); url = this.cb.getWebApiLocalUrl(cnx); // JMX if (cb != null && cb.isJmxEnabled()) { MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); try { name = new ObjectName(cb.getJmxBeanName()); mbs.registerMBean(this, name); } catch (Exception e) { throw new JobRunnerException("Could not create JMX bean for running job instance", e); } } // Temp work directory tmpDir = this.engineApi.getWorkDir(); // Delivery deliveryDir = new File(tmpDir.getAbsolutePath() + "_delivery"); if (!deliveryDir.mkdirs()) { throw new JobRunnerException("Could not create delivery directory"); } }