• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Rule类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.kie.api.definition.rule.Rule的典型用法代码示例。如果您正苦于以下问题:Java Rule类的具体用法?Java Rule怎么用?Java Rule使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Rule类属于org.kie.api.definition.rule包,在下文中一共展示了Rule类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: getRulenames

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
public List<String> getRulenames() {
  List<String> result = new ArrayList<>();
  try {
    KiePackage kpkg = kbase.getKiePackage(packageName);
    if (kpkg != null) {
      Collection<Rule> rules = kpkg.getRules();
      if (rules != null) {
        for (Rule rule : rules) {
          result.add(rule.getName());
        }
      }
    }
    return result;
  } catch (Exception ex) {
    logger.error(ex.getMessage());
    throw new ServiceException(ex);
  }
}
 
开发者ID:edgexfoundry,项目名称:support-rulesengine,代码行数:19,代码来源:RuleEngine.java


示例2: setup

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Before
public void setup() {
    KieServices kieServices = KieServices.Factory.get();

    KieContainer kContainer = kieServices.getKieClasspathContainer();
    Results verifyResults = kContainer.verify();
    for (Message m : verifyResults.getMessages()) {
        LOG.debug("Kie container message: {}", m);
    }

    KieBase kieBase = kContainer.getKieBase();
    LOG.debug("Created kieBase");

    for ( KiePackage kp : kieBase.getKiePackages() ) {
        for (Rule rule : kp.getRules()) {
            LOG.debug("kp " + kp + " rule " + rule.getName());
        }
    }

    session = kieBase.newKieSession();
    LOG.info(session.getGlobals().toString());
    Logger kieLogger = LoggerFactory.getLogger(this.getClass());
   // session.setGlobal("logger",kieLogger);
}
 
开发者ID:sabre1041,项目名称:iot-ocp,代码行数:25,代码来源:BaseTest.java


示例3: afterMatchFired

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Override
public void afterMatchFired(AfterMatchFiredEvent event) {
  if(log.isDebugEnabled()){
    super.afterMatchFired(event);
    Rule rule = event.getMatch().getRule();

    String ruleName = rule.getName();

    Map<String, Object> ruleMetaDataMap = rule.getMetaData();

    matchList.add(event.getMatch());
    StringBuilder sb = new StringBuilder("Rule fired: " + ruleName);

    if (ruleMetaDataMap.size() > 0) {
        sb.append("\n  With [" + ruleMetaDataMap.size() + "] meta-data:");
        for (String key : ruleMetaDataMap.keySet()) {
            sb.append("\n    key=" + key + ", value="
                    + ruleMetaDataMap.get(key));
        }
    }
    log.debug(sb.toString());
  }
}
 
开发者ID:folio-org,项目名称:raml-module-builder,代码行数:24,代码来源:RuleTracker.java


示例4: getMessage

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Override
public String getMessage()
{
	StringBuilder sb = new StringBuilder("Exception executing consequence for ");
	Rule rule = null;

	if (activation != null && (rule = activation.getRule()) != null)
	{
		String packageName = rule.getPackageName();
		String ruleName = rule.getName();
		sb.append("rule \"").append(ruleName).append("\" in ").append(packageName);
	}
	else
	{
		sb.append("rule, name unknown");
	}
	sb.append(": ").append(super.getMessage());
	return sb.toString();
}
 
开发者ID:Apelon-VA,项目名称:ISAAC,代码行数:20,代码来源:DroolsException.java


示例5: afterMatchFired

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Override
public void afterMatchFired(AfterMatchFiredEvent event) {
    Rule rule = event.getMatch().getRule();

    String ruleName = rule.getName();
    Map<String, Object> ruleMetaDataMap = rule.getMetaData();

    addActivation(new Activation(ruleName));
    StringBuilder sb = new StringBuilder("Rule fired: " + ruleName);

    if (ruleMetaDataMap.size() > 0) {
        sb.append("\n  With [" + ruleMetaDataMap.size() + "] meta-data:");
        for (String key : ruleMetaDataMap.keySet()) {
            sb.append("\n    key=" + key + ", value="
                    + ruleMetaDataMap.get(key));
        }
    }

    log.debug(sb.toString());
}
 
开发者ID:gratiartis,项目名称:qzr,代码行数:21,代码来源:TrackingAgendaEventListener.java


示例6: knowledgeBaseDetails

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * Return a string containing the packages used to build the knowledge base.
 */
public static String knowledgeBaseDetails(KieBase kbase) {
    if (kbase == null) {
        return "Knowledge Base is null.";
    } else {
        StringBuilder sb = new StringBuilder(
                "Knowledge base built from the following packages:");
        Collection<KiePackage> packages = kbase
                .getKiePackages();
        for (KiePackage kp : packages) {
            sb.append("\n    Package: [" + kp.getName() + "]");
            for (Rule rule : kp.getRules()) {
                sb.append("\n        Rule: [" + rule.getName() + "]");
            }
        }
        return sb.toString();
    }
}
 
开发者ID:gratiartis,项目名称:qzr,代码行数:21,代码来源:DroolsUtil.java


示例7: afterMatchFired

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Override
public void afterMatchFired(AfterMatchFiredEvent event) {
    Rule rule = event.getMatch().getRule();

    String ruleName = rule.getName();
    Map<String, Object> ruleMetaDataMap = rule.getMetaData();

    activationList.add(new Activation(ruleName));
    StringBuilder sb = new StringBuilder("Rule fired: " + ruleName);

    if (ruleMetaDataMap.size() > 0) {
        sb.append("\n  With [" + ruleMetaDataMap.size() + "] meta-data:");
        for (String key : ruleMetaDataMap.keySet()) {
            sb.append("\n    key=" + key + ", value="
                    + ruleMetaDataMap.get(key));
        }
    }

    log.debug(sb.toString());
}
 
开发者ID:deepu105,项目名称:drools-demo,代码行数:21,代码来源:TrackingAgendaEventListener.java


示例8: inspectUserEntityRules

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Test
public void inspectUserEntityRules() {
    Collection<KiePackage> kiePackages = kieSession.getKieBase().getKiePackages();
    for (KiePackage kiePackage : kiePackages) {
        if (kiePackage.getRules().size() > 0) {
            System.out.println(kiePackage.getRules().size() + " rule(s) found in package " + kiePackage.getName() + ":");
            for (Rule rule : kiePackage.getRules()) {
                inspectRule((RuleImpl) rule);
                System.out.println();
            }
        }
    }
}
 
开发者ID:jSquirrel,项目名称:nutforms,代码行数:14,代码来源:RulesInspectionTest.java


示例9: testInspectRule

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * Tests functionality of {@link Inspector#inspectBase(KieBase)}
 */
@Test
public void testInspectRule() {
    Inspector inspector = new Inspector();
    Map<String, Set<cz.cvut.fel.nutforms.rules.metamodel.Rule>> rules = inspector.inspectBase(kieSession.getKieBase());
    // toDo: add some asserts
}
 
开发者ID:jSquirrel,项目名称:nutforms,代码行数:10,代码来源:RulesInspectionTest.java


示例10: init

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@PostConstruct
public void init() {
	KieServices kieServices = KieServices.Factory.get();
	KieContainer kContainer = kieServices.getKieClasspathContainer();
       KieBaseConfiguration kieBaseConf = kieServices.newKieBaseConfiguration();
	kieBaseConf.setOption( EventProcessingOption.STREAM );
       kieBase = kContainer.newKieBase(kieBaseConf);
       
       for ( KiePackage kp : kieBase.getKiePackages() ) {
       	for (Rule rule : kp.getRules()) {
       		LOG.info("kp " + kp + " rule " + rule.getName());
       	}
       }
       
       LOG.info("Creating kieSession");
       KieSessionConfiguration config = kieServices.newKieSessionConfiguration();
	config.setOption( ClockTypeOption.get("pseudo") );
       kieSession = kieBase.newKieSession(config, null);
       
       LOG.info("Pupulating globals");
       kieSession.setGlobal("LOG", RE_LOG);
       
       sessionClock = kieSession.getSessionClock();
       LOG.info("init() sessionClock: {}", sessionClock.getCurrentTime());
       
       final long nowMS = System.currentTimeMillis();
       sessionClock.advanceTime(nowMS, TimeUnit.MILLISECONDS);
       LOG.info("init() sessionClock advanced, sessionClock: {}", sessionClock.getCurrentTime());
       
       kieSession.fireAllRules(MAX_RULES_THRESHOLD);
       LOG.info("init() onetime fireAllRules");
       
       LOG.info("init() end.");
}
 
开发者ID:tarilabs,项目名称:reex2014,代码行数:35,代码来源:PseudoRealtimeRuleEngine.java


示例11: getAllRuleNames

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * Get all of the rule names present in this executor (rule names come from the compiled .drl file)
 */
public List<String> getAllRuleNames()
{
	ArrayList<String> results = new ArrayList<>();
	
	for (KnowledgePackage kp : getKnowledgePackages())
	{
		for (Rule r : kp.getRules())
		{
			results.add(r.getName());
		}
	}
	
	return results;
}
 
开发者ID:Apelon-VA,项目名称:ISAAC,代码行数:18,代码来源:DroolsExecutor.java


示例12: generateEventLoggingListener

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * Generates a listener for logging match events.
 * 
 * @return The listener for logging match events.
 */
protected DefaultAgendaEventListener generateEventLoggingListener()
{
	return( new DefaultAgendaEventListener()
	{
		@Override
		public void beforeMatchFired( final BeforeMatchFiredEvent event )
		{
			final Rule rule = event.getMatch().getRule();
			System.out.println( rule.getName() );
		}
	} );
}
 
开发者ID:viridian1138,项目名称:SimpleAlgebra_V2,代码行数:18,代码来源:Elem.java


示例13: afterMatchFired

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * Whenever a rule's LHS matches and causes the rule to activate, this
 * method will publish the name of that rule to the Stomp message broker,
 * using the {@link SimpMessagingTemplate}.
 */
@Override
public void afterMatchFired(AfterMatchFiredEvent event) {
    Rule rule = event.getMatch().getRule();

    System.out.println("Publishing: " + rule.getName());

    AgendaEventMessage msg = new AgendaEventMessage(rule.getName());

    this.template.convertAndSend("/queue/agendaevents/", msg);
}
 
开发者ID:gratiartis,项目名称:qzr,代码行数:16,代码来源:PublishingAgendaEventListener.java


示例14: afterMatchFired

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
@Override
public void afterMatchFired(AfterMatchFiredEvent event) {
    Rule rule = event.getMatch().getRule();

    StringBuilder sb = new StringBuilder("Rule fired: " + rule.getName());

    log.debug(sb.toString());
}
 
开发者ID:gratiartis,项目名称:qzr,代码行数:9,代码来源:LoggingAgendaEventListener.java


示例15: kbaseDetails

import org.kie.api.definition.rule.Rule; //导入依赖的package包/类
/**
 * 
 * @return A String detailing the packages and rules in this knowledge base.
 */
public static String kbaseDetails(KieBase kbase) {
    StringBuilder sb = new StringBuilder();
    for (KiePackage p : kbase.getKiePackages()) {
        sb.append("\n  Package : " + p.getName());
        for (Rule r : p.getRules()) {
            sb.append("\n    Rule: " + r.getName());
        }
    }
    return "Knowledge base built with packages: " + sb.toString();
}
 
开发者ID:gratiartis,项目名称:qzr,代码行数:15,代码来源:DroolsUtil.java



注:本文中的org.kie.api.definition.rule.Rule类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java MyContainerManager类代码示例发布时间:2022-05-22
下一篇:
Java Point2f类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap