Support deleteAffinitygroup - remove access

This commit is contained in:
Prachi Damle 2014-02-03 18:22:57 -08:00
parent 022b9b8f80
commit cb4d3a3c54

View File

@ -46,6 +46,8 @@ import com.cloud.event.ActionEvent;
import com.cloud.event.EventTypes;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.network.dao.NetworkAccountVO;
import com.cloud.network.dao.NetworkDomainVO;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
import com.cloud.user.DomainManager;
@ -293,7 +295,16 @@ public class AffinityGroupServiceImpl extends ManagerBase implements AffinityGro
processor.handleDeleteGroup(group);
}
_affinityGroupDao.expunge(affinityGroupIdFinal);
if(_affinityGroupDao.expunge(affinityGroupIdFinal)){
AffinityGroupDomainMapVO groupDomain = _affinityGroupDomainMapDao
.findByAffinityGroup(affinityGroupIdFinal);
if (groupDomain != null) {
_affinityGroupDomainMapDao.remove(groupDomain.getId());
}
// remove its related ACL permission
Pair<AclEntityType, Long> params = new Pair<AclEntityType, Long>(AclEntityType.AffinityGroup, affinityGroupIdFinal);
_messageBus.publish(_name, EntityManager.MESSAGE_REMOVE_ENTITY_EVENT, PublishScope.LOCAL, params);
}
}
});