Skip to content

Commit

Permalink
more simulation ui experiments, wip
Browse files Browse the repository at this point in the history
  • Loading branch information
1azyman committed Jan 4, 2023
1 parent ef0478f commit ca318be
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,14 @@
<div class="mb-4" wicket:id="widget"/>
</div>
</div>
<h3>Available tags</h3>
<div class="row">
<div class="col-12">
<form wicket:id="form">
<div wicket:id="table"/>
</form>
</div>
</div>
</wicket:extend>
</body>
</html>
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,19 @@
import java.util.List;
import java.util.stream.Collectors;

import com.evolveum.midpoint.web.page.admin.home.PageDashboard;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SimulationMetricType;
import com.evolveum.midpoint.gui.impl.component.data.column.PrismPropertyWrapperColumn;
import com.evolveum.midpoint.web.component.data.column.LinkColumn;

import com.evolveum.midpoint.web.component.data.column.ObjectNameColumn;

import com.evolveum.midpoint.web.component.util.SelectableBean;

import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.RestartResponseException;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider;
import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.model.IModel;
Expand All @@ -26,18 +33,27 @@
import com.evolveum.midpoint.authentication.api.authorization.AuthorizationAction;
import com.evolveum.midpoint.authentication.api.authorization.PageDescriptor;
import com.evolveum.midpoint.authentication.api.authorization.Url;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.util.WebModelServiceUtils;
import com.evolveum.midpoint.gui.impl.component.box.SmallBox;
import com.evolveum.midpoint.gui.impl.component.box.SmallBoxData;
import com.evolveum.midpoint.gui.impl.component.search.Search;
import com.evolveum.midpoint.gui.impl.component.search.SearchFactory;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.security.api.AuthorizationConstants;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.component.data.BoxedTablePanel;
import com.evolveum.midpoint.web.component.data.ObjectDataProvider;
import com.evolveum.midpoint.web.component.form.MidpointForm;
import com.evolveum.midpoint.web.page.admin.PageAdmin;
import com.evolveum.midpoint.web.page.error.PageError404;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.web.util.OnePageParameterEncoder;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SimulationMetricType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SimulationResultType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.TagType;

/**
* Created by Viliam Repan (lazyman).
Expand Down Expand Up @@ -67,6 +83,8 @@ public class PageSimulationResult extends PageAdmin {
private static final String ID_WIDGETS = "widgets";

private static final String ID_WIDGET = "widget";
private static final String ID_FORM = "form";
private static final String ID_TABLE = "table";

private IModel<SimulationResultType> model;

Expand Down Expand Up @@ -137,6 +155,26 @@ protected void onClickLink(AjaxRequestTarget target) {
}
};
add(widgets);

MidpointForm form = new MidpointForm(ID_FORM);
add(form);

IModel<Search<TagType>> search = new LoadableModel<>(false) {

@Override
protected Search<TagType> load() {
return SearchFactory.createSearch(TagType.class, PageSimulationResult.this);
}
};

// todo columnsd
List<IColumn<SelectableBean<TagType>, String>> columns = new ArrayList<>();
columns.add(new ObjectNameColumn<>(createStringResource("ObjectType.name")));
columns.add(new PropertyColumn(createStringResource("ObjectType.description"), "value.description"));

ISortableDataProvider<SelectableBean<TagType>, String> provider = new ObjectDataProvider<>(this, search);
BoxedTablePanel<SelectableBean<TagType>> table = new BoxedTablePanel<>(ID_TABLE, provider, columns, UserProfileStorage.TableId.PAGE_SIMULATION_RESULT_TAGS);
form.add(table);
}

private void onWidgetClick(AjaxRequestTarget target, SmallBoxData data) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,9 @@ public enum TableId {
PANEL_GOVERNANCE_CARDS,
PANEL_ACCESS_WIZARD_STEP,

PAGE_SIMULATION_RESULTS
PAGE_SIMULATION_RESULTS,

PAGE_SIMULATION_RESULT_TAGS
}

private final Map<String, Integer> tables = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,9 @@ public class DefaultColumnUtils {
.put(MessageTemplateType.class, Arrays.asList(
new ColumnWrapper(MessageTemplateType.F_NAME),
new ColumnWrapper(MessageTemplateType.F_DESCRIPTION)))
.put(TagType.class, Arrays.asList(
new ColumnWrapper(TagType.F_NAME),
new ColumnWrapper(TagType.F_DESCRIPTION)))
.build();
}

Expand Down

0 comments on commit ca318be

Please sign in to comment.