use of com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectTemplateItemDefinitionType in project midpoint by Evolveum.
the class SchemaTransformer method applyObjectTemplateItem.
private <IV extends PrismValue, ID extends ItemDefinition> void applyObjectTemplateItem(ID itemDef, ObjectTemplateItemDefinitionType templateItemDefType, String desc) throws SchemaException {
if (itemDef == null) {
throw new SchemaException("No definition for " + desc);
}
String displayName = templateItemDefType.getDisplayName();
if (displayName != null) {
((ItemDefinitionImpl) itemDef).setDisplayName(displayName);
}
Integer displayOrder = templateItemDefType.getDisplayOrder();
if (displayOrder != null) {
((ItemDefinitionImpl) itemDef).setDisplayOrder(displayOrder);
}
Boolean emphasized = templateItemDefType.isEmphasized();
if (emphasized != null) {
((ItemDefinitionImpl) itemDef).setEmphasized(emphasized);
}
List<PropertyLimitationsType> limitations = templateItemDefType.getLimitations();
if (limitations != null) {
PropertyLimitationsType limitationsType = MiscSchemaUtil.getLimitationsType(limitations, LayerType.PRESENTATION);
if (limitationsType != null) {
if (limitationsType.getMinOccurs() != null) {
((ItemDefinitionImpl) itemDef).setMinOccurs(XsdTypeMapper.multiplicityToInteger(limitationsType.getMinOccurs()));
}
if (limitationsType.getMaxOccurs() != null) {
((ItemDefinitionImpl) itemDef).setMaxOccurs(XsdTypeMapper.multiplicityToInteger(limitationsType.getMaxOccurs()));
}
if (limitationsType.isIgnore() != null) {
((ItemDefinitionImpl) itemDef).setIgnored(limitationsType.isIgnore());
}
PropertyAccessType accessType = limitationsType.getAccess();
if (accessType != null) {
if (accessType.isAdd() != null) {
((ItemDefinitionImpl) itemDef).setCanAdd(accessType.isAdd());
}
if (accessType.isModify() != null) {
((ItemDefinitionImpl) itemDef).setCanModify(accessType.isModify());
}
if (accessType.isRead() != null) {
((ItemDefinitionImpl) itemDef).setCanRead(accessType.isRead());
}
}
}
}
ObjectReferenceType valueEnumerationRef = templateItemDefType.getValueEnumerationRef();
if (valueEnumerationRef != null) {
PrismReferenceValue valueEnumerationRVal = MiscSchemaUtil.objectReferenceTypeToReferenceValue(valueEnumerationRef);
((ItemDefinitionImpl) itemDef).setValueEnumerationRef(valueEnumerationRVal);
}
}
use of com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectTemplateItemDefinitionType in project midpoint by Evolveum.
the class ObjectTemplateItemPanel method createAdditionalColumns.
@Override
protected List<IColumn<PrismContainerValueWrapper<ObjectTemplateItemDefinitionType>, String>> createAdditionalColumns() {
List<IColumn<PrismContainerValueWrapper<ObjectTemplateItemDefinitionType>, String>> columns = new ArrayList<>();
columns.add(new AbstractColumn<>(createStringResource("ObjectTemplateItemDefinitionType.mapping")) {
@Override
public void populateItem(Item<ICellPopulator<PrismContainerValueWrapper<ObjectTemplateItemDefinitionType>>> cellItem, String componentId, IModel<PrismContainerValueWrapper<ObjectTemplateItemDefinitionType>> rowModel) {
IModel<PrismContainerWrapper<MappingType>> mappingModel = PrismContainerWrapperModel.fromContainerValueWrapper(rowModel, ObjectTemplateItemDefinitionType.F_MAPPING);
cellItem.add(new MappingColumnPanel(componentId, mappingModel));
}
});
List<InlineMenuItem> items = new ArrayList<>();
InlineMenuItem item = new InlineMenuItem(createStringResource("pageAdminFocus.button.delete")) {
private static final long serialVersionUID = 1L;
@Override
public InlineMenuItemAction initAction() {
return new ColumnMenuAction() {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
getMultivalueContainerListPanel().deleteItemPerformed(target, getMultivalueContainerListPanel().getPerformedSelectedItems(getRowModel()));
}
};
}
};
items.add(item);
item = new ButtonInlineMenuItem(createStringResource("PageBase.button.edit")) {
private static final long serialVersionUID = 1L;
@Override
public CompositedIconBuilder getIconCompositedBuilder() {
return getDefaultCompositedIconBuilder(GuiStyleConstants.CLASS_EDIT_MENU_ITEM);
}
@Override
public InlineMenuItemAction initAction() {
return new ColumnMenuAction() {
private static final long serialVersionUID = 1L;
@Override
public void onClick(AjaxRequestTarget target) {
getMultivalueContainerListPanel().editItemPerformed(target, getRowModel(), getMultivalueContainerListPanel().getSelectedItems());
target.add(getMultivalueContainerListPanel().getFeedbackPanel());
}
};
}
};
items.add(item);
columns.add(new InlineMenuButtonColumn(items, getPageBase()) {
@Override
public String getCssClass() {
return "col-xs-1";
}
});
return columns;
}
Aggregations