Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/Evolveum/midpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed Jan 26, 2015
2 parents ac29dd3 + 4e18d68 commit a11d8c6
Showing 1 changed file with 30 additions and 6 deletions.
Expand Up @@ -769,17 +769,13 @@ private void deleteObjectTypePerformed(AjaxRequestTarget target, ResourceObjectT
list.remove(objectType);

if(objectType.isSelected()){
model.getObject().setSelected(createPlaceholderObjectType());
insertEmptyThirdRow();
target.add(getThirdRowContainer());
}

if(list.isEmpty()){
ResourceObjectTypeDefinitionType newObj = new ResourceObjectTypeDefinitionType();
newObj.setDisplayName(getString("SchemaHandlingStep.label.newObjectType"));
ResourceObjectTypeDefinitionTypeDto dto = new ResourceObjectTypeDefinitionTypeDto(newObj);
dto.setSelected(true);
list.add(dto);
insertEmptyThirdRow();
target.add(getThirdRowContainer());
}

target.add(getObjectTypeEditor(), getObjectListTable(), getNavigator());
Expand All @@ -792,6 +788,10 @@ private void addObjectTypePerformed(AjaxRequestTarget target){
objectType.setDisplayName(getString("SchemaHandlingStep.label.newObjectType"));
ResourceObjectTypeDefinitionTypeDto dto = new ResourceObjectTypeDefinitionTypeDto(objectType);

if(model.getObject().getObjectTypeList().isEmpty()){
objectType.setDefault(true);
}

resetSelected();
dto.setSelected(true);
model.getObject().setSelected(dto.getObjectType());
Expand Down Expand Up @@ -824,6 +824,12 @@ private void removeEmptyContainers(PrismObject<ResourceType> resourcePrism){
objectType.getAttribute().clear();
objectType.getAttribute().addAll(newAttributeList);

for(ResourceAttributeDefinitionType attr: objectType.getAttribute()){
List<MappingType> newInbounds = clearEmptyMappings(attr.getInbound());
attr.getInbound().clear();
attr.getInbound().addAll(newInbounds);
}

//Clear obsolete containers from associations
List<ResourceObjectAssociationType> newAssociationList = new ArrayList<>();
newAssociationList.addAll(objectType.getAssociation());
Expand All @@ -835,11 +841,29 @@ private void removeEmptyContainers(PrismObject<ResourceType> resourcePrism){
objectType.getAssociation().clear();
objectType.getAssociation().addAll(newAssociationList);

for(ResourceObjectAssociationType association: objectType.getAssociation()){
List<MappingType> newInbounds = clearEmptyMappings(association.getInbound());
association.getInbound().clear();
association.getInbound().addAll(newInbounds);
}

prepareActivation(objectType.getActivation());
}
}
}

private List<MappingType> clearEmptyMappings(List<MappingType> list){
List<MappingType> newList = new ArrayList<>();

for(MappingType mapping: list){
if(!WizardUtil.isEmptyMapping(mapping)){
newList.add(mapping);
}
}

return newList;
}

private void prepareActivation(ResourceActivationDefinitionType activation){
if(activation == null){
return;
Expand Down

0 comments on commit a11d8c6

Please sign in to comment.