use of org.drools.workbench.screens.scenariosimulation.client.enums.GridWidget in project drools-wb by kiegroup.
the class AbstractDMNDataManagementStrategyTest method setup.
@Before
public void setup() {
super.setup();
factModelTupleLocal = new FactModelTuple(visibleFactsLocal, hiddenFactsLocal);
factModelTreeHolderlocal = new AbstractDataManagementStrategy.ResultHolder();
factModelTreeHolderlocal.setFactModelTuple(factModelTupleLocal);
when(dmnTypeServiceMock.retrieveFactModelTuple(any(), anyString())).thenReturn(factModelTupleLocal);
modelLocal.getSettings().setDmnFilePath(DMN_FILE_PATH);
abstractDMNDataManagementStrategySpy = spy(new AbstractDMNDataManagementStrategy(mock(EventBus.class)) {
@Override
protected void retrieveFactModelTuple(TestToolsView.Presenter testToolsPresenter, ScenarioSimulationContext context, GridWidget gridWidget) {
}
{
this.currentPath = mock(Path.class);
this.model = modelLocal;
this.factModelTreeHolder = factModelTreeHolderlocal;
this.dmnFilePath = DMN_FILE_PATH;
}
});
}
use of org.drools.workbench.screens.scenariosimulation.client.enums.GridWidget in project drools-wb by kiegroup.
the class AbstractDataManagementStrategy method storeData.
/**
* Store data in required target objects
*/
public void storeData(final FactModelTuple factModelTuple, final TestToolsView.Presenter testToolsPresenter, final ScenarioSimulationContext context, final GridWidget gridWidget) {
// Instantiate a map of already assigned properties
final Map<String, List<List<String>>> propertiesToHide = getPropertiesToHide(context.getAbstractScesimGridModelByGridWidget(gridWidget));
final SortedMap<String, FactModelTree> visibleFacts = factModelTuple.getVisibleFacts();
final Map<Boolean, List<Map.Entry<String, FactModelTree>>> partitionBy = visibleFacts.entrySet().stream().collect(Collectors.partitioningBy(stringFactModelTreeEntry -> stringFactModelTreeEntry.getValue().isSimple()));
final SortedMap<String, FactModelTree> complexDataObjects = new TreeMap<>(partitionBy.get(false).stream().collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)));
final SortedMap<String, FactModelTree> simpleDataObjects = new TreeMap<>(partitionBy.get(true).stream().collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)));
// Update context
SortedMap<String, FactModelTree> dataObjectFieldsMap = new TreeMap<>();
dataObjectFieldsMap.putAll(visibleFacts);
dataObjectFieldsMap.putAll(factModelTuple.getHiddenFacts());
context.setDataObjectFieldsMap(dataObjectFieldsMap);
// Update model
// Avoid Collections.emptySortedMap() due to "The method emptySortedMap() is undefined for the type Collections" error
SortedMap<String, FactModelTree> instanceFieldsMap = new TreeMap<>();
SortedMap<String, FactModelTree> simpleJavaTypeInstanceFieldsMap = new TreeMap<>();
if (GridWidget.SIMULATION.equals(gridWidget)) {
instanceFieldsMap = getInstanceMap(complexDataObjects);
simpleJavaTypeInstanceFieldsMap = getInstanceMap(simpleDataObjects);
Set<String> dataObjectsInstancesName = new HashSet<>(visibleFacts.keySet());
dataObjectsInstancesName.addAll(instanceFieldsMap.keySet());
context.setDataObjectsInstancesName(dataObjectsInstancesName);
Set<String> simpleJavaTypeInstancesName = new HashSet<>(simpleDataObjects.keySet());
simpleJavaTypeInstancesName.addAll(simpleJavaTypeInstanceFieldsMap.keySet());
context.getAbstractScesimGridModelByGridWidget(gridWidget).setSimpleJavaTypeInstancesName(simpleJavaTypeInstancesName);
}
// Update right panel
TestToolsPresenterData testToolsPresenterData = new TestToolsPresenterData(complexDataObjects, simpleDataObjects, instanceFieldsMap, simpleJavaTypeInstanceFieldsMap, factModelTuple.getHiddenFacts(), propertiesToHide, gridWidget);
testToolsPresenter.populateTestTools(testToolsPresenterData);
}
use of org.drools.workbench.screens.scenariosimulation.client.enums.GridWidget in project drools-wb by kiegroup.
the class ScenarioSimulationEditorPresenter method setTestTools.
public void setTestTools(TestToolsView.Presenter presenter) {
context.setTestToolsPresenter(presenter);
presenter.setEventBus(eventBus);
GridWidget gridWidget = scenarioBackgroundGridWidget.isSelected() ? GridWidget.BACKGROUND : GridWidget.SIMULATION;
dataManagementStrategy.populateTestTools(presenter, context, gridWidget);
}
Aggregations