Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Copyright (c) 1997-2013, tinygroup.org (luo_guo@live.cn). Licensed under the GPL, Version 3.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.gnu.org/licenses/gpl.html Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -------------------------------------------------------------------------- 版权 (c) 1997-2013, tinygroup.org (luo_guo@live.cn). 本开源软件遵循 GPL 3.0 协议; 如果您不遵循此协议,则不被允许使用此文件。 你可以从下面的地址获取完整的协议文本 http://www.gnu.org/licenses/gpl.html
 
 package org.tinygroup.mda.flow.impl;
 
 
 public class EntityFlowFileVelocityCreatorImpl extends MDATemplateHelper implements
 
 	private final String DEFAULT_ADD_TEMPLATE = "/flowtemplate/flowAdd.mdatemplate";
 	private final String DEFAULT_UPDATE_TEMPLATE = "/flowtemplate/flowUpdate.mdatemplate";
 	private final String DEFAULT_DELETE_TEMPLATE = "/flowtemplate/flowDelete.mdatemplate";
 	private final String DEFAULT_QUERY_TEMPLATE = "/flowtemplate/flowQuery.mdatemplate";
 	private final String DEFAULT_VIEW_TEMPLATE = "/flowtemplate/flowQuery.mdatemplate";
 	private final String DEFAULT_SINGLE_QUERY_TEMPLATE = "/flowtemplate/flowDefaultQuery.mdatemplate";
 	private final String DEFAULT_VIEW_QUERY_TEMPLATE = "/flowtemplate/flowViewQuery.mdatemplate";
 	private final String ADD_TEMPLATE = "add_template";
 	private final String UPDATE_TEMPLATE = "update_template";
 	private final String DELETE_TEMPLATE = "delete_template";
 	private final String QUERY_TEMPLATE = "query_template";
 	private final String VIEW_TEMPLATE = "view_template";
 	private final String VIEW_QUERY_TEMPLATE = "view_query_template";
 	private final String SINGLE_QUERY_TEMPLATE = "single_query_template";
 	// private final String PAGING_TEMPLATE = "/flowPagingQuery.mdatemplate";
 	private static Logger logger = LoggerFactory
 
 	public void createFile(EntityModel modelBeanDetial beanFileUtil fileUtil) {
 		Context context = getContext(model,bean);
 		EntityField pField = null;
 		for(EntityGroup group:model.getGroups()){
 			for(EntityField field:group.getFields()){
 				if(field.isPrimary())
 					pField = field;
 			}
 		}
 		if(pField == null){
 			throw new RuntimeException("主键不存在");
 		}
 		context.put("primaryField"pField);
 		createViewDefaultFlowFile(fileUtilmodelcontext);
 		for (Operation op : model.getOperations()) {
 			createFlowFile(fileUtilmodelopcontext);
 		}
 		for(View view:model.getViews()){
 			createViewFlowFile(fileUtilmodelviewcontext);
 		}
 
 	}
 	private void createViewDefaultFlowFile(FileUtil fileUtilEntityModel model,
 			Context context) {
 		//String flowId = MDANameUtil.getFlowId(model);
 		String flowId = MDANameUtil.getFlowId(model.getName());
 		context.put("flowId"flowId);
 		// 获取模板路径
 		try {
 			String flowContent = ModelTransUtil
 					.parseFile(contexttemplatePath);
			fileUtil.writePageFlowFile(MDANameUtil.getFlowPackageName(model),
					flowIdflowContent);
catch (Exception e) {
			.errorMessage("为模型视图生成默认查询Flow时出错,模型:{0}"e,
					model.getName());
		}
	}
	private void createViewFlowFile(FileUtil fileUtilEntityModel model,
			View viewContext context) {
//		String flowId = MDANameUtil.getFlowId(model, view);
		String flowId = MDANameUtil.getFlowId(model.getName(), view.getName());
		context.put("flowId"flowId);
		context.put("pagePath", MDANameUtil.getPagePath(modelview.getName()));
		// 获取模板路径
		try {
			String flowContent = ModelTransUtil
					.parseFile(contexttemplatePath);
			fileUtil.writePageFlowFile(MDANameUtil.getFlowPackageName(model),
					flowIdflowContent);
catch (Exception e) {
			.errorMessage("为模型视图生成Flow时出错,模型:{0},视图:{1}"e,
					model.getName(), view.getName());
		}
	}
	private void createFlowFile(FileUtil fileUtilEntityModel model,
			Operation opContext context) {
//		String flowId = MDANameUtil.getFlowId(model, op);
		String flowId = MDANameUtil.getFlowId(model.getName(), op.getName());
		context.put("flowId"flowId);
		context.put("pagePath", MDANameUtil.getPagePath(modelop.getName()));
		// 获取模板路径
		String templatePath = getFlowTemplate(op.getType());
		try {
			String flowContent = ModelTransUtil
					.parseFile(contexttemplatePath);
			fileUtil.writePageFlowFile(MDANameUtil.getFlowPackageName(model),
					flowIdflowContent);
catch (Exception e) {
			.errorMessage("为模型操作生成Flow时出错,模型:{0},操作:{1}"e,
					model.getName(), op.getName());
		}
	}





设置上下文

Parameters:
bean
Returns:
	private Context getContext(EntityModel model,BeanDetial bean) {
		Context context = new ContextImpl();
		context.put("model"model);
		context.put("beanFullName", MDANameUtil.getBeanFullName(bean));
		context.put("bean"bean);
		context.put("beanVarName", MDANameUtil.getMDAName(bean.getName()));
		return context;
	}

获取不同操作对应的模板路径

Parameters:
opType
Returns:
	private String getFlowTemplate(String opType) {
		if (opType.equals(..toString())) {
else if (opType.equals(..toString())) {
else if (opType.equals(..toString())) {
else if (opType.equals(..toString())) {
else if (opType.equals(..toString())) {
		}
		return "";
	}
	public void createFile(ViewModel modelBeanDetial beanFileUtil fileUtil) {
	}
	public void setCreatorConfig(MDACreatorConfig creator,MDACreators creators) {
		setTemplateMap(ModelTransUtil.getTemplateMap(creator));
	}
	protected void initTemplate() {
	}
New to GrepCode? Check out our FAQ X