Skip to content

Commit

Permalink
delta viewer, removed icon from visualization api
Browse files Browse the repository at this point in the history
  • Loading branch information
1azyman committed Feb 23, 2023
1 parent 5499dc1 commit a27f5ed
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 64 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

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

import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxEventBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
Expand Down Expand Up @@ -42,10 +43,13 @@
import com.evolveum.midpoint.web.util.TooltipBehavior;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;

import javax.xml.namespace.QName;

public class VisualizationPanel extends BasePanel<VisualizationDto> {

private static final long serialVersionUID = 1L;

public static final String ID_ICON = "icon";
public static final String ID_MINIMIZE = "minimize";
private static final String ID_HEADER_PANEL = "headerPanel";
private static final String ID_DESCRIPTION = "description";
Expand Down Expand Up @@ -140,16 +144,22 @@ protected void onEvent(AjaxRequestTarget target) {
});
add(headerPanel);

IModel<String> simpleIconModel = () -> {
IModel<String> iconModel = () -> {
Visualization visualization = getModelObject().getVisualization();
if (visualization == null || visualization.getName() == null) {
if (visualization == null || visualization.getSourceValue() == null) {
return null;
}
return visualization.getName().getSimpleIcon();

PrismContainerValue value = visualization.getSourceValue();
QName type = value.getTypeName();
String icon = WebComponentUtil.createDefaultBlackIcon(type);

return StringUtils.isNotEmpty(icon) ? icon : null;
};
IconComponent simpleIcon = new IconComponent("simpleIcon", simpleIconModel);
simpleIcon.add(new VisibleBehaviour(() -> simpleIconModel.getObject() != null));
headerPanel.add(simpleIcon);

IconComponent icon = new IconComponent(ID_ICON, iconModel);
icon.add(new VisibleBehaviour(() -> iconModel.getObject() != null));
headerPanel.add(icon);

final Label simpleDescription = new Label("simpleDescription", simpleDescriptionModel);
simpleDescription.setEscapeModelStrings(false);
Expand All @@ -169,11 +179,11 @@ protected void onEvent(AjaxRequestTarget target) {
wrapperDisplayName.add(visibleIfWrapper);
fullDescription.add(wrapperDisplayName);

final Label changeType = new Label(ID_CHANGE_TYPE, new ChangeTypeModel());
final Label changeType = new Label(ID_CHANGE_TYPE, new ChangeTypeModel(getModel()));
changeType.add(visibleIfNotWrapper);
fullDescription.add(changeType);

final Label objectType = new Label(ID_OBJECT_TYPE, new ObjectTypeModel());
final Label objectType = new Label(ID_OBJECT_TYPE, new ObjectTypeModel(getModel()));
objectType.add(visibleIfNotWrapper);
fullDescription.add(objectType);

Expand Down Expand Up @@ -265,35 +275,6 @@ public void headerOnClickPerformed(AjaxRequestTarget target, IModel<Visualizatio
target.add(this);
}

private class ChangeTypeModel implements IModel<String> {

@Override
public String getObject() {
ChangeType changeType = getModel().getObject().getVisualization().getChangeType();
if (changeType == null) {
return "";
}
return WebComponentUtil.createLocalizedModelForEnum(changeType, VisualizationPanel.this).getObject();
}
}

private class ObjectTypeModel implements IModel<String> {

@Override
public String getObject() {
Visualization visualization = getModel().getObject().getVisualization();
PrismContainerDefinition<?> def = visualization.getSourceDefinition();
if (def == null) {
return "";
}
if (def instanceof PrismObjectDefinition) {
return PageBase.createStringResourceStatic(SchemaConstants.OBJECT_TYPE_KEY_PREFIX + def.getTypeName().getLocalPart()).getObject();
} else {
return "";
}
}
}

private void setOperationalItemsVisible(boolean operationalItemsVisible) {
this.operationalItemsVisible = operationalItemsVisible;
}
Expand All @@ -313,4 +294,42 @@ private boolean isAutorized() {

return WebComponentUtil.isAuthorized(clazz);
}

private static class ChangeTypeModel implements IModel<String> {

private IModel<VisualizationDto> visualization;

public ChangeTypeModel(@NotNull IModel<VisualizationDto> visualization) {
this.visualization = visualization;
}

@Override
public String getObject() {
ChangeType changeType = visualization.getObject().getVisualization().getChangeType();
if (changeType == null) {
return null;
}

return LocalizationUtil.translate(WebComponentUtil.createEnumResourceKey(changeType));
}
}

private static class ObjectTypeModel implements IModel<String> {

private IModel<VisualizationDto> visualization;

public ObjectTypeModel(@NotNull IModel<VisualizationDto> visualization) {
this.visualization = visualization;
}

@Override
public String getObject() {
PrismContainerDefinition<?> def = visualization.getObject().getVisualization().getSourceDefinition();
if (!(def instanceof PrismObjectDefinition)) {
return null;
}

return LocalizationUtil.translate(SchemaConstants.OBJECT_TYPE_KEY_PREFIX + def.getTypeName().getLocalPart());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@
import java.util.Collections;
import java.util.List;

import com.evolveum.midpoint.util.LocalizableMessage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.IconType;

import org.jetbrains.annotations.NotNull;

import com.evolveum.midpoint.model.api.visualizer.Name;
Expand All @@ -25,6 +22,7 @@
import com.evolveum.midpoint.prism.delta.ObjectDelta;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.util.DebugUtil;
import com.evolveum.midpoint.util.LocalizableMessage;

/**
* Artificial implementation of a visualization used to hold a list of deltas.
Expand Down Expand Up @@ -79,11 +77,6 @@ public boolean namesAreResourceKeys() {
return false;
}

@Override
public String getSimpleIcon() {
return null;
}

@Override
public LocalizableMessage getSimpleDescription() {
return null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,10 @@

package com.evolveum.midpoint.model.api.visualizer;

import com.evolveum.midpoint.util.LocalizableMessage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.IconType;

import java.io.Serializable;

import com.evolveum.midpoint.util.LocalizableMessage;

/**
* Name of a visualization or a visualization item.
*
Expand All @@ -25,7 +24,5 @@ public interface Name extends Serializable {
String getDescription();
boolean namesAreResourceKeys();

String getSimpleIcon();

LocalizableMessage getSimpleDescription();
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

import com.evolveum.midpoint.model.api.visualizer.Name;
import com.evolveum.midpoint.util.LocalizableMessage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.IconType;

public class NameImpl implements Name {

Expand All @@ -20,8 +19,6 @@ public class NameImpl implements Name {
private String id;
private String description;
private boolean namesAreResourceKeys;

private String simpleIcon;
private LocalizableMessage simpleDescription;

public NameImpl(String simpleName) {
Expand Down Expand Up @@ -68,15 +65,6 @@ public void setNamesAreResourceKeys(boolean namesAreResourceKeys) {
this.namesAreResourceKeys = namesAreResourceKeys;
}

@Override
public String getSimpleIcon() {
return simpleIcon;
}

public void setSimpleIcon(String simpleIcon) {
this.simpleIcon = simpleIcon;
}

@Override
public LocalizableMessage getSimpleDescription() {
return simpleDescription;
Expand Down Expand Up @@ -107,7 +95,6 @@ public boolean equals(Object o) {
if (!Objects.equals(displayName, name.displayName)) {return false;}
if (!Objects.equals(id, name.id)) {return false;}
if (!Objects.equals(description, name.description)) {return false;}
if (!Objects.equals(simpleIcon, name.simpleIcon)) {return false;}
return Objects.equals(simpleDescription, name.simpleDescription);
}

Expand All @@ -118,7 +105,6 @@ public int hashCode() {
result = 31 * result + (id != null ? id.hashCode() : 0);
result = 31 * result + (description != null ? description.hashCode() : 0);
result = 31 * result + (namesAreResourceKeys ? 1 : 0);
result = 31 * result + (simpleIcon != null ? simpleIcon.hashCode() : 0);
result = 31 * result + (simpleDescription != null ? simpleDescription.hashCode() : 0);
return result;
}
Expand Down

0 comments on commit a27f5ed

Please sign in to comment.