本文整理汇总了Java中org.drools.event.rule.DefaultAgendaEventListener类的典型用法代码示例。如果您正苦于以下问题:Java DefaultAgendaEventListener类的具体用法?Java DefaultAgendaEventListener怎么用?Java DefaultAgendaEventListener使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DefaultAgendaEventListener类属于org.drools.event.rule包,在下文中一共展示了DefaultAgendaEventListener类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: testAssertAndExecuteClinicalFacts
import org.drools.event.rule.DefaultAgendaEventListener; //导入依赖的package包/类
@Test
public void testAssertAndExecuteClinicalFacts() throws JAXBException {
// Arrange
StatefulKnowledgeSession sessionMock = mock(StatefulKnowledgeSession.class);
doReturn(sessionMock).when(sut).createStatefulKnowledgeSession();
String factModelStringMock = "factModelStringMock";
FactModel factModelMock = mock(FactModel.class);
when(
marshallerMock.unmarshalFromXml(FactModel.class,
factModelStringMock)).thenReturn(factModelMock);
XacmlResult xacmlResultMock = mock(XacmlResult.class);
when(factModelMock.getXacmlResult()).thenReturn(xacmlResultMock);
LinkedList<ClinicalFact> clinicalFactListMock = new LinkedList<>();
ClinicalFact clinicalFactMock1 = mock(ClinicalFact.class);
ClinicalFact clinicalFactMock2 = mock(ClinicalFact.class);
clinicalFactListMock.add(clinicalFactMock1);
clinicalFactListMock.add(clinicalFactMock2);
when(factModelMock.getClinicalFactList()).thenReturn(
clinicalFactListMock).thenReturn(clinicalFactListMock);
when(sessionMock.insert(clinicalFactMock1)).thenReturn(null);
when(sessionMock.insert(clinicalFactMock2)).thenReturn(null);
doNothing().when(sessionMock).addEventListener(
isA(DefaultAgendaEventListener.class));
when(sessionMock.fireAllRules()).thenReturn(0);
RuleExecutionContainer ruleExecutionContainerMock = mock(RuleExecutionContainer.class);
when(sessionMock.getGlobal("ruleExecutionContainer")).thenReturn(
ruleExecutionContainerMock);
String executionResponseContainerXMLStringMock = "executionResponseContainerXMLStringMock";
when(marshallerMock.marshal(ruleExecutionContainerMock)).thenReturn(
executionResponseContainerXMLStringMock);
// Act
AssertAndExecuteClinicalFactsResponse response = sut
.assertAndExecuteClinicalFacts(factModelStringMock);
// Assert
assertNotNull(response);
assertEquals(executionResponseContainerXMLStringMock,
response.getRuleExecutionResponseContainer());
}
开发者ID:bhits,项目名称:dss-api,代码行数:41,代码来源:RuleExecutionServiceImplTest.java
示例2: testAssertAndExecuteClinicalFacts_Marshaller_Throws_JAXBException2
import org.drools.event.rule.DefaultAgendaEventListener; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Test
public void testAssertAndExecuteClinicalFacts_Marshaller_Throws_JAXBException2()
throws JAXBException {
// Arrange
StatefulKnowledgeSession sessionMock = mock(StatefulKnowledgeSession.class);
doReturn(sessionMock).when(sut).createStatefulKnowledgeSession();
String factModelStringMock = "factModelStringMock";
FactModel factModelMock = mock(FactModel.class);
when(
marshallerMock.unmarshalFromXml(FactModel.class,
factModelStringMock)).thenReturn(factModelMock);
XacmlResult xacmlResultMock = mock(XacmlResult.class);
when(factModelMock.getXacmlResult()).thenReturn(xacmlResultMock);
LinkedList<ClinicalFact> clinicalFactListMock = new LinkedList<>();
ClinicalFact clinicalFactMock1 = mock(ClinicalFact.class);
ClinicalFact clinicalFactMock2 = mock(ClinicalFact.class);
clinicalFactListMock.add(clinicalFactMock1);
clinicalFactListMock.add(clinicalFactMock2);
when(factModelMock.getClinicalFactList()).thenReturn(
clinicalFactListMock).thenReturn(clinicalFactListMock);
when(sessionMock.insert(clinicalFactMock1)).thenReturn(null);
when(sessionMock.insert(clinicalFactMock2)).thenReturn(null);
doNothing().when(sessionMock).addEventListener(
isA(DefaultAgendaEventListener.class));
when(sessionMock.fireAllRules()).thenReturn(0);
RuleExecutionContainer ruleExecutionContainerMock = mock(RuleExecutionContainer.class);
when(sessionMock.getGlobal("ruleExecutionContainer")).thenReturn(
ruleExecutionContainerMock);
when(marshallerMock.marshal(ruleExecutionContainerMock)).thenThrow(
JAXBException.class);
// Act
AssertAndExecuteClinicalFactsResponse response = sut
.assertAndExecuteClinicalFacts(factModelStringMock);
// Assert
assertNotNull(response);
assertNull(response.getRuleExecutionResponseContainer());
}
开发者ID:bhits,项目名称:dss-api,代码行数:41,代码来源:RuleExecutionServiceImplTest.java
示例3: assertAndExecuteClinicalFacts
import org.drools.event.rule.DefaultAgendaEventListener; //导入依赖的package包/类
@Override
public AssertAndExecuteClinicalFactsResponse assertAndExecuteClinicalFacts(
FactModel factModel) {
RuleExecutionContainer executionResponseContainer = null;
final AssertAndExecuteClinicalFactsResponse assertAndExecuteResponse = new AssertAndExecuteClinicalFactsResponse();
String executionResponseContainerXMLString = null;
final Set<String> firedRuleNames = new HashSet<>();
final StatefulKnowledgeSession session = createStatefulKnowledgeSession();
try {
session.insert(factModel.getXacmlResult());
for (final ClinicalFact clinicalFact : factModel
.getClinicalFactList()) {
session.insert(clinicalFact);
}
session.addEventListener(new DefaultAgendaEventListener() {
@Override
public void afterActivationFired(AfterActivationFiredEvent event) {
super.afterActivationFired(event);
final Rule rule = event.getActivation().getRule();
firedRuleNames.add(rule.getName());
}
});
session.fireAllRules();
logger.debug(() -> "Fired rules: " + firedRuleNames.toString());
executionResponseContainer = (RuleExecutionContainer) session
.getGlobal("ruleExecutionContainer");
// Marshal rule execution response
executionResponseContainerXMLString = marshaller
.marshal(executionResponseContainer);
if (firedRuleNames.size() > 0) {
assertAndExecuteResponse.setRulesFired(firedRuleNames
.toString());
}
} catch (final Throwable e) {
logger.error(e.getMessage(), e);
} finally {
firedRuleNames.clear();
if (session != null) {
session.dispose();
}
}
assertAndExecuteResponse
.setRuleExecutionResponseContainer(executionResponseContainerXMLString);
return assertAndExecuteResponse;
}
开发者ID:bhits,项目名称:dss-api,代码行数:52,代码来源:RuleExecutionServiceImpl.java
示例4: assertAndExecuteClinicalFacts
import org.drools.event.rule.DefaultAgendaEventListener; //导入依赖的package包/类
@Override
public AssertAndExecuteClinicalFactsResponse assertAndExecuteClinicalFacts(
String factModelXmlString) {
RuleExecutionContainer executionResponseContainer = null;
FactModel factModel = new FactModel();
AssertAndExecuteClinicalFactsResponse assertAndExecuteResponse = new AssertAndExecuteClinicalFactsResponse();
String executionResponseContainerXMLString = null;
LOGGER.debug("factModelXmlString: " + factModelXmlString);
StatefulKnowledgeSession session = createStatefulKnowledgeSession();
try {
// unmarshall factmodel
factModel = marshaller.unmarshallFromXml(FactModel.class,
factModelXmlString);
session.insert(factModel.getXacmlResult());
for (ClinicalFact clinicalFact : factModel.getClinicalFactList()) {
session.insert(clinicalFact);
}
session.addEventListener(new DefaultAgendaEventListener() {
@Override
public void afterActivationFired(AfterActivationFiredEvent event) {
super.afterActivationFired(event);
final Rule rule = event.getActivation().getRule();
addRuleName(rule.getName());
}
});
session.fireAllRules();
LOGGER.debug("Fired rules: {}...", firedRuleNames);
LOGGER.debug("Fired rules: " + firedRuleNames);
executionResponseContainer = (RuleExecutionContainer) session
.getGlobal("ruleExecutionContainer");
// Marshal rule execution response
executionResponseContainerXMLString = marshaller
.marshall(executionResponseContainer);
} catch (Throwable e) {
LOGGER.error(e.getMessage(), e);
} finally {
firedRuleNames = "";
if (session != null) {
session.dispose();
}
}
assertAndExecuteResponse
.setRuleExecutionResponseContainer(executionResponseContainerXMLString);
return assertAndExecuteResponse;
}
开发者ID:tlin-fei,项目名称:ds4p,代码行数:58,代码来源:RuleExecutionServiceImpl.java
注:本文中的org.drools.event.rule.DefaultAgendaEventListener类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论