package org.ovirt.engine.core.bll.gluster; import java.util.Collections; import java.util.Map; import org.ovirt.engine.core.bll.VdsGroupCommandBase; import org.ovirt.engine.core.common.VdcObjectType; import org.ovirt.engine.core.common.action.VdsGroupParametersBase; import org.ovirt.engine.core.dal.VdcBllMessages; public abstract class GlusterCommandBase<T extends VdsGroupParametersBase> extends VdsGroupCommandBase<T> { public GlusterCommandBase(T params) { super(params); setVdsGroupId(params.getVdsGroupId()); } @Override protected boolean canDoAction() { boolean canDoAction = super.canDoAction(); if (canDoAction && getVdsGroup() == null) { canDoAction = false; addCanDoActionMessage(VdcBllMessages.VDS_CLUSTER_IS_NOT_VALID); } if(canDoAction && getVdsGroup().getstorage_pool_id() == null) { canDoAction = false; addCanDoActionMessage(VdcBllMessages.ACTION_TYPE_FAILED_STORAGE_POOL_NOT_EXIST); } return canDoAction; } /* * (non-Javadoc) * * @see org.ovirt.engine.core.bll.CommandBase#getPermissionCheckSubjects() */ @Override public Map getPermissionCheckSubjects() { return Collections.singletonMap(getVdsGroupId(), VdcObjectType.VdsGroups); } }