Shutdown this engine to stop all repositories created by calls to
#getRepository(String,java.util.Map), terminate any ongoing
background operations (such as sequencing), and reclaim any resources that were acquired by the repositories. This method
may be called multiple times, but only the first time has an effect.
Invoking this method does not preclude creating new
javax.jcr.Repository instances with future calls to
#getRepository(String,java.util.Map). Any caller using this method as part of an application shutdown process should take care to
cease invocations of
#getRepository(String,java.util.Map) prior to invoking this method.
This method returns immediately, even before the repositories have been shut down. However, the caller can simply call the
java.util.concurrent.Future#get() method on the returned
java.util.concurrent.Future to block until all repositories have shut down. Note that
the
java.util.concurrent.Future#get(long,java.util.concurrent.TimeUnit) method can be called to block for a maximum amount of time.