Réalisation indexer en cours
This commit is contained in:
parent
6f81acfb4c
commit
7798189414
16 changed files with 440 additions and 36 deletions
|
|
@ -31,6 +31,7 @@ import org.kie.server.services.api.KieServerRegistry;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -116,6 +117,7 @@ public class DroolsChtijbugRulesExecutionService {
|
|||
|
||||
RuleBasePackage ruleBasePackage = this.ruleBasePackages.get(kci.getResource().getContainerId());
|
||||
if (ruleBasePackage != null) {
|
||||
Date startTime = new Date();
|
||||
ChtijbugHistoryListener chtijbugHistoryListener = new ChtijbugHistoryListener();
|
||||
RuleBaseSession session = ruleBasePackage.createRuleBaseSession(sessionMaxNumberRulesToExecute, chtijbugHistoryListener, sessionName);
|
||||
if (kieServerAddOnElement != null) {
|
||||
|
|
@ -129,11 +131,23 @@ public class DroolsChtijbugRulesExecutionService {
|
|||
|
||||
}
|
||||
result = session.fireAllRulesAndStartProcess(chtijbugObjectRequest.getObjectRequest(), processID);
|
||||
session.dispose();
|
||||
Date stopTime = new Date();
|
||||
SessionContext sessionContext = this.messageHandlerResolver.getSessionFromHistoryEvent(chtijbugHistoryListener.getHistoryEventLinkedList());
|
||||
sessionContext.setGroupID(kci.getResource().getReleaseId().getGroupId());
|
||||
sessionContext.setArtefactID(kci.getResource().getReleaseId().getArtifactId());
|
||||
sessionContext.setVersion(kci.getResource().getReleaseId().getVersion());
|
||||
sessionContext.setContainerId(kci.getContainerId());
|
||||
String serverName = System.getProperty("org.kie.server.id");
|
||||
if (serverName!= null){
|
||||
sessionContext.setServerName(serverName);
|
||||
}
|
||||
sessionContext.setStartTime(startTime);
|
||||
sessionContext.setStopTime(stopTime);
|
||||
chtijbugObjectRequest.setSessionLogging(sessionContext);
|
||||
chtijbugObjectRequest.setObjectRequest(result);
|
||||
logger.debug("Returning OK response with content '{}'", chtijbugObjectRequest.getObjectRequest());
|
||||
session.dispose();
|
||||
|
||||
}
|
||||
return chtijbugObjectRequest;
|
||||
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package org.chtijbug.drools;
|
|||
import org.chtijbug.drools.logging.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
@ -23,6 +24,20 @@ public class SessionContext {
|
|||
|
||||
private Fact fact;
|
||||
|
||||
private String groupID;
|
||||
|
||||
private String artefactID;
|
||||
|
||||
private String version;
|
||||
|
||||
private String containerId;
|
||||
|
||||
private String serverName;
|
||||
|
||||
private Date startTime;
|
||||
|
||||
private Date stopTime;
|
||||
|
||||
public SessionExecution getSessionExecution() {
|
||||
return sessionExecution;
|
||||
}
|
||||
|
|
@ -83,15 +98,72 @@ public class SessionContext {
|
|||
this.fireAllRulesExecution = fireAllRulesExecution;
|
||||
}
|
||||
|
||||
public Date getStartTime() {
|
||||
return startTime;
|
||||
}
|
||||
|
||||
public void setStartTime(Date startTime) {
|
||||
this.startTime = startTime;
|
||||
}
|
||||
|
||||
public Date getStopTime() {
|
||||
return stopTime;
|
||||
}
|
||||
|
||||
public void setStopTime(Date stopTime) {
|
||||
this.stopTime = stopTime;
|
||||
}
|
||||
|
||||
public String getGroupID() {
|
||||
return groupID;
|
||||
}
|
||||
|
||||
public void setGroupID(String groupID) {
|
||||
this.groupID = groupID;
|
||||
}
|
||||
|
||||
public String getArtefactID() {
|
||||
return artefactID;
|
||||
}
|
||||
|
||||
public void setArtefactID(String artefactID) {
|
||||
this.artefactID = artefactID;
|
||||
}
|
||||
|
||||
public String getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
public void setVersion(String version) {
|
||||
this.version = version;
|
||||
}
|
||||
|
||||
public String getContainerId() {
|
||||
return containerId;
|
||||
}
|
||||
|
||||
public void setContainerId(String containerId) {
|
||||
this.containerId = containerId;
|
||||
}
|
||||
|
||||
public String getServerName() {
|
||||
return serverName;
|
||||
}
|
||||
|
||||
public void setServerName(String serverName) {
|
||||
this.serverName = serverName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
final StringBuffer sb = new StringBuffer("SessionContext{");
|
||||
sb.append("sessionExecution=").append(sessionExecution);
|
||||
sb.append(", processExecution=").append(processExecution);
|
||||
sb.append(", ruleExecution=").append(ruleExecution);
|
||||
sb.append(", fireAllRulesExecution=").append(fireAllRulesExecution);
|
||||
sb.append(", fact=").append(fact);
|
||||
sb.append("groupID='").append(groupID).append('\'');
|
||||
sb.append(", artefactID='").append(artefactID).append('\'');
|
||||
sb.append(", version='").append(version).append('\'');
|
||||
sb.append(", containerId='").append(containerId).append('\'');
|
||||
sb.append(", serverName='").append(serverName).append('\'');
|
||||
sb.append(", startTime=").append(startTime);
|
||||
sb.append(", stopTime=").append(stopTime);
|
||||
sb.append('}');
|
||||
return sb.toString();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class HistoryEvent implements Serializable {
|
|||
private Long ruleBaseID;
|
||||
private Long sessionId;
|
||||
private DroolsChtijbugException droolsChtijbugException;
|
||||
private ArrayList<KnowledgeResource> knowledgeResources = new ArrayList<>();
|
||||
private ArrayList<KnowledgeResource> knowledgeResources = new ArrayList<KnowledgeResource>();
|
||||
|
||||
/**
|
||||
* Mandatory for GWT Serialization
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ import org.chtijbug.drools.runtimeevent.AbstractMemoryEventHandlerStrategy;
|
|||
|
||||
|
||||
public class DeleteFactEventStrategy implements AbstractMemoryEventHandlerStrategy {
|
||||
;
|
||||
|
||||
|
||||
@Override
|
||||
public void handleMessageInternally(HistoryEvent historyEvent, SessionContext sessionContext) {
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ public class InsertedFactEventStrategy implements AbstractMemoryEventHandlerStra
|
|||
fact.setRealFact(insertedFactHistoryEvent.getInsertedObject().getRealObject());
|
||||
fact.setModificationDate(insertedFactHistoryEvent.getDateEvent());
|
||||
fact.setFactType(FactType.INSERTED);
|
||||
fact.setEventid(insertedFactHistoryEvent.getEventID());
|
||||
RuleExecution existingInSessionRuleExecution = null;
|
||||
if (insertedFactHistoryEvent.getRuleName() == null) { // inserted from a session
|
||||
SessionExecution sessionExecution = sessionContext.getSessionExecution();
|
||||
|
|
|
|||
|
|
@ -38,12 +38,14 @@ public class UpdatedFactEventStrategy implements AbstractMemoryEventHandlerStrat
|
|||
factOldValue.setRealFact(updatedFactHistoryEvent.getObjectOldValue().getRealObject());
|
||||
factOldValue.setModificationDate(updatedFactHistoryEvent.getDateEvent());
|
||||
factOldValue.setFactType(FactType.UPDATED_OLDVALUE);
|
||||
factOldValue.setEventid(updatedFactHistoryEvent.getEventID());
|
||||
Fact factNewValue = new Fact();
|
||||
factNewValue.setFullClassName(updatedFactHistoryEvent.getObjectNewValue().getFullClassName());
|
||||
factNewValue.setObjectVersion(updatedFactHistoryEvent.getObjectNewValue().getObjectVersion());
|
||||
factNewValue.setRealFact(updatedFactHistoryEvent.getObjectNewValue().getRealObject());
|
||||
factNewValue.setModificationDate(updatedFactHistoryEvent.getDateEvent());
|
||||
factNewValue.setFactType(FactType.UPDATED_NEWVALUE);
|
||||
factNewValue.setEventid(updatedFactHistoryEvent.getEventID());
|
||||
RuleExecution existingInSessionRuleExecution = null;
|
||||
if (updatedFactHistoryEvent.getRuleName() == null) { // updated from a session
|
||||
SessionExecution sessionExecution = sessionContext.getSessionExecution();
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public class KnowledgeSessionFireAllRulesAndStartProcessEventStrategy implements
|
|||
if (sessionFireAllRulesAndStartProcess.getInputObject() != null) {
|
||||
DroolsFactObject inputObject = sessionFireAllRulesAndStartProcess.getInputObject();
|
||||
Fact inputFact = new Fact();
|
||||
inputFact.setEventid(sessionFireAllRulesAndStartProcess.getEventID());
|
||||
inputFact.setEventid(sessionContext.getSessionExecution().getStartEventID());
|
||||
inputFact.setFactType(FactType.INPUTDATA);
|
||||
inputFact.setFullClassName(inputObject.getFullClassName());
|
||||
inputFact.setRealFact(inputObject.getRealObject());
|
||||
|
|
@ -46,7 +46,7 @@ public class KnowledgeSessionFireAllRulesAndStartProcessEventStrategy implements
|
|||
if (sessionFireAllRulesAndStartProcess.getOutputObject() != null) {
|
||||
DroolsFactObject outputObject = sessionFireAllRulesAndStartProcess.getOutputObject();
|
||||
Fact outputFact = new Fact();
|
||||
outputFact.setEventid(sessionFireAllRulesAndStartProcess.getEventID());
|
||||
outputFact.setEventid(sessionContext.getSessionExecution().getStopEventID());
|
||||
outputFact.setFactType(FactType.OUTPUTDATA);
|
||||
outputFact.setFullClassName(outputObject.getFullClassName());
|
||||
outputFact.setRealFact(outputObject.getRealObject());
|
||||
|
|
|
|||
Loading…
Add table
editor.link_modal.header
Reference in a new issue