当前位置: 首页>>代码示例>>Java>>正文


Java KieScanner类代码示例

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


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

示例1: doTest

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
@Test
public void doTest() throws InterruptedException {
	new UrlResource();
	KieServices kieServices = KieServices.Factory.get();
	ReleaseIdImpl releaseId = new ReleaseIdImpl(G, A, V);
	KieContainer kContainer = KieServices.Factory.get().newKieContainer(
			releaseId);
	KieScanner kScanner = kieServices.newKieScanner(kContainer);
	KieSession kSession = kContainer.newKieSession();
	kScanner.start(3000);
	// KieScanner will continue scanning the server looking for artifact
	// update
	while (true) {
		Thread.sleep(3000);
		kSession.fireAllRules();
	}
}
 
开发者ID:jesuino,项目名称:bpms6-examples,代码行数:18,代码来源:KieScannerTest.java

示例2: doTest

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
@Test
public void doTest() throws InterruptedException {
	//System.setProperty("kie.maven.settings.custom", value)
	KieServices kieServices = KieServices.Factory.get();
	ReleaseIdImpl releaseId = new ReleaseIdImpl(G, A, V);
	KieContainer kContainer = KieServices.Factory.get().newKieContainer(
			releaseId);
	KieScanner kScanner = kieServices.newKieScanner(kContainer);
	KieSession kSession = kContainer.newKieSession();
	kScanner.start(3000);
	// KieScanner will continue scanning the server looking for artifact
	// update
	while (true) {
		Thread.sleep(3000);
		kSession.fireAllRules();
	}
}
 
开发者ID:jesuino,项目名称:bpms6-examples,代码行数:18,代码来源:KieScannerRemoteTest.java

示例3: init

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
public void init () {
	LOG.info("[init]preparing stateful session...");
	KieServices ks = KieServices.Factory.get();

	String path = "";
	try {
		//OSGi support
		BundleContext bc = Activator.getBundleContext();
		if ( bc != null ) {
			Preconditions.checkNotNull(bc, "bundle not activated");
			URL url = bc.getBundle().getEntry(settingPath);
			path = FileLocator.toFileURL(url).getPath();
		} else {
			path = settingPath;
		}
	} catch (Exception e) {
		LOG.error("Failed to locate file:");
		LOG.error(Throwables.getStackTraceAsString(e));
	}
	
	System.setProperty("kie.maven.settings.custom", path);
	ReleaseId releaseId = ks.newReleaseId(groupId, artifactId, version);
	LOG.info(String.format("[init]initializing kie container with releaseId %s", releaseId));

	KieContainer kieContainer = ks.newKieContainer(releaseId);
	KieScanner kieScanner = ks.newKieScanner(kieContainer);
	kieScanner.scanNow();
	
	ksession = kieContainer.newKieSession(session);
	ksession.setGlobal("LOG", LOG);		
	LOG.info("[init]stateful rule engine prepared");
}
 
开发者ID:CodeGerm,项目名称:Pathogen,代码行数:33,代码来源:StatefulKieSession.java

示例4: init

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
public void init () {
	LOG.info("[init]preparing stateless session...");
	KieServices ks = KieServices.Factory.get();
	
	String path = "";
	try {
		//OSGi support
		BundleContext bc = Activator.getBundleContext();
		if ( bc != null ) {
			Preconditions.checkNotNull(bc, "bundle not activated");
			URL url = bc.getBundle().getEntry(settingPath);
			path = FileLocator.toFileURL(url).getPath();
		} else {
			path = settingPath;
		}
	} catch (Exception e) {
		LOG.error("Failed to locate file:");
		LOG.error(Throwables.getStackTraceAsString(e));
	}
	
	System.setProperty("kie.maven.settings.custom", path);
	ReleaseId releaseId = ks.newReleaseId(groupId, artifactId, version);
	LOG.info(String.format("[init]initializing kie container with releaseId %s", releaseId));
	
	KieContainer kieContainer = ks.newKieContainer(releaseId);
	KieScanner kieScanner = ks.newKieScanner(kieContainer);
	kieScanner.scanNow();
	
	ksession = kieContainer.newStatelessKieSession(session);
	ksession.setGlobal("LOG", LOG);

	LOG.info("[init]stateless rule engine prepared");
}
 
开发者ID:CodeGerm,项目名称:Pathogen,代码行数:34,代码来源:StatelessKieSession.java

示例5: doStop

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
/** {@inheritDoc} */
@Override
protected void doStop() {
    try {
        KieScanner scanner = ((KieScanner)(_perRequestRuntimeManager.getRuntimeEngine().getKieSession().getEnvironment().get("KieScanner")));
        if (scanner != null) {
            try {
                scanner.stop();
                scanner.shutdown();
            } catch (Throwable t) {
                CommonKnowledgeLogger.ROOT_LOGGER.problemStopppingKieScanner(t.getMessage());
            } finally {
                String releaseId = super.getModel().getManifest().getContainer().getReleaseId();
                if (releaseId != null && !releaseId.trim().equals("")) {
                    KieServices _kieServices = KieServices.Factory.get();
                    // fix for SWITCHYARD-2241
                    _kieServices.getRepository().removeKieModule(ContainerManifest.toReleaseId(releaseId));
                }
            }
        }
        _perRequestRuntimeManager.close();
    } finally {
        try {
            disposeSingletonRuntimeEngine();
        } finally {
            super.doStop();
        }
    }
}
 
开发者ID:jboss-integration,项目名称:fuse-bxms-integ,代码行数:30,代码来源:RulesExchangeHandler.java

示例6: getkScanner

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
public KieScanner getkScanner() {
    return kScanner;
}
 
开发者ID:Stratio,项目名称:Decision,代码行数:4,代码来源:DroolsInstace.java

示例7: setkScanner

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
public void setkScanner(KieScanner kScanner) {
    this.kScanner = kScanner;
}
 
开发者ID:Stratio,项目名称:Decision,代码行数:4,代码来源:DroolsInstace.java

示例8: newKieScanner

import org.kie.api.builder.KieScanner; //导入依赖的package包/类
@Override
public KieScanner newKieScanner(KieContainer kieContainer) {
    return kieServices.newKieScanner(kieContainer);
}
 
开发者ID:deepu105,项目名称:drools-demo,代码行数:5,代码来源:DefaultKieServicesBean.java


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