// Path: java-modules-context-boot/src/main/java/io/github/tomdw/java/modules/context/boot/api/ModuleContextBooter.java
// public class ModuleContextBooter {
// 
// 	public static void boot() {
// 		ModuleContextRegistry.boot();
// 	}
// 
// 	public static void boot(GenericApplicationContext defaultApplicationContext) {
// 		ModuleContextRegistry.boot(defaultApplicationContext);
// 	}
// 
// 	public static void reset() {
// 		ModuleContextRegistry.reset();
// 	}
// 
// 	public static GenericApplicationContext getContextFor(Module module) {
// 		return ModuleContextRegistry.getContextFor(module);
// 	}
// 
// 	public static void main(String... commandLineArguments) {
// 		ModuleContextBooter.boot();
// 	}
// 
// }


import org.springframework.context.ApplicationContextInitializer;
import org.springframework.context.support.GenericApplicationContext;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import io.github.tomdw.java.modules.context.boot.api.ModuleContextBooter;
package io.github.tomdw.java.modules.context.boot.starter;



@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class JavaModulesContextBootApplicationContextInitializer implements ApplicationContextInitializer<GenericApplicationContext> {

	private static final System.Logger LOGGER = System.getLogger(JavaModulesContextBootApplicationContextInitializer.class.getName());

	@Override
	public void initialize(GenericApplicationContext applicationContext) {
		LOGGER.log(System.Logger.Level.INFO, "Spring Boot Starter for Java Module Context activated ...");
// Path: java-modules-context-boot/src/main/java/io/github/tomdw/java/modules/context/boot/api/ModuleContextBooter.java
// public class ModuleContextBooter {
// 
// 	public static void boot() {
// 		ModuleContextRegistry.boot();
// 	}
// 
// 	public static void boot(GenericApplicationContext defaultApplicationContext) {
// 		ModuleContextRegistry.boot(defaultApplicationContext);
// 	}
// 
// 	public static void reset() {
// 		ModuleContextRegistry.reset();
// 	}
// 
// 	public static GenericApplicationContext getContextFor(Module module) {
// 		return ModuleContextRegistry.getContextFor(module);
// 	}
// 
// 	public static void main(String... commandLineArguments) {
// 		ModuleContextBooter.boot();
// 	}
// 
// }


// Path: java-modules-context-boot-starter/src/main/java/io/github/tomdw/java/modules/context/boot/starter/JavaModulesContextBootApplicationContextInitializer.java
import org.springframework.context.ApplicationContextInitializer;
import org.springframework.context.support.GenericApplicationContext;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import io.github.tomdw.java.modules.context.boot.api.ModuleContextBooter;

package io.github.tomdw.java.modules.context.boot.starter;



@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class JavaModulesContextBootApplicationContextInitializer implements ApplicationContextInitializer<GenericApplicationContext> {

	private static final System.Logger LOGGER = System.getLogger(JavaModulesContextBootApplicationContextInitializer.class.getName());

	@Override
	public void initialize(GenericApplicationContext applicationContext) {
		LOGGER.log(System.Logger.Level.INFO, "Spring Boot Starter for Java Module Context activated ...");
		ModuleContextBooter.boot(applicationContext);