@Override
public void checkQuota(APIMessage msg, Map<String, Quota.QuotaPair> pairs) {
AccountType type = new QuotaUtil().getAccountType(msg.getSession().getAccountUuid());
if (type != AccountType.SystemAdmin) {
if (msg instanceof APICreateVmInstanceMsg) {
if (((APICreateVmInstanceMsg) msg).getStrategy().
equals(VmCreationStrategy.JustCreate.toString())) {
return;
}
check((APICreateVmInstanceMsg) msg, pairs);
} else if (msg instanceof APICreateDataVolumeMsg) {
check((APICreateDataVolumeMsg) msg, pairs);
} else if (msg instanceof APIRecoverDataVolumeMsg) {
check((APIRecoverDataVolumeMsg) msg, pairs);
} else if (msg instanceof APIStartVmInstanceMsg) {
check((APIStartVmInstanceMsg) msg, pairs);
} else if (msg instanceof APIChangeResourceOwnerMsg) {
check((APIChangeResourceOwnerMsg) msg, pairs);
} else if (msg instanceof APIRecoverVmInstanceMsg) {
check((APIRecoverVmInstanceMsg) msg, pairs);
}
} else {
if (msg instanceof APIChangeResourceOwnerMsg) {
check((APIChangeResourceOwnerMsg) msg, pairs);
}
}
}