/** * Note we can rely on the StepContext properties already having been set at this point. * * @return global transaction timeout defined in step properties. default */ private int initStepTransactionTimeout() { logger.entering(sourceClass, "initStepTransactionTimeout"); Properties p = stepContext.getProperties(); int timeout = DEFAULT_TRAN_TIMEOUT_SECONDS; // default as per spec. if (p != null && !p.isEmpty()) { String propertyTimeOut = p.getProperty("javax.transaction.global.timeout"); if (logger.isLoggable(Level.FINE)) { logger.log(Level.FINE, "javax.transaction.global.timeout = {0}", propertyTimeOut==null ? "<null>" : propertyTimeOut); } if (propertyTimeOut != null && !propertyTimeOut.isEmpty()) { timeout = Integer.parseInt(propertyTimeOut, 10); } } logger.exiting(sourceClass, "initStepTransactionTimeout", timeout); return timeout; }
private void setContextProperties() { JSLProperties jslProps = step.getProperties(); if (jslProps != null) { for (Property property : jslProps.getPropertyList()) { Properties contextProps = stepContext.getProperties(); contextProps.setProperty(property.getName(), property.getValue()); } } // set up metrics stepContext.addMetric(MetricImpl.MetricType.READ_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.WRITE_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.READ_SKIP_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.PROCESS_SKIP_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.WRITE_SKIP_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.FILTER_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.COMMIT_COUNT, 0); stepContext.addMetric(MetricImpl.MetricType.ROLLBACK_COUNT, 0); ITransactionManagementService transMgr = ServicesManagerImpl.getInstance().getTransactionManagementService(); transactionManager = transMgr.getTransactionManager(stepContext); }