Moti Asayag has uploaded a new change for review. Change subject: engine: Introduce queries for vms errata ......................................................................
engine: Introduce queries for vms errata Change-Id: Id3b2e149f64eb55d30bb093b5d82c68401edc5a3 Bug-Url: https://bugzilla.redhat.com/1157377 Signed-off-by: Moti Asayag <[email protected]> --- A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataForVmQuery.java A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErratumByIdForVmQuery.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java 3 files changed, 84 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/20/40720/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataForVmQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataForVmQuery.java new file mode 100644 index 0000000..41f5231 --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataForVmQuery.java @@ -0,0 +1,44 @@ +package org.ovirt.engine.core.bll; + +import java.util.Collections; + +import javax.inject.Inject; + +import org.ovirt.engine.core.bll.host.provider.HostProviderProxy; +import org.ovirt.engine.core.bll.provider.ProviderProxyFactory; +import org.ovirt.engine.core.common.businessentities.Erratum; +import org.ovirt.engine.core.common.businessentities.Provider; +import org.ovirt.engine.core.common.businessentities.VM; +import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.dao.VmDAO; +import org.ovirt.engine.core.dao.provider.ProviderDao; + +public class GetErrataForVmQuery<P extends IdQueryParameters> extends QueriesCommandBase<P> { + + @Inject + private VmDAO vmDao; + + @Inject + private ProviderDao providerDao; + + public GetErrataForVmQuery(P parameters) { + super(parameters); + } + + @Override + protected void executeQueryCommand() { + VM vm = vmDao.get(getParameters().getId()); + if (vm == null || vm.getVmFQDN() == null) { + getQueryReturnValue().setReturnValue(Collections.<Erratum> emptyList()); + return; + } + + Provider<?> provider = providerDao.get(vm.getProviderId()); + if (provider != null) { + HostProviderProxy proxy = (HostProviderProxy) ProviderProxyFactory.getInstance().create(provider); + getQueryReturnValue().setReturnValue(proxy.getErrataForHost(vm.getVmFQDN())); + } else { + getQueryReturnValue().setReturnValue(Collections.<Erratum> emptyList()); + } + } +} diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErratumByIdForVmQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErratumByIdForVmQuery.java new file mode 100644 index 0000000..cefd62c --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErratumByIdForVmQuery.java @@ -0,0 +1,38 @@ +package org.ovirt.engine.core.bll; + +import javax.inject.Inject; + +import org.ovirt.engine.core.bll.host.provider.HostProviderProxy; +import org.ovirt.engine.core.bll.provider.ProviderProxyFactory; +import org.ovirt.engine.core.common.businessentities.Provider; +import org.ovirt.engine.core.common.businessentities.VM; +import org.ovirt.engine.core.common.queries.HostErratumQueryParameters; +import org.ovirt.engine.core.dao.VmDAO; +import org.ovirt.engine.core.dao.provider.ProviderDao; + +public class GetErratumByIdForVmQuery<P extends HostErratumQueryParameters> extends QueriesCommandBase<P> { + + @Inject + private VmDAO vmDao; + + @Inject + private ProviderDao providerDao; + + public GetErratumByIdForVmQuery(P parameters) { + super(parameters); + } + + @Override + protected void executeQueryCommand() { + VM vm = vmDao.get(getParameters().getId()); + if (vm == null || vm.getProviderId() == null) { + return; + } + + Provider<?> provider = providerDao.get(vm.getProviderId()); + if (provider != null) { + HostProviderProxy proxy = (HostProviderProxy) ProviderProxyFactory.getInstance().create(provider); + getQueryReturnValue().setReturnValue(proxy.getErratumForHost(vm.getVmFQDN(), getParameters().getErratumId())); + } + } +} diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java index 26119cd..897e570 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java @@ -67,6 +67,8 @@ GetErrataForSystem, GetErratumByIdForSystem, GetErrataCountsForHost, + GetErrataForVm, + GetErratumByIdForVm, // VdsStatic Queries GetVdsStaticByName, -- To view, visit https://gerrit.ovirt.org/40720 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Id3b2e149f64eb55d30bb093b5d82c68401edc5a3 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Moti Asayag <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
