+
+ final FastThreadPoolExecutor fte = new FastThreadPoolExecutor(1, submitQueueSize, "Shard[" + prefix + "]");
+ fte.setRejectedExecutionHandler(CountingRejectedExecutionHandler.newCallerWaitsPolicy());
+ this.executor = MoreExecutors.listeningDecorator(fte);
+ }
+
+ public static InMemoryDOMDataTreeShard create(final DOMDataTreeIdentifier id,
+ final ExecutorService dataTreeChangeExecutor,
+ final int maxDataChangeListenerQueueSize) {
+ return new InMemoryDOMDataTreeShard(id, dataTreeChangeExecutor,
+ maxDataChangeListenerQueueSize, DEFAULT_SUBMIT_QUEUE_SIZE);