package org.yuanrong.m2s.function;
import org.yuanrong.services.runtime.Context;
import org.yuanrong.m2s.runtime.api.runtime.APIGTriggerEvent;
import org.yuanrong.m2s.runtime.api.runtime.APIGTriggerResponse;
import org.yuanrong.m2s.sdk.api.Handler;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class ${FunctionHandlerName} {
private volatile ApplicationContext applicationContext;
public APIGTriggerResponse handle(APIGTriggerEvent event, Context context) {
this.initializer(context);
return ((Handler) this.applicationContext.getBean("${FunctionHandlerClassName}")).handle(event, context);
}
public void initializer(Context context) {
if (this.applicationContext == null) {
synchronized (${FunctionHandlerName}.class) {
if (this.applicationContext == null) {
GenericXmlApplicationContext ctx = new GenericXmlApplicationContext();
${LoadConfigResources}
ctx.refresh();
this.applicationContext = ctx;
}
}
}
}
}