Moti Asayag has uploaded a new change for review.

Change subject: engine: Expose query for reporting errata for host
......................................................................

engine: Expose query for reporting errata for host

The GetErrataByHostIdQuery query will retrieve available
errata for a host which is registered to the katello/satellite
service. If the host isn't registered, an empty list will be
returned. If the service is not available, an error message
will be returned.

Change-Id: Ic881e18a53ac43c3fc3ef454c2047ca40599969b
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/GetErrataByHostIdQuery.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
2 files changed, 35 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/35/37435/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataByHostIdQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataByHostIdQuery.java
new file mode 100644
index 0000000..d2afe54
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetErrataByHostIdQuery.java
@@ -0,0 +1,34 @@
+package org.ovirt.engine.core.bll;
+
+import java.util.Collections;
+
+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.VdsStatic;
+import org.ovirt.engine.core.common.queries.IdQueryParameters;
+import org.ovirt.engine.core.dal.dbbroker.DbFacade;
+
+public class GetErrataByHostIdQuery<P extends IdQueryParameters> extends 
QueriesCommandBase<P> {
+
+    public GetErrataByHostIdQuery(P parameters) {
+        super(parameters);
+    }
+
+    @Override
+    protected void executeQueryCommand() {
+        VdsStatic host = 
DbFacade.getInstance().getVdsStaticDao().get(getParameters().getId());
+        if (host == null || host.getHostProviderId() == null) {
+            return;
+        }
+
+        Provider<?> provider = 
DbFacade.getInstance().getProviderDao().get(host.getHostProviderId());
+        if (provider != null) {
+            HostProviderProxy proxy = (HostProviderProxy) 
ProviderProxyFactory.getInstance().create(provider);
+            getQueryReturnValue().setReturnValue(proxy.getErrataForHost(host));
+        } else {
+            getQueryReturnValue().setReturnValue(Collections.<Erratum> 
emptyList());
+        }
+    }
+}
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 f250d23..f55e5c9 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
@@ -55,6 +55,7 @@
     GetCpuStatisticsByVdsId,
     GetFenceAgentById,
     GetFenceAgentsByVdsId,
+    GetErrataByHostId,
 
     // VdsStatic Queries
     GetVdsStaticByName,


-- 
To view, visit http://gerrit.ovirt.org/37435
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic881e18a53ac43c3fc3ef454c2047ca40599969b
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

Reply via email to