package com.taobao.easyweb.core.app.deploy.process; import com.taobao.easyweb.core.app.App; import com.taobao.easyweb.core.app.AppLogger; import com.taobao.easyweb.core.app.deploy.DeployException; import com.taobao.easyweb.core.app.deploy.DeployPhase; import com.taobao.easyweb.core.app.deploy.Deployer; import com.taobao.easyweb.core.app.scanner.ScanResult; import com.taobao.easyweb.core.groovy.groovyobject.GroovyObjectLoader; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.io.File; import java.util.List; /** * User: jimmey/shantong * DateTime: 13-4-25 ����2:55 */ @Deployer(DeployPhase.INIT_GROOVYOBJECT) @Component public class WebProcessor extends FileProcessor { @Resource private GroovyObjectLoader groovyObjectLoader; @Override public void process(ScanResult result) throws DeployException { App app = result.getApp(); List<String> groovyCode = result.getWebGroovyFiles(); try { /** * ��ʵ����groovy���� */ for (String file : groovyCode) { groovyObjectLoader.instanceObject(true, app, new File(file)); } } catch (Exception e) { AppLogger.getAppLogger(app.getAppKey(), "Groovy-Init").error(e); throw new DeployException("Init Error", e); } /** * �������ע�� */ for (String file : groovyCode) { try { groovyObjectLoader.autowiredObject(true, app, new File(file)); } catch (Exception e) { AppLogger.getAppLogger(app.getAppKey(), "Groovy-Autowired").error(e); } } } }