// Path: java-modules-context-boot/src/main/java/io/github/tomdw/java/modules/context/boot/api/ModuleServiceProvider.java
// public class ModuleServiceProvider {
// 
// 	public static <SERVICETYPE> SERVICETYPE provide(Class<SERVICETYPE> servicetypeClass) {
// 		return ModuleContextRegistry.retrieveInstanceFromContext(servicetypeClass);
// 	}
// 
// 	public static <SERVICETYPE> SERVICETYPE provide(Class<SERVICETYPE> servicetypeClass, String serviceName) {
// 		return ModuleContextRegistry.retrieveInstanceFromContext(servicetypeClass, serviceName);
// 	}
// }
// 
// Path: samples/basicapplication/speaker/src/main/java/io/github/tomdw/java/modules/spring/samples/basicapplication/speaker/api/SpeakerService.java
// public interface SpeakerService {
// 	String getName();
// 	void speak(String message);
// }


import javax.inject.Named;
import io.github.tomdw.java.modules.context.boot.api.ModuleServiceProvider;
import io.github.tomdw.java.modules.spring.samples.basicapplication.speaker.api.SpeakerService;
package io.github.tomdw.java.modules.spring.samples.basicapplication.speaker.internal;



@Named
public class DefaultSpeakerService implements SpeakerService {

	public static SpeakerService provider() {
// Path: java-modules-context-boot/src/main/java/io/github/tomdw/java/modules/context/boot/api/ModuleServiceProvider.java
// public class ModuleServiceProvider {
// 
// 	public static <SERVICETYPE> SERVICETYPE provide(Class<SERVICETYPE> servicetypeClass) {
// 		return ModuleContextRegistry.retrieveInstanceFromContext(servicetypeClass);
// 	}
// 
// 	public static <SERVICETYPE> SERVICETYPE provide(Class<SERVICETYPE> servicetypeClass, String serviceName) {
// 		return ModuleContextRegistry.retrieveInstanceFromContext(servicetypeClass, serviceName);
// 	}
// }
// 
// Path: samples/basicapplication/speaker/src/main/java/io/github/tomdw/java/modules/spring/samples/basicapplication/speaker/api/SpeakerService.java
// public interface SpeakerService {
// 	String getName();
// 	void speak(String message);
// }


// Path: samples/basicapplication/speaker/src/main/java/io/github/tomdw/java/modules/spring/samples/basicapplication/speaker/internal/DefaultSpeakerService.java
import javax.inject.Named;
import io.github.tomdw.java.modules.context.boot.api.ModuleServiceProvider;
import io.github.tomdw.java.modules.spring.samples.basicapplication.speaker.api.SpeakerService;

package io.github.tomdw.java.modules.spring.samples.basicapplication.speaker.internal;



@Named
public class DefaultSpeakerService implements SpeakerService {

	public static SpeakerService provider() {
		return ModuleServiceProvider.provide(SpeakerService.class);