Skip to content

Commit

Permalink
delta viewer, wrapper visualization improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
1azyman committed Feb 24, 2023
1 parent 796a441 commit 9498ffb
Show file tree
Hide file tree
Showing 7 changed files with 56 additions and 70 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
import java.util.List;
import java.util.stream.Collectors;

import com.evolveum.midpoint.web.component.prism.show.WrapperVisualization;

import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
Expand All @@ -26,6 +28,7 @@
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.DebugUtil;
import com.evolveum.midpoint.util.SingleLocalizableMessage;
import com.evolveum.midpoint.util.exception.ConfigurationException;
import com.evolveum.midpoint.util.exception.ExpressionEvaluationException;
import com.evolveum.midpoint.util.exception.SchemaException;
Expand All @@ -36,7 +39,6 @@
import com.evolveum.midpoint.web.component.prism.show.ChangesPanel;
import com.evolveum.midpoint.web.component.prism.show.VisualizationDto;
import com.evolveum.midpoint.web.component.prism.show.VisualizationPanel;
import com.evolveum.midpoint.web.component.prism.show.WrapperVisualization;
import com.evolveum.midpoint.web.component.util.VisibleBehaviour;
import com.evolveum.midpoint.web.component.wf.ApprovalProcessesPreviewPanel;
import com.evolveum.midpoint.web.page.admin.workflow.EvaluatedTriggerGroupListPanel;
Expand Down Expand Up @@ -148,7 +150,7 @@ protected VisualizationDto load() {
int size = visualizations.size();
String key = size != 1 ? moreKey : oneKey;

return new VisualizationDto(new WrapperVisualization(visualizations, key, size));
return new VisualizationDto(new WrapperVisualization(new SingleLocalizableMessage(key, new Object[] { size }), visualizations));
}
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,6 @@

package com.evolveum.midpoint.gui.impl.page.admin.simulation;

import java.util.Arrays;
import javax.xml.namespace.QName;

import org.apache.wicket.AttributeModifier;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.IModel;
import org.jetbrains.annotations.NotNull;

import com.evolveum.midpoint.gui.api.component.Badge;
import com.evolveum.midpoint.gui.api.page.PageBase;
import com.evolveum.midpoint.gui.api.util.LocalizationUtil;
Expand All @@ -27,6 +18,7 @@
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.DebugUtil;
import com.evolveum.midpoint.util.SingleLocalizableMessage;
import com.evolveum.midpoint.util.exception.ExpressionEvaluationException;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.util.exception.SystemException;
Expand All @@ -39,6 +31,15 @@
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import com.evolveum.prism.xml.ns._public.types_3.ObjectDeltaType;

import org.apache.wicket.AttributeModifier;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.IModel;
import org.jetbrains.annotations.NotNull;

import javax.xml.namespace.QName;
import java.util.Arrays;

/**
* Created by Viliam Repan (lazyman).
*/
Expand Down Expand Up @@ -147,7 +148,7 @@ public static VisualizationDto createVisualizationDto(Visualization visualizatio
}

final WrapperVisualization wrapper =
new WrapperVisualization(Arrays.asList(visualization), "PageSimulationResultObject.changes");
new WrapperVisualization(new SingleLocalizableMessage("PageSimulationResultObject.changes"), Arrays.asList(visualization));

return new VisualizationDto(wrapper);
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,6 @@
*/
package com.evolveum.midpoint.web.component.model.operationStatus;

import static org.apache.commons.collections4.CollectionUtils.addIgnoreNull;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import com.evolveum.midpoint.model.api.ModelInteractionService;
import com.evolveum.midpoint.model.api.context.ModelContext;
import com.evolveum.midpoint.model.api.context.ModelProjectionContext;
Expand All @@ -21,13 +15,20 @@
import com.evolveum.midpoint.prism.delta.ObjectDelta;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.SingleLocalizableMessage;
import com.evolveum.midpoint.util.exception.ExpressionEvaluationException;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.util.exception.SystemException;
import com.evolveum.midpoint.web.component.prism.show.VisualizationDto;
import com.evolveum.midpoint.web.component.prism.show.WrapperVisualization;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import static org.apache.commons.collections4.CollectionUtils.addIgnoreNull;

public class ModelOperationStatusDto implements Serializable {

public static final String F_STATE = "state";
Expand Down Expand Up @@ -69,8 +70,10 @@ public ModelOperationStatusDto(ModelContext<?> modelContext, ModelInteractionSer
} catch (SchemaException | ExpressionEvaluationException e) {
throw new SystemException(e); // TODO
}
final WrapperVisualization primaryWrapper = new WrapperVisualization(primary,
primaryDeltas.size() != 1 ? "PagePreviewChanges.primaryChangesMore" : "PagePreviewChanges.primaryChangesOne", primaryDeltas.size());

String key = primaryDeltas.size() != 1 ? "PagePreviewChanges.primaryChangesMore" : "PagePreviewChanges.primaryChangesOne";

final WrapperVisualization primaryWrapper = new WrapperVisualization(new SingleLocalizableMessage(key, new Object[] { primaryDeltas.size() }), primary);
primaryVisualizationDto = new VisualizationDto(primaryWrapper);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
import com.evolveum.midpoint.gui.api.component.IconComponent;
import com.evolveum.midpoint.gui.api.util.LocalizationUtil;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.gui.impl.page.admin.simulation.visualization.VisualizationGuiUtil;
import com.evolveum.midpoint.model.api.visualizer.Visualization;
import com.evolveum.midpoint.prism.PrismContainerDefinition;
import com.evolveum.midpoint.prism.PrismContainerValue;
Expand Down Expand Up @@ -126,7 +125,7 @@ private void initLayout() {

ChangeType change = dto.getChangeType();

return change != null ? VisualizationGuiUtil.createChangeTypeCssClassForOutlineCard(change) : null;
return change != null ? VisualizationUtil.createChangeTypeCssClassForOutlineCard(change) : null;
}));

final VisibleBehaviour visibleIfNotWrapper = new VisibleBehaviour(() -> !getModelObject().isWrapper());
Expand Down Expand Up @@ -171,9 +170,7 @@ protected void onEvent(AjaxRequestTarget target) {

final Label wrapperDisplayName = new Label(ID_WRAPPER_DISPLAY_NAME, () -> {
WrapperVisualization visualization = ((WrapperVisualization) getModelObject().getVisualization());
String key = visualization.getDisplayNameKey();
Object[] parameters = visualization.getDisplayNameParameters();
return LocalizationUtil.translate(key, parameters);
return LocalizationUtil.translateMessage(visualization.getName().getDisplayName());
});
wrapperDisplayName.add(visibleIfWrapper);
fullDescription.add(wrapperDisplayName);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,12 @@
import com.evolveum.midpoint.model.api.ModelInteractionService;
import com.evolveum.midpoint.model.api.visualizer.Visualization;
import com.evolveum.midpoint.prism.PrismContext;
import com.evolveum.midpoint.prism.delta.ChangeType;
import com.evolveum.midpoint.prism.delta.ObjectDelta;
import com.evolveum.midpoint.schema.DeltaConvertor;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.SingleLocalizableMessage;
import com.evolveum.midpoint.util.exception.ExpressionEvaluationException;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectReferenceType;
Expand All @@ -41,7 +43,7 @@ public static Visualization visualizeObjectTreeDeltas(ObjectTreeDeltasType delta
visualizations.add(modelInteractionService.visualizeDelta(delta, task, result));
}
}
return new WrapperVisualization(visualizations, displayNameKey);
return new WrapperVisualization(new SingleLocalizableMessage("displayNameKey"), visualizations);
}

public static Visualization visualizeObjectDeltaType(ObjectDeltaType objectDeltaType, String displayNameKey,
Expand All @@ -52,6 +54,23 @@ public static Visualization visualizeObjectDeltaType(ObjectDeltaType objectDelta
ObjectDelta<? extends ObjectType> delta = DeltaConvertor.createObjectDelta(objectDeltaType, prismContext);
visualizations.add(modelInteractionService.visualizeDelta(delta, false, objectRef, task, result));
}
return new WrapperVisualization(visualizations, displayNameKey);
return new WrapperVisualization(new SingleLocalizableMessage(displayNameKey), visualizations);
}

public static String createChangeTypeCssClassForOutlineCard(ChangeType change) {
if (change == null) {
return "card-outline-left-secondary";
}

switch (change) {
case ADD:
return "card-outline-left-success";
case MODIFY:
return "card-outline-left-info";
case DELETE:
return "card-outline-left-danger";
}

return "card-outline-left-secondary";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@

package com.evolveum.midpoint.web.component.prism.show;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

Expand All @@ -30,22 +29,13 @@
*/
public class WrapperVisualization implements Visualization {

private String displayNameKey;
private Object[] displayNameParameters;
private LocalizableMessage displayName;

private List<? extends Visualization> partialVisualizations;

public WrapperVisualization(List<? extends Visualization> partialVisualizations, String displayNameKey, Object... displayNameParameters) {
public WrapperVisualization(LocalizableMessage displayName, List<? extends Visualization> partialVisualizations) {
this.displayName = displayName;
this.partialVisualizations = partialVisualizations;
this.displayNameKey = displayNameKey;
this.displayNameParameters = displayNameParameters;
}

public String getDisplayNameKey() {
return displayNameKey;
}

public Object[] getDisplayNameParameters() {
return displayNameParameters;
}

@Override
Expand All @@ -59,7 +49,7 @@ public LocalizableMessage getSimpleName() {

@Override
public LocalizableMessage getDisplayName() {
return null;
return displayName;
}

@Override
Expand Down Expand Up @@ -166,17 +156,14 @@ public boolean equals(Object o) {

WrapperVisualization that = (WrapperVisualization) o;

if (displayNameKey != null ? !displayNameKey.equals(that.displayNameKey) : that.displayNameKey != null) {return false;}
// Probably incorrect - comparing Object[] arrays with Arrays.equals
if (!Arrays.equals(displayNameParameters, that.displayNameParameters)) {return false;}
if (displayName != null ? !displayName.equals(that.displayName) : that.displayName != null) {return false;}
return !(partialVisualizations != null ? !partialVisualizations.equals(that.partialVisualizations) : that.partialVisualizations != null);

}

@Override
public int hashCode() {
int result = displayNameKey != null ? displayNameKey.hashCode() : 0;
result = 31 * result + (displayNameParameters != null ? Arrays.hashCode(displayNameParameters) : 0);
int result = displayName != null ? displayName.hashCode() : 0;
result = 31 * result + (partialVisualizations != null ? partialVisualizations.hashCode() : 0);
return result;
}
Expand Down

0 comments on commit 9498ffb

Please sign in to comment.