@Override protected boolean canDoAction() { if (getVm() == null) { return failCanDoAction(EngineMessage.ACTION_TYPE_FAILED_VM_NOT_FOUND); } if (getVm().getStatus() != VMStatus.Up) { return failVmStatusIllegal(); } if (!FeatureSupported.vmSlaPolicy(getVm().getVdsGroupCompatibilityVersion())) { return failCanDoAction(EngineMessage.VM_SLA_POLICY_NOT_SUPPORTED); } return true; }