⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 droolslinebreakpoint.java

📁 jboss规则引擎
💻 JAVA
字号:
package org.drools.ide.debug.core;

import java.util.HashMap;
import java.util.Map;

import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jdt.internal.debug.core.breakpoints.JavaLineBreakpoint;

public class DroolsLineBreakpoint extends JavaLineBreakpoint {
	
	/**
	 * Default constructor is required for the breakpoint manager
	 * to re-create persisted breakpoints. After instantiating a breakpoint,
	 * the <code>setMarker(...)</code> method is called to restore
	 * this breakpoint's attributes.
	 */
	public DroolsLineBreakpoint() {
	}
	
	/**
	 * Constructs a line breakpoint on the given resource at the given
	 * line number.
	 * 
	 * @param resource file on which to set the breakpoint
	 * @param lineNumber line number of the breakpoint
	 * @throws CoreException if unable to create the breakpoint
	 */
	public DroolsLineBreakpoint(IResource resource, int lineNumber)
			throws CoreException {
   		super(resource, getRuleClassName(resource, lineNumber), 
			getRuleLineNumber(resource, lineNumber), -1, -1, 0, true, 
			createAttributesMap(lineNumber), IDroolsDebugConstants.DROOLS_MARKER_TYPE);
	}
	
	private static Map createAttributesMap(int lineNumber) {
		Map map = new HashMap();
		map.put(IDroolsDebugConstants.DRL_LINE_NUMBER, new Integer(lineNumber));
		return map;
	}
	
	public int getDRLLineNumber() {
		return getMarker().getAttribute(IDroolsDebugConstants.DRL_LINE_NUMBER, -1);
	}
	
	public String getModelIdentifier() {
		return IDroolsDebugConstants.ID_DROOLS_DEBUG_MODEL;
	}
	
	private static String getRuleClassName(IResource resource, int lineNumber) {
		String ruleName = "Hello World";
		return "Rule_" + ruleName.replaceAll("[^\\w$]", "_") + "_0";
	}
	
	private static int getRuleLineNumber(IResource resource, int lineNumber) {
		// TODO
		return 7;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -