package com.bostechcorp.cbesb.common.util.macro;
import java.io.InputStream;
import com.bostechcorp.cbesb.common.util.EsbPathHelper;
import com.bostechcorp.cbesb.common.util.project.ProjectRuntimeUtil;
public class BuiltinMacroResolverImpl implements IMacroResolver {
private String projectName=null;
public BuiltinMacroResolverImpl(String projectName) {
this.projectName = projectName;
}
public boolean addMacro(String name, String value) {
return true;
}
public void loadMacro(InputStream macroFile) {
}
public String resolveMacro(String macroStr, String originalStr) {
if (macroStr.equalsIgnoreCase(MacroUtil.BUILTIN_CBESB_HOME)) {
return EsbPathHelper.getCbesbHomeDir();
} else if (macroStr.equalsIgnoreCase(MacroUtil.BUILTIN_CBESB_IDEWS)) {
return EsbPathHelper.getCbesbUiWorkSpace();
} else if (macroStr
.equalsIgnoreCase(MacroUtil.BUILTIN_CBESB_JBI_SA_PROJ)) {
return this.projectName;
} else if (macroStr.equalsIgnoreCase(MacroUtil.BUILTIN_CBESB_ESB_PROJ)) {
if (ProjectRuntimeUtil.isESBProj(this.projectName)) {
return this.projectName;
} else {
if (originalStr.contains("::")) {
return this.projectName + "::" + ProjectRuntimeUtil.
getDependentESBProjName(this.projectName);
} else {
return ProjectRuntimeUtil.
getDependentESBProjName(this.projectName);
}
}
}
return null;
}
/* (non-Javadoc)
* @see com.bostechcorp.cbesb.common.util.macro.IMacroResolver#clearMacro()
*/
public void clearMacro() {
}
}
|