use of org.drools.compiler.kproject.models.RuleTemplateModelImpl in project drools by kiegroup.
the class RuleTemplateConverter method marshal.
public void marshal(Object value, HierarchicalStreamWriter writer, MarshallingContext context) {
RuleTemplateModelImpl rtm = (RuleTemplateModelImpl) value;
writer.addAttribute("dtable", rtm.getDtable());
writer.addAttribute("template", rtm.getTemplate());
writer.addAttribute("row", "" + rtm.getRow());
writer.addAttribute("col", "" + rtm.getCol());
}
use of org.drools.compiler.kproject.models.RuleTemplateModelImpl in project drools by kiegroup.
the class KBaseConverter method unmarshal.
public Object unmarshal(HierarchicalStreamReader reader, final UnmarshallingContext context) {
final KieBaseModelImpl kBase = new KieBaseModelImpl();
String kbaseName = reader.getAttribute("name");
kBase.setNameForUnmarshalling(kbaseName != null ? kbaseName : StringUtils.uuid());
kBase.setDefault("true".equals(reader.getAttribute("default")));
String eventMode = reader.getAttribute("eventProcessingMode");
if (eventMode != null) {
kBase.setEventProcessingMode(EventProcessingOption.determineEventProcessingMode(eventMode));
}
String equalsBehavior = reader.getAttribute("equalsBehavior");
if (equalsBehavior != null) {
kBase.setEqualsBehavior(EqualityBehaviorOption.determineEqualityBehavior(equalsBehavior));
}
String mutability = reader.getAttribute("mutability");
if (mutability != null) {
kBase.setMutability(KieBaseMutabilityOption.determineMutability(mutability));
}
String declarativeAgenda = reader.getAttribute("declarativeAgenda");
if (declarativeAgenda != null) {
kBase.setDeclarativeAgenda(DeclarativeAgendaOption.determineDeclarativeAgenda(declarativeAgenda));
}
String sequential = reader.getAttribute("sequential");
if (sequential != null) {
kBase.setSequential(SequentialOption.determineSequential(sequential));
}
String sessionsPool = reader.getAttribute("sessionsPool");
if (sessionsPool != null) {
kBase.setSessionsPool(SessionsPoolOption.get(Integer.parseInt(sessionsPool)));
}
String betaRangeIndex = reader.getAttribute("betaRangeIndex");
if (betaRangeIndex != null) {
kBase.setBetaRangeIndexOption(BetaRangeIndexOption.determineBetaRangeIndex(betaRangeIndex));
}
String scope = reader.getAttribute("scope");
if (scope != null) {
kBase.setScope(scope.trim());
}
String pkgs = reader.getAttribute("packages");
if (pkgs != null) {
for (String pkg : pkgs.split(",")) {
kBase.addPackage(pkg.trim());
}
}
String includes = reader.getAttribute("includes");
if (includes != null) {
for (String include : includes.split(",")) {
kBase.addInclude(include.trim());
}
}
readNodes(reader, new AbstractXStreamConverter.NodeReader() {
public void onNode(HierarchicalStreamReader reader, String name, String value) {
if ("ksession".equals(name)) {
KieSessionModelImpl kSession = readObject(reader, context, KieSessionModelImpl.class);
kBase.getRawKieSessionModels().put(kSession.getName(), kSession);
kSession.setKBase(kBase);
} else if ("ruleTemplate".equals(name)) {
RuleTemplateModelImpl ruleTemplate = readObject(reader, context, RuleTemplateModelImpl.class);
kBase.getRawRuleTemplates().add(ruleTemplate);
ruleTemplate.setKBase(kBase);
}
// @TODO we don't use support nested includes
// if ( "includes".equals( name ) ) {
// for ( String include : readList( reader ) ) {
// kBase.addInclude( include );
// }
// }
}
});
return kBase;
}
use of org.drools.compiler.kproject.models.RuleTemplateModelImpl in project drools by kiegroup.
the class RuleTemplateConverter method unmarshal.
public Object unmarshal(HierarchicalStreamReader reader, final UnmarshallingContext context) {
RuleTemplateModelImpl rtm = new RuleTemplateModelImpl();
rtm.setDtable(reader.getAttribute("dtable"));
rtm.setTemplate(reader.getAttribute("template"));
rtm.setRow(Integer.parseInt(reader.getAttribute("row")));
rtm.setCol(Integer.parseInt(reader.getAttribute("col")));
return rtm;
}
Aggregations