Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into feature/axiom
Browse files Browse the repository at this point in the history
  • Loading branch information
katkav committed May 14, 2020
2 parents b4479a7 + a801c8c commit c5ed75d
Show file tree
Hide file tree
Showing 314 changed files with 10,491 additions and 17,226 deletions.
7 changes: 7 additions & 0 deletions gui/admin-gui/pom.xml
Expand Up @@ -321,6 +321,7 @@
<artifactId>system-init</artifactId>
<version>4.2-SNAPSHOT</version>
</dependency>

<!-- MIDPOINT RUNTIME DEPENDENCIES -->
<dependency>
<groupId>com.evolveum.midpoint.repo</groupId>
Expand All @@ -334,6 +335,12 @@
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.evolveum.midpoint.model</groupId>
<artifactId>rest-impl</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
Expand Down
Expand Up @@ -24,7 +24,7 @@ public interface ItemWrapperFactory<IW extends ItemWrapper, VW extends PrismValu


IW createWrapper(PrismContainerValueWrapper<?> parent, ItemDefinition<?> def, WrapperContext context) throws SchemaException;
IW createWrapper(Item childContainer, ItemStatus status, WrapperContext context) throws SchemaException;
IW createWrapper(PrismContainerValueWrapper<?> parent, Item childContainer, ItemStatus status, WrapperContext context) throws SchemaException;
VW createValueWrapper(IW parent, PV value, ValueStatus status, WrapperContext context) throws SchemaException;


Expand Down
Expand Up @@ -6,10 +6,15 @@
*/
package com.evolveum.midpoint.gui.api.factory.wrapper;

import com.evolveum.midpoint.gui.api.prism.ItemStatus;
import com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerWrapper;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.Item;
import com.evolveum.midpoint.prism.ItemDefinition;
import com.evolveum.midpoint.prism.PrismContainerValue;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.web.component.prism.ValueStatus;

/**
Expand All @@ -21,5 +26,7 @@ public interface PrismContainerWrapperFactory<C extends Containerable> extends I

PrismContainerValueWrapper<C> createContainerValueWrapper(PrismContainerWrapper<C> objectWrapper, PrismContainerValue<C> objectValue, ValueStatus status, WrapperContext context);

// <I extends Item> ItemWrapper<?, ?> createChildWrapper(ItemDefinition<?> def, PrismContainerValueWrapper<?> containerValueWrapper, WrapperContext context) throws SchemaException;
// <I extends Item> ItemWrapper<?, ?> createChildWrapper(PrismContainerValueWrapper<?> parent, I childItem, ItemStatus status, WrapperContext context) throws SchemaException;

}
Expand Up @@ -16,6 +16,8 @@
import com.evolveum.midpoint.xml.ns._public.common.common_3.VirtualContainerItemSpecificationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.VirtualContainersSpecificationType;

import org.jetbrains.annotations.NotNull;

import java.util.Collection;
import java.util.List;

Expand Down Expand Up @@ -144,6 +146,7 @@ public List<VirtualContainerItemSpecificationType> getVirtualItemSpecification()
return virtualItemSpecification;
}

@NotNull
public PrismObject<?> getObject() {
return object;
}
Expand Down
Expand Up @@ -15,6 +15,7 @@
import javax.management.ObjectName;
import javax.xml.namespace.QName;

import com.evolveum.midpoint.gui.api.factory.wrapper.PrismContainerWrapperFactory;
import com.evolveum.midpoint.gui.impl.prism.panel.ItemPanelSettings;
import com.evolveum.midpoint.web.page.admin.PageAdminObjectDetails;

Expand Down Expand Up @@ -2696,27 +2697,27 @@ public <O extends ObjectType> PrismObjectWrapperFactory<O> findObjectWrapperFact

public <IW extends ItemWrapper, VW extends PrismValueWrapper, PV extends PrismValue> VW createValueWrapper(IW parentWrapper, PV newValue, ValueStatus status, WrapperContext context) throws SchemaException {

ItemWrapperFactory<IW, VW, PV> factory = (ItemWrapperFactory<IW, VW, PV>) registry.findWrapperFactory(parentWrapper);
ItemWrapperFactory<IW, VW, PV> factory = registry.findWrapperFactory(parentWrapper);

return factory.createValueWrapper(parentWrapper, newValue, status, context);

}

public <ID extends ItemDefinition, IW extends ItemWrapper> IW createItemWrapper(ID def, PrismContainerValueWrapper<?> parent, WrapperContext ctx) throws SchemaException {

ItemWrapperFactory<IW, ?,?> factory = (ItemWrapperFactory<IW, ?,?>) registry.findWrapperFactory(def);
PrismContainerWrapperFactory<?> factory = registry.findContainerWrapperFactory(parent.getDefinition());
ctx.setShowEmpty(true);
ctx.setCreateIfEmpty(true);
return factory.createWrapper(parent, def, ctx);
return (IW) factory.createWrapper(parent, def, ctx);

}

public <I extends Item, IW extends ItemWrapper> IW createItemWrapper(I item, ItemStatus status, WrapperContext ctx) throws SchemaException {

ItemWrapperFactory<IW, ?,?> factory = (ItemWrapperFactory<IW, ?,?>) registry.findWrapperFactory(item.getDefinition());
ItemWrapperFactory<IW, ?,?> factory = registry.findWrapperFactory(item.getDefinition());

ctx.setCreateIfEmpty(true);
return factory.createWrapper(item, status, ctx);
return factory.createWrapper(null, item, status, ctx);

}

Expand Down
Expand Up @@ -81,4 +81,6 @@ public interface PrismContainerValueWrapper<C extends Containerable> extends Pri
void setVirtualContainerItems(List<VirtualContainerItemSpecificationType> virtualItems);
boolean isVirtual();

PrismContainerDefinition<C> getDefinition();

}
Expand Up @@ -12,13 +12,12 @@
import javax.xml.namespace.QName;

import com.evolveum.midpoint.gui.api.factory.GuiComponentFactory;
import com.evolveum.midpoint.gui.api.factory.wrapper.PrismContainerWrapperFactory;
import com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper;
import com.evolveum.midpoint.gui.api.factory.wrapper.ItemWrapperFactory;
import com.evolveum.midpoint.gui.api.factory.wrapper.PrismObjectWrapperFactory;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismValueWrapper;
import com.evolveum.midpoint.prism.ItemDefinition;
import com.evolveum.midpoint.prism.PrismObjectDefinition;
import com.evolveum.midpoint.prism.PrismValue;
import com.evolveum.midpoint.prism.*;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;

public interface GuiComponentRegistry extends Serializable {
Expand All @@ -33,6 +32,8 @@ public interface GuiComponentRegistry extends Serializable {

<IW extends ItemWrapper, VW extends PrismValueWrapper, PV extends PrismValue> ItemWrapperFactory<IW, VW, PV> findWrapperFactory(ItemDefinition<?> def);

<C extends Containerable> PrismContainerWrapperFactory<C> findContainerWrapperFactory(PrismContainerDefinition<C> def);

<O extends ObjectType> PrismObjectWrapperFactory<O> getObjectWrapperFactory(PrismObjectDefinition<O> objectDef);

void addToRegistry(ItemWrapperFactory factory);
Expand Down
Expand Up @@ -49,7 +49,18 @@ public IModel<?> getDataModel(IModel<PrismContainerValueWrapper<C>> rowModel) {

@Override
protected Component createHeader(String componentId, IModel<? extends PrismContainerDefinition<C>> mainModel) {
return new PrismPropertyHeaderPanel<>(componentId, new PrismPropertyWrapperHeaderModel(mainModel, itemName, pageBase));
return new PrismPropertyHeaderPanel<T>(componentId, new PrismPropertyWrapperHeaderModel(mainModel, itemName, pageBase)) {

@Override
protected boolean isAddButtonVisible() {
return false;
}

@Override
protected boolean isButtonEnabled() {
return false;
}
};
}


Expand Down
Expand Up @@ -51,7 +51,17 @@ public IModel<?> getDataModel(IModel<PrismContainerValueWrapper<C>> rowModel) {

@Override
protected Component createHeader(String componentId, IModel<? extends PrismContainerDefinition<C>> mainModel) {
return new PrismReferenceHeaderPanel<>(componentId, new PrismReferenceWrapperHeaderModel(mainModel, itemName, pageBase));
return new PrismReferenceHeaderPanel<R>(componentId, new PrismReferenceWrapperHeaderModel(mainModel, itemName, pageBase)) {
@Override
protected boolean isAddButtonVisible() {
return false;
}

@Override
protected boolean isButtonEnabled() {
return false;
}
};
}


Expand Down
Expand Up @@ -6,12 +6,12 @@
*/
package com.evolveum.midpoint.gui.impl.factory.wrapper;


import java.util.List;

import org.springframework.stereotype.Component;

import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerWrapper;
import com.evolveum.midpoint.prism.ComplexTypeDefinition;
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.ItemDefinition;
import com.evolveum.midpoint.prism.PrismContainerValue;
Expand All @@ -38,10 +38,24 @@ public int getOrder() {
@Override
protected List<? extends ItemDefinition> getItemDefinitions(PrismContainerWrapper<C> parent,
PrismContainerValue<C> value) {
if(value != null && value.getComplexTypeDefinition() != null
&& value.getComplexTypeDefinition().getDefinitions() != null) {
return value.getComplexTypeDefinition().getDefinitions();
List<? extends ItemDefinition> defs = getComplexTypeDefinitions(value);
if (defs != null) {
return defs;
}

return parent.getDefinitions();
}

private List<? extends ItemDefinition> getComplexTypeDefinitions(PrismContainerValue<C> value) {
if (value == null) {
return null;
}

ComplexTypeDefinition ctd = value.getComplexTypeDefinition();
if (ctd == null) {
return null;
}

return ctd.getDefinitions();
}
}

This file was deleted.

Expand Up @@ -33,10 +33,7 @@ public boolean match(ItemDefinition<?> def) {

@Override
protected boolean canCreateWrapper(ItemDefinition<?> def, ItemStatus status, WrapperContext context, boolean isEmptyValue) {
if (!isEmptyValue){
return true;
}
return false;
return !isEmptyValue;
}

@Override
Expand Down

This file was deleted.

0 comments on commit c5ed75d

Please sign in to comment.