private static final Logger LOG = LoggerFactory.getLogger(ITMBatchingUtils.class);
- private static final int DEF_BATCH_SIZE = 1000;
- private static final int DEF_PERIODICITY = 500;
private static final BlockingQueue<ActionableResource> DEFAULT_OPERATIONAL_SHARD_BUFFER_Q
= new LinkedBlockingQueue<>();
dataBroker = broker;
}
- public static void registerWithBatchManager(DataBroker broker) {
+ public static void registerWithBatchManager(DataBroker broker,Integer batchSize,Integer batchInterval) {
ITMBatchingUtils.setBroker(broker);
- Integer batchSize = Integer.getInteger("batch.size", DEF_BATCH_SIZE);
- Integer batchInterval = Integer.getInteger("batch.wait.time", DEF_PERIODICITY);
ResourceBatchingManager resBatchingManager = ResourceBatchingManager.getInstance();
resBatchingManager.registerBatchableResource("ITM-DEFAULT-OPERATIONAL", DEFAULT_OPERATIONAL_SHARD_BUFFER_Q,
new DefaultBatchHandler(broker, LogicalDatastoreType.OPERATIONAL,
private final ItmConfig itmConfig;
private final JobCoordinator jobCoordinator;
private final ItmProvider.ItmProviderEOSListener itmProviderEOSListener;
+ public Integer batchSize;
+ public Integer batchInterval;
+
@Inject
public ItmProvider(DataBroker dataBroker,
this.dpnTepStateCache = dpnTepStateCache;
this.itmStatusProvider = itmDiagStatusProvider;
this.tunnelStateCache = tunnelStateCache;
- ITMBatchingUtils.registerWithBatchManager(this.dataBroker);
this.itmConfig = itmConfig;
this.jobCoordinator = jobCoordinator;
try {
createIdPool();
registerEntityForOwnership();
+ initialiseBatchingManager();
LOG.info("ItmProvider Started");
} catch (Exception ex) {
itmStatusProvider.reportStatus(ex);
}
}
+ public void initialiseBatchingManager() {
+ batchSize = ITMConstants.BATCH_SIZE;
+ LOG.info("entered initialse");
+ if (itmConfig.getBatchSize() != null) {
+ batchSize = itmConfig.getBatchSize();
+ }
+ batchInterval = ITMConstants.PERIODICITY;
+ if (itmConfig.getBatchInterval() != null) {
+ batchInterval = itmConfig.getBatchInterval();
+ }
+ ITMBatchingUtils.registerWithBatchManager(this.dataBroker,this.batchSize,this.batchInterval);
+ }
+
public void createDefaultTransportZone(ItmConfig itmConfigObj) {
jobCoordinator.enqueueJob(ITMConstants.DEFAULT_TRANSPORT_ZONE, () -> {
boolean defTzEnabled = itmConfigObj.isDefTzEnabled();