public static Object popRequestStack(String name, Environment env, ObjectWrapper objectWrapper) throws TemplateModelException {
HttpServletRequest request = getRequest(env);
Map<String, Object> context = null;
if (request == null) {
context = getContext(env);
}
return readRequestStack(name, true, request, context, env);
}
java类freemarker.template.ObjectWrapper的实例源码
ContextFtlUtil.java 文件源码
项目:scipio-erp
阅读 23
收藏 0
点赞 0
评论 0
ContextFtlUtil.java 文件源码
项目:scipio-erp
阅读 21
收藏 0
点赞 0
评论 0
/**
* Returns copy of request stack in request copyTargetType.
* <strong>WARN</strong>: if copyTargetType is null, no copy is made and unmodifiable list is returned.
* This list must be discarded by caller as soon as possible, before any more changes to the stack.
*/
public static Object getRequestStackAsList(String name, LangFtlUtil.TemplateValueTargetType copyTargetType, Environment env, ObjectWrapper objectWrapper) throws TemplateModelException {
HttpServletRequest request = getRequest(env);
Map<String, Object> context = null;
if (request == null) {
context = getContext(env);
}
return getRequestStackAsList(name, request, context, env, objectWrapper, copyTargetType);
}
RequestStackMethod.java 文件源码
项目:scipio-erp
阅读 17
收藏 0
点赞 0
评论 0
@SuppressWarnings("unchecked")
protected Object execGetAsList(List args) throws TemplateModelException {
if (args == null || args.size() < 1 || args.size() > 2) {
throw new TemplateModelException("Invalid number of arguments (expected: 1-2)");
}
TemplateModel nameModel = (TemplateModel) args.get(0);
if (!(nameModel instanceof TemplateScalarModel)) {
throw new TemplateModelException("First argument not an instance of TemplateScalarModel (string)");
}
String stackName = LangFtlUtil.getAsStringNonEscaping(((TemplateScalarModel) nameModel));
boolean origList = false;
if (args.size() >= 2) {
TemplateModel listTypeModel = (TemplateModel) args.get(1);
String listType = LangFtlUtil.getAsStringNonEscaping(((TemplateScalarModel) listTypeModel));
if ("orig".equals(listType)) {
origList = true;
}
}
Environment env = CommonFtlUtil.getCurrentEnvironment();
ObjectWrapper objectWrapper = GetRequestVarMethod.getResultObjectWrapper(env);
Object res = ContextFtlUtil.getRequestStackAsList(stackName,
(origList ? null : LangFtlUtil.TemplateValueTargetType.SIMPLEMODEL), env, objectWrapper);
return LangFtlUtil.wrap(res, objectWrapper);
}
GetStyleNamesByPrefixMethod.java 文件源码
项目:scipio-erp
阅读 20
收藏 0
点赞 0
评论 0
@SuppressWarnings("unchecked")
@Override
public Object exec(List args) throws TemplateModelException {
if (args == null || args.size() != 2) {
throw new TemplateModelException("Invalid number of arguments (expected: 2)");
}
String styleString = LangFtlUtil.getAsStringNonEscaping(((TemplateScalarModel) args.get(0)));
styleString = TemplateFtlUtil.getPlainClassArgNames(styleString);
String prefix = LangFtlUtil.getAsStringNonEscaping(((TemplateScalarModel) args.get(1)));
String[] names = StringUtils.split(styleString, ' ');
// NOTE: For emergency/safety reasons, use the current wrapper, which MAY be escaping.
// style strings contain only simple characters anyway.
ObjectWrapper objectWrapper = LangFtlUtil.getCurrentObjectWrapper();
SimpleSequence res = new SimpleSequence(names.length, objectWrapper);
for(String name : names) {
if (name.startsWith(prefix)) {
res.add(name);
}
}
// redundant
//return LangFtlUtil.wrap(res, objectWrapper);
return res;
}
WrappingOptions.java 文件源码
项目:scipio-erp
阅读 26
收藏 0
点赞 0
评论 0
public WrappingOptions(String targetWrapperName, ObjectWrapper targetWrapper, RewrapMode rewrapMode, ObjectWrapper curObjectWrapper) {
super();
this.targetWrapperName = targetWrapperName;
this.targetWrapper = targetWrapper;
this.rewrapMode = rewrapMode;
this.curObjectWrapper = curObjectWrapper;
}
ToSimpleMapMethod.java 文件源码
项目:scipio-erp
阅读 15
收藏 0
点赞 0
评论 0
@SuppressWarnings("unchecked")
@Override
public Object exec(List args) throws TemplateModelException {
if (args == null || args.size() != 1) {
throw new TemplateModelException("Invalid number of arguments (expected: 1)");
}
Environment env = CommonFtlUtil.getCurrentEnvironment();
TemplateModel object = (TemplateModel) args.get(0);
ObjectWrapper objectWrapper = LangFtlUtil.getCurrentObjectWrapper(env);
return LangFtlUtil.toSimpleMap(object, null, objectWrapper);
}
CopyObjectMethod.java 文件源码
项目:scipio-erp
阅读 16
收藏 0
点赞 0
评论 0
@SuppressWarnings("unchecked")
@Override
public Object exec(List args) throws TemplateModelException {
if (args == null || args.size() < 1 || args.size() > 2) {
throw new TemplateModelException("Invalid number of arguments (expected: 1-2)");
}
Environment env = CommonFtlUtil.getCurrentEnvironment();
TemplateModel object = (TemplateModel) args.get(0);
ObjectWrapper objectWrapper = LangFtlUtil.getCurrentObjectWrapper(env);
return LangFtlUtil.copyObject(object, null, objectWrapper);
}
LangFtlUtil.java 文件源码
项目:scipio-erp
阅读 53
收藏 0
点赞 0
评论 0
/**
* Checks if the wrapper is a special escaping wrapper, and if so,
* returns a non-escaping one.
*/
public static ObjectWrapper getNonEscapingObjectWrapper(ObjectWrapper objectWrapper) {
if (objectWrapper instanceof ScipioExtendedObjectWrapper) {
return FreeMarkerWorker.getDefaultOfbizWrapper();
} else {
return objectWrapper;
}
}
LangFtlUtil.java 文件源码
项目:scipio-erp
阅读 26
收藏 0
点赞 0
评论 0
/**
* Checks if the current env wrapper is a special escaping wrapper, and if so,
* returns a non-escaping one.
*/
public static ObjectWrapper getNonEscapingObjectWrapper(Environment env) {
ObjectWrapper objectWrapper = env.getObjectWrapper();
if (objectWrapper instanceof ScipioExtendedObjectWrapper) {
return FreeMarkerWorker.getDefaultOfbizWrapper();
} else {
return objectWrapper;
}
}
LangFtlUtil.java 文件源码
项目:scipio-erp
阅读 23
收藏 0
点赞 0
评论 0
/**
* Checks if the current env wrapper is a special escaping wrapper, and if so,
* returns a non-escaping one.
*/
public static ObjectWrapper getNonEscapingObjectWrapper() {
Environment env = FreeMarkerWorker.getCurrentEnvironment();
ObjectWrapper objectWrapper = env.getObjectWrapper();
if (objectWrapper instanceof ScipioExtendedObjectWrapper) {
return FreeMarkerWorker.getDefaultOfbizWrapper();
} else {
return objectWrapper;
}
}