Mike Kolesnik has uploaded a new change for review. Change subject: engine: Added query for all networks on provider ......................................................................
engine: Added query for all networks on provider This query allows to discover all the networks on the given NetworkProvider and returns as a result the list of networks which can then be used to, for example, add the network to the system. Change-Id: I2954addacfea09e0b44bf2770f80be92f75b6db5 Signed-off-by: Mike Kolesnik <mkole...@redhat.com> --- A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQuery.java A backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQueryTest.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java A backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/network/NetworkProviderQueryParameters.java 4 files changed, 94 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/89/10789/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQuery.java new file mode 100644 index 0000000..0c8374e --- /dev/null +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQuery.java @@ -0,0 +1,22 @@ +package org.ovirt.engine.core.bll.network.external; + +import org.ovirt.engine.core.bll.QueriesCommandBase; +import org.ovirt.engine.core.common.queries.network.NetworkProviderQueryParameters; + +public class GetAllNetworksOnProviderQuery<P extends NetworkProviderQueryParameters> extends QueriesCommandBase<P> { + + public GetAllNetworksOnProviderQuery(P parameters) { + super(parameters); + } + + @Override + protected void executeQueryCommand() { + NetworkProviderClient client = + getNetworkProviderClientFactory().createClient(getParameters().getNetworkProvider()); + getQueryReturnValue().setReturnValue(client.getAll()); + } + + protected NetworkProviderClientFactory getNetworkProviderClientFactory() { + return new NetworkProviderClientFactory(); + } +} diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQueryTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQueryTest.java new file mode 100644 index 0000000..17a9305 --- /dev/null +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/network/external/GetAllNetworksOnProviderQueryTest.java @@ -0,0 +1,46 @@ +package org.ovirt.engine.core.bll.network.external; + +import static org.junit.Assert.assertEquals; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import java.util.Arrays; +import java.util.List; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mock; +import org.mockito.runners.MockitoJUnitRunner; +import org.ovirt.engine.core.bll.AbstractQueryTest; +import org.ovirt.engine.core.common.businessentities.network.Network; +import org.ovirt.engine.core.common.businessentities.network.NetworkProvider; +import org.ovirt.engine.core.common.queries.network.NetworkProviderQueryParameters; + +@RunWith(MockitoJUnitRunner.class) +public class GetAllNetworksOnProviderQueryTest + extends AbstractQueryTest<NetworkProviderQueryParameters, GetAllNetworksOnProviderQuery<NetworkProviderQueryParameters>> { + + @Mock + private NetworkProvider networkProvider; + + @Mock + private NetworkProviderClientFactory networkProviderClientFactory; + + @Mock + private NetworkProviderClient client; + + @Test + public void testExecuteQueryCommand() { + when(params.getNetworkProvider()).thenReturn(networkProvider); + when(getQuery().getNetworkProviderClientFactory()).thenReturn(networkProviderClientFactory); + when(networkProviderClientFactory.createClient(networkProvider)).thenReturn(client); + + List<Network> expected = Arrays.asList(mock(Network.class)); + when(client.getAll()).thenReturn(expected); + + GetAllNetworksOnProviderQuery<NetworkProviderQueryParameters> query = getQuery(); + query.executeQueryCommand(); + + assertEquals("Wrong result returned", expected, getQuery().getQueryReturnValue().getReturnValue()); + } +} 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 5c18ced..beb4e9b 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 @@ -59,6 +59,9 @@ GetVmsAndNetworkInterfacesByNetworkId, GetVmTemplatesAndNetworkInterfacesByNetworkId, + // External network providers + GetAllNetworksOnProvider, + // VdsGroups GetVdsCertificateSubjectByVdsId(VdcQueryAuthType.User), GetVdsCertificateSubjectByVmId(VdcQueryAuthType.User), diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/network/NetworkProviderQueryParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/network/NetworkProviderQueryParameters.java new file mode 100644 index 0000000..00e296b --- /dev/null +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/network/NetworkProviderQueryParameters.java @@ -0,0 +1,23 @@ +package org.ovirt.engine.core.common.queries.network; + +import org.ovirt.engine.core.common.businessentities.network.NetworkProvider; +import org.ovirt.engine.core.common.queries.VdcQueryParametersBase; + +public class NetworkProviderQueryParameters extends VdcQueryParametersBase { + + private static final long serialVersionUID = 461002540602589458L; + + private NetworkProvider networkProvider; + + public NetworkProviderQueryParameters() { + } + + public NetworkProviderQueryParameters(NetworkProvider networkProvider) { + super(); + this.networkProvider = networkProvider; + } + + public NetworkProvider getNetworkProvider() { + return networkProvider; + } +} -- To view, visit http://gerrit.ovirt.org/10789 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2954addacfea09e0b44bf2770f80be92f75b6db5 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Mike Kolesnik <mkole...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches