1 package com.atlassian.activeobjects.spi;
2
3 import com.atlassian.tenancy.api.Tenant;
4
5 import javax.annotation.Nonnull;
6 import java.util.concurrent.ExecutorService;
7
8 public interface InitExecutorServiceProvider {
9 /**
10 * Create an executor service in which to run AO init i.e. DDL and upgrade tasks.
11 *
12 * {@link com.atlassian.activeobjects.spi.DefaultInitExecutorServiceProvider} provides a standard implementation and
13 * should be used unless the product has special snowflake requirements e.g. HSQLDB executing in current thread.
14 *
15 * @param tenant context for the data source
16 */
17 @Nonnull
18 ExecutorService initExecutorService(@Nonnull Tenant tenant);
19 }