package pro.norbot.application; import com.vaadin.flow.component.page.AppShellConfigurator; import com.vaadin.flow.theme.Theme; import com.vaadin.flow.theme.lumo.Lumo; import javax.sql.DataSource; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.sql.init.SqlDataSourceScriptDatabaseInitializer; import org.springframework.boot.autoconfigure.sql.init.SqlInitializationProperties; import org.springframework.context.annotation.Bean; import pro.norbot.application.data.service.UserRepository; /** * The entry point of the Spring Boot application. * * Use the @PWA annotation make the application installable on phones, tablets * and some desktop browsers. * */ @SpringBootApplication @Theme(value = "norbot-website", variant = Lumo.DARK) public class Application implements AppShellConfigurator { public static void main(String[] args) { SpringApplication.run(Application.class, args); } // @Bean // SqlDataSourceScriptDatabaseInitializer dataSourceScriptDatabaseInitializer(DataSource dataSource, // SqlInitializationProperties properties, UserRepository repository) { // // This bean ensures the database is only initialized when empty // return new SqlDataSourceScriptDatabaseInitializer(dataSource, properties) { // @Override // public boolean initializeDatabase() { // if (repository.count() == 0L) { // return super.initializeDatabase(); // } // return false; // } // }; // } }