From 3f5733cea741420381d5767fba84224388096525 Mon Sep 17 00:00:00 2001 From: Alena Prokharchyk Date: Mon, 15 Oct 2012 16:32:27 -0700 Subject: [PATCH] CS-16412: fixed count for following commands: listVlanIpRanges listOsCategories listOsTypes listSystemVms listPhysicalNetworks listCounters listConditions listAutoScalePolicies listAutoScaleVmProfiles listAutoScaleVmGroups listConfigurations listStoragePools listClusters listPods listInstanceGroups listSSHKeyPairs listHypervisorCapabilities listNetworkServiceProviders listVpnCustomerGateways listVpnGateways listVpnConnections listProjects listProjectAccounts listProjectInvitations listTrafficTypes Conflicts: api/src/com/cloud/api/commands/ListAutoScalePoliciesCmd.java api/src/com/cloud/api/commands/ListAutoScaleVmGroupsCmd.java api/src/com/cloud/api/commands/ListAutoScaleVmProfilesCmd.java api/src/com/cloud/api/commands/ListConditionsCmd.java api/src/com/cloud/api/commands/ListCountersCmd.java api/src/com/cloud/api/commands/ListVpnConnectionsCmd.java api/src/com/cloud/api/commands/ListVpnCustomerGatewaysCmd.java api/src/com/cloud/api/commands/ListVpnGatewaysCmd.java api/src/com/cloud/network/as/AutoScaleService.java server/src/com/cloud/network/as/AutoScaleManagerImpl.java server/src/com/cloud/network/as/dao/CounterDao.java server/src/com/cloud/network/as/dao/CounterDaoImpl.java server/src/com/cloud/projects/ProjectManagerImpl.java server/src/com/cloud/server/ManagementServerImpl.java --- .../com/cloud/api/commands/ListCfgsByCmd.java | 7 +- .../cloud/api/commands/ListClustersCmd.java | 7 +- .../commands/ListGuestOsCategoriesCmd.java | 7 +- .../cloud/api/commands/ListGuestOsCmd.java | 7 +- .../ListHypervisorCapabilitiesCmd.java | 8 ++- .../ListNetworkServiceProvidersCmd.java | 8 ++- .../api/commands/ListPhysicalNetworksCmd.java | 8 ++- .../com/cloud/api/commands/ListPodsByCmd.java | 8 +-- .../api/commands/ListProjectAccountsCmd.java | 8 ++- .../commands/ListProjectInvitationsCmd.java | 8 ++- .../cloud/api/commands/ListProjectsCmd.java | 7 +- .../api/commands/ListSSHKeyPairsCmd.java | 8 +-- .../api/commands/ListStoragePoolsCmd.java | 8 +-- .../cloud/api/commands/ListSystemVMsCmd.java | 7 +- .../api/commands/ListTrafficTypesCmd.java | 7 +- .../cloud/api/commands/ListVMGroupsCmd.java | 7 +- .../api/commands/ListVlanIpRangesCmd.java | 7 +- .../api/commands/ListVpnConnectionsCmd.java | 20 +++--- .../commands/ListVpnCustomerGatewaysCmd.java | 20 +++--- .../api/commands/ListVpnGatewaysCmd.java | 22 +++--- api/src/com/cloud/network/NetworkService.java | 6 +- .../network/vpn/Site2SiteVpnService.java | 8 +-- .../com/cloud/projects/ProjectService.java | 7 +- .../com/cloud/server/ManagementService.java | 22 +++--- server/src/com/cloud/api/ApiDBUtils.java | 2 +- .../com/cloud/network/NetworkManagerImpl.java | 16 +++-- .../dao/PhysicalNetworkTrafficTypeDao.java | 4 +- .../PhysicalNetworkTrafficTypeDaoImpl.java | 5 +- .../network/vpn/Site2SiteVpnManagerImpl.java | 22 +++--- .../cloud/projects/ProjectManagerImpl.java | 25 ++++--- .../com/cloud/server/ManagementServer.java | 2 +- .../cloud/server/ManagementServerImpl.java | 68 ++++++++++++------- .../cloud/network/MockNetworkManagerImpl.java | 6 +- .../projects/MockProjectManagerImpl.java | 8 ++- .../com/cloud/vpc/MockNetworkManagerImpl.java | 6 +- .../vpc/MockSite2SiteVpnManagerImpl.java | 7 +- 36 files changed, 227 insertions(+), 176 deletions(-) diff --git a/api/src/com/cloud/api/commands/ListCfgsByCmd.java b/api/src/com/cloud/api/commands/ListCfgsByCmd.java index 8dc740f00bd..6e07ca9f519 100644 --- a/api/src/com/cloud/api/commands/ListCfgsByCmd.java +++ b/api/src/com/cloud/api/commands/ListCfgsByCmd.java @@ -28,6 +28,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ConfigurationResponse; import com.cloud.api.response.ListResponse; import com.cloud.configuration.Configuration; +import com.cloud.utils.Pair; @Implementation(description = "Lists all configurations.", responseObject = ConfigurationResponse.class) public class ListCfgsByCmd extends BaseListCmd { @@ -78,16 +79,16 @@ public class ListCfgsByCmd extends BaseListCmd { @Override public void execute() { - List result = _mgr.searchForConfigurations(this); + Pair, Integer> result = _mgr.searchForConfigurations(this); ListResponse response = new ListResponse(); List configResponses = new ArrayList(); - for (Configuration cfg : result) { + for (Configuration cfg : result.first()) { ConfigurationResponse cfgResponse = _responseGenerator.createConfigurationResponse(cfg); cfgResponse.setObjectName("configuration"); configResponses.add(cfgResponse); } - response.setResponses(configResponses); + response.setResponses(configResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListClustersCmd.java b/api/src/com/cloud/api/commands/ListClustersCmd.java index e3e2e5096ba..e571bf52e8e 100755 --- a/api/src/com/cloud/api/commands/ListClustersCmd.java +++ b/api/src/com/cloud/api/commands/ListClustersCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ClusterResponse; import com.cloud.api.response.ListResponse; import com.cloud.org.Cluster; +import com.cloud.utils.Pair; @Implementation(description="Lists clusters.", responseObject=ClusterResponse.class) public class ListClustersCmd extends BaseListCmd { @@ -127,16 +128,16 @@ public class ListClustersCmd extends BaseListCmd { @Override public void execute(){ - List result = _mgr.searchForClusters(this); + Pair, Integer> result = _mgr.searchForClusters(this); ListResponse response = new ListResponse(); List clusterResponses = new ArrayList(); - for (Cluster cluster : result) { + for (Cluster cluster : result.first()) { ClusterResponse clusterResponse = _responseGenerator.createClusterResponse(cluster,showCapacities); clusterResponse.setObjectName("cluster"); clusterResponses.add(clusterResponse); } - response.setResponses(clusterResponses); + response.setResponses(clusterResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListGuestOsCategoriesCmd.java b/api/src/com/cloud/api/commands/ListGuestOsCategoriesCmd.java index 9974aca8429..79ce7097d8a 100644 --- a/api/src/com/cloud/api/commands/ListGuestOsCategoriesCmd.java +++ b/api/src/com/cloud/api/commands/ListGuestOsCategoriesCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.GuestOSCategoryResponse; import com.cloud.api.response.ListResponse; import com.cloud.storage.GuestOsCategory; +import com.cloud.utils.Pair; @Implementation(description="Lists all supported OS categories for this cloud.", responseObject=GuestOSCategoryResponse.class) public class ListGuestOsCategoriesCmd extends BaseListCmd { @@ -72,10 +73,10 @@ public class ListGuestOsCategoriesCmd extends BaseListCmd { @Override public void execute(){ - List result = _mgr.listGuestOSCategoriesByCriteria(this); + Pair, Integer> result = _mgr.listGuestOSCategoriesByCriteria(this); ListResponse response = new ListResponse(); List osCatResponses = new ArrayList(); - for (GuestOsCategory osCategory : result) { + for (GuestOsCategory osCategory : result.first()) { GuestOSCategoryResponse categoryResponse = new GuestOSCategoryResponse(); categoryResponse.setId(osCategory.getId()); categoryResponse.setName(osCategory.getName()); @@ -84,7 +85,7 @@ public class ListGuestOsCategoriesCmd extends BaseListCmd { osCatResponses.add(categoryResponse); } - response.setResponses(osCatResponses); + response.setResponses(osCatResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListGuestOsCmd.java b/api/src/com/cloud/api/commands/ListGuestOsCmd.java index 396c441f0af..61ec453b83c 100644 --- a/api/src/com/cloud/api/commands/ListGuestOsCmd.java +++ b/api/src/com/cloud/api/commands/ListGuestOsCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.GuestOSResponse; import com.cloud.api.response.ListResponse; import com.cloud.storage.GuestOS; +import com.cloud.utils.Pair; @Implementation(description="Lists all supported OS types for this cloud.", responseObject=GuestOSResponse.class) public class ListGuestOsCmd extends BaseListCmd { @@ -79,10 +80,10 @@ public class ListGuestOsCmd extends BaseListCmd { @Override public void execute(){ - List result = _mgr.listGuestOSByCriteria(this); + Pair, Integer> result = _mgr.listGuestOSByCriteria(this); ListResponse response = new ListResponse(); List osResponses = new ArrayList(); - for (GuestOS guestOS : result) { + for (GuestOS guestOS : result.first()) { GuestOSResponse guestOSResponse = new GuestOSResponse(); guestOSResponse.setDescription(guestOS.getDisplayName()); guestOSResponse.setId(guestOS.getId()); @@ -92,7 +93,7 @@ public class ListGuestOsCmd extends BaseListCmd { osResponses.add(guestOSResponse); } - response.setResponses(osResponses); + response.setResponses(osResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListHypervisorCapabilitiesCmd.java b/api/src/com/cloud/api/commands/ListHypervisorCapabilitiesCmd.java index 0cda15a8368..9afd3eb2903 100644 --- a/api/src/com/cloud/api/commands/ListHypervisorCapabilitiesCmd.java +++ b/api/src/com/cloud/api/commands/ListHypervisorCapabilitiesCmd.java @@ -30,6 +30,7 @@ import com.cloud.api.response.HypervisorCapabilitiesResponse; import com.cloud.api.response.ListResponse; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.hypervisor.HypervisorCapabilities; +import com.cloud.utils.Pair; @Implementation(description="Lists all hypervisor capabilities.", responseObject=HypervisorCapabilitiesResponse.class, since="3.0.0") public class ListHypervisorCapabilitiesCmd extends BaseListCmd { @@ -76,16 +77,17 @@ public class ListHypervisorCapabilitiesCmd extends BaseListCmd { @Override public void execute(){ - List hpvCapabilities = _mgr.listHypervisorCapabilities(getId(), getHypervisor(), getKeyword(), this.getStartIndex(), this.getPageSizeVal()); + Pair, Integer> hpvCapabilities = _mgr.listHypervisorCapabilities(getId(), + getHypervisor(), getKeyword(), this.getStartIndex(), this.getPageSizeVal()); ListResponse response = new ListResponse(); List hpvCapabilitiesResponses = new ArrayList(); - for (HypervisorCapabilities capability : hpvCapabilities) { + for (HypervisorCapabilities capability : hpvCapabilities.first()) { HypervisorCapabilitiesResponse hpvCapabilityResponse = _responseGenerator.createHypervisorCapabilitiesResponse(capability); hpvCapabilityResponse.setObjectName("hypervisorCapabilities"); hpvCapabilitiesResponses.add(hpvCapabilityResponse); } - response.setResponses(hpvCapabilitiesResponses); + response.setResponses(hpvCapabilitiesResponses, hpvCapabilities.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListNetworkServiceProvidersCmd.java b/api/src/com/cloud/api/commands/ListNetworkServiceProvidersCmd.java index c973b35b711..97bfd77f463 100644 --- a/api/src/com/cloud/api/commands/ListNetworkServiceProvidersCmd.java +++ b/api/src/com/cloud/api/commands/ListNetworkServiceProvidersCmd.java @@ -30,6 +30,7 @@ import com.cloud.api.response.ListResponse; import com.cloud.api.response.ProviderResponse; import com.cloud.network.PhysicalNetworkServiceProvider; import com.cloud.user.Account; +import com.cloud.utils.Pair; @Implementation(description="Lists network serviceproviders for a given physical network.", responseObject=ProviderResponse.class, since="3.0.0") @@ -86,15 +87,16 @@ public class ListNetworkServiceProvidersCmd extends BaseListCmd { @Override public void execute(){ - List serviceProviders = _networkService.listNetworkServiceProviders(getPhysicalNetworkId(), getName(), getState(), this.getStartIndex(), this.getPageSizeVal()); + Pair, Integer> serviceProviders = _networkService.listNetworkServiceProviders(getPhysicalNetworkId(), + getName(), getState(), this.getStartIndex(), this.getPageSizeVal()); ListResponse response = new ListResponse(); List serviceProvidersResponses = new ArrayList(); - for (PhysicalNetworkServiceProvider serviceProvider : serviceProviders) { + for (PhysicalNetworkServiceProvider serviceProvider : serviceProviders.first()) { ProviderResponse serviceProviderResponse = _responseGenerator.createNetworkServiceProviderResponse(serviceProvider); serviceProvidersResponses.add(serviceProviderResponse); } - response.setResponses(serviceProvidersResponses); + response.setResponses(serviceProvidersResponses, serviceProviders.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListPhysicalNetworksCmd.java b/api/src/com/cloud/api/commands/ListPhysicalNetworksCmd.java index e1ec427d718..ed2968fffe9 100644 --- a/api/src/com/cloud/api/commands/ListPhysicalNetworksCmd.java +++ b/api/src/com/cloud/api/commands/ListPhysicalNetworksCmd.java @@ -32,6 +32,7 @@ import com.cloud.api.response.ListResponse; import com.cloud.api.response.PhysicalNetworkResponse; import com.cloud.network.PhysicalNetwork; import com.cloud.user.Account; +import com.cloud.utils.Pair; @Implementation(description="Lists physical networks", responseObject=PhysicalNetworkResponse.class, since="3.0.0") public class ListPhysicalNetworksCmd extends BaseListCmd { @@ -86,15 +87,16 @@ public class ListPhysicalNetworksCmd extends BaseListCmd { @Override public void execute(){ - List result = _networkService.searchPhysicalNetworks(getId(),getZoneId(), this.getKeyword(), this.getStartIndex(), this.getPageSizeVal(), getNetworkName()); + Pair, Integer> result = _networkService.searchPhysicalNetworks(getId(),getZoneId(), + this.getKeyword(), this.getStartIndex(), this.getPageSizeVal(), getNetworkName()); if (result != null) { ListResponse response = new ListResponse(); List networkResponses = new ArrayList(); - for (PhysicalNetwork network : result) { + for (PhysicalNetwork network : result.first()) { PhysicalNetworkResponse networkResponse = _responseGenerator.createPhysicalNetworkResponse(network); networkResponses.add(networkResponse); } - response.setResponses(networkResponses); + response.setResponses(networkResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); }else { diff --git a/api/src/com/cloud/api/commands/ListPodsByCmd.java b/api/src/com/cloud/api/commands/ListPodsByCmd.java index b1270bbf192..37b8e29d6f6 100755 --- a/api/src/com/cloud/api/commands/ListPodsByCmd.java +++ b/api/src/com/cloud/api/commands/ListPodsByCmd.java @@ -26,10 +26,10 @@ import com.cloud.api.BaseListCmd; import com.cloud.api.IdentityMapper; import com.cloud.api.Implementation; import com.cloud.api.Parameter; -import com.cloud.api.BaseCmd.CommandType; import com.cloud.api.response.ListResponse; import com.cloud.api.response.PodResponse; import com.cloud.dc.Pod; +import com.cloud.utils.Pair; @Implementation(description="Lists all Pods.", responseObject=PodResponse.class) public class ListPodsByCmd extends BaseListCmd { @@ -93,16 +93,16 @@ public class ListPodsByCmd extends BaseListCmd { @Override public void execute(){ - List result = _mgr.searchForPods(this); + Pair, Integer> result = _mgr.searchForPods(this); ListResponse response = new ListResponse(); List podResponses = new ArrayList(); - for (Pod pod : result) { + for (Pod pod : result.first()) { PodResponse podResponse = _responseGenerator.createPodResponse(pod, showCapacities); podResponse.setObjectName("pod"); podResponses.add(podResponse); } - response.setResponses(podResponses); + response.setResponses(podResponses, result.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListProjectAccountsCmd.java b/api/src/com/cloud/api/commands/ListProjectAccountsCmd.java index 893e7534ce9..088363377c7 100644 --- a/api/src/com/cloud/api/commands/ListProjectAccountsCmd.java +++ b/api/src/com/cloud/api/commands/ListProjectAccountsCmd.java @@ -31,6 +31,7 @@ import com.cloud.api.response.ProjectAccountResponse; import com.cloud.api.response.ProjectResponse; import com.cloud.projects.ProjectAccount; import com.cloud.user.Account; +import com.cloud.utils.Pair; @Implementation(description="Lists project's accounts", responseObject=ProjectResponse.class, since="3.0.0") public class ListProjectAccountsCmd extends BaseListCmd { @@ -78,14 +79,15 @@ public class ListProjectAccountsCmd extends BaseListCmd { @Override public void execute(){ - List projectAccounts = _projectService.listProjectAccounts(projectId, accountName, role, this.getStartIndex(), this.getPageSizeVal()); + Pair, Integer> projectAccounts = _projectService.listProjectAccounts(projectId, + accountName, role, this.getStartIndex(), this.getPageSizeVal()); ListResponse response = new ListResponse(); List projectResponses = new ArrayList(); - for (ProjectAccount projectAccount : projectAccounts) { + for (ProjectAccount projectAccount : projectAccounts.first()) { ProjectAccountResponse projectAccountResponse = _responseGenerator.createProjectAccountResponse(projectAccount); projectResponses.add(projectAccountResponse); } - response.setResponses(projectResponses); + response.setResponses(projectResponses, projectAccounts.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); diff --git a/api/src/com/cloud/api/commands/ListProjectInvitationsCmd.java b/api/src/com/cloud/api/commands/ListProjectInvitationsCmd.java index cb707805cde..fe697808b4b 100644 --- a/api/src/com/cloud/api/commands/ListProjectInvitationsCmd.java +++ b/api/src/com/cloud/api/commands/ListProjectInvitationsCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.ProjectInvitationResponse; import com.cloud.projects.ProjectInvitation; +import com.cloud.utils.Pair; @Implementation(description = "Lists projects and provides detailed information for listed projects", responseObject = ProjectInvitationResponse.class, since = "3.0.0") public class ListProjectInvitationsCmd extends BaseListAccountResourcesCmd { @@ -82,15 +83,16 @@ public class ListProjectInvitationsCmd extends BaseListAccountResourcesCmd { @Override public void execute() { - List invites = _projectService.listProjectInvitations(id, projectId, this.getAccountName(), this.getDomainId(), state, activeOnly, this.getStartIndex(), this.getPageSizeVal(), + Pair, Integer> invites = _projectService.listProjectInvitations(id, projectId, + this.getAccountName(), this.getDomainId(), state, activeOnly, this.getStartIndex(), this.getPageSizeVal(), this.isRecursive(), this.listAll()); ListResponse response = new ListResponse(); List projectInvitationResponses = new ArrayList(); - for (ProjectInvitation invite : invites) { + for (ProjectInvitation invite : invites.first()) { ProjectInvitationResponse projectResponse = _responseGenerator.createProjectInvitationResponse(invite); projectInvitationResponses.add(projectResponse); } - response.setResponses(projectInvitationResponses); + response.setResponses(projectInvitationResponses, invites.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); diff --git a/api/src/com/cloud/api/commands/ListProjectsCmd.java b/api/src/com/cloud/api/commands/ListProjectsCmd.java index 187e52cfce1..b7a04eb4e33 100644 --- a/api/src/com/cloud/api/commands/ListProjectsCmd.java +++ b/api/src/com/cloud/api/commands/ListProjectsCmd.java @@ -34,6 +34,7 @@ import com.cloud.api.response.ListResponse; import com.cloud.api.response.ProjectResponse; import com.cloud.exception.InvalidParameterValueException; import com.cloud.projects.Project; +import com.cloud.utils.Pair; @Implementation(description="Lists projects and provides detailed information for listed projects", responseObject=ProjectResponse.class, since="3.0.0") public class ListProjectsCmd extends BaseListAccountResourcesCmd { @@ -106,16 +107,16 @@ public class ListProjectsCmd extends BaseListAccountResourcesCmd { @Override public void execute(){ - List projects = _projectService.listProjects(id, name, displayText, state, + Pair, Integer> projects = _projectService.listProjects(id, name, displayText, state, this.getAccountName(), this.getDomainId(), this.getKeyword(), this.getStartIndex(), this.getPageSizeVal(), this.listAll(), this.isRecursive(), getTags()); ListResponse response = new ListResponse(); List projectResponses = new ArrayList(); - for (Project project : projects) { + for (Project project : projects.first()) { ProjectResponse projectResponse = _responseGenerator.createProjectResponse(project); projectResponses.add(projectResponse); } - response.setResponses(projectResponses); + response.setResponses(projectResponses, projects.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); diff --git a/api/src/com/cloud/api/commands/ListSSHKeyPairsCmd.java b/api/src/com/cloud/api/commands/ListSSHKeyPairsCmd.java index 30675542457..8a6cb2730a4 100644 --- a/api/src/com/cloud/api/commands/ListSSHKeyPairsCmd.java +++ b/api/src/com/cloud/api/commands/ListSSHKeyPairsCmd.java @@ -22,13 +22,13 @@ import java.util.List; import org.apache.log4j.Logger; import com.cloud.api.ApiConstants; -import com.cloud.api.BaseCmd.CommandType; import com.cloud.api.BaseListProjectAndAccountResourcesCmd; import com.cloud.api.Implementation; import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.SSHKeyPairResponse; import com.cloud.user.SSHKeyPair; +import com.cloud.utils.Pair; @Implementation(description="List registered keypairs", responseObject=SSHKeyPairResponse.class) public class ListSSHKeyPairsCmd extends BaseListProjectAndAccountResourcesCmd { @@ -66,16 +66,16 @@ public class ListSSHKeyPairsCmd extends BaseListProjectAndAccountResourcesCmd { @Override public void execute() { - List resultList = _mgr.listSSHKeyPairs(this); + Pair, Integer> resultList = _mgr.listSSHKeyPairs(this); List responses = new ArrayList(); - for (SSHKeyPair result : resultList) { + for (SSHKeyPair result : resultList.first()) { SSHKeyPairResponse r = new SSHKeyPairResponse(result.getName(), result.getFingerprint()); r.setObjectName("sshkeypair"); responses.add(r); } ListResponse response = new ListResponse(); - response.setResponses(responses); + response.setResponses(responses, resultList.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListStoragePoolsCmd.java b/api/src/com/cloud/api/commands/ListStoragePoolsCmd.java index 6208dcd5691..7199b0b25ec 100644 --- a/api/src/com/cloud/api/commands/ListStoragePoolsCmd.java +++ b/api/src/com/cloud/api/commands/ListStoragePoolsCmd.java @@ -26,11 +26,11 @@ import com.cloud.api.BaseListCmd; import com.cloud.api.IdentityMapper; import com.cloud.api.Implementation; import com.cloud.api.Parameter; -import com.cloud.api.BaseCmd.CommandType; import com.cloud.api.response.ListResponse; import com.cloud.api.response.StoragePoolResponse; import com.cloud.async.AsyncJob; import com.cloud.storage.StoragePool; +import com.cloud.utils.Pair; @Implementation(description="Lists storage pools.", responseObject=StoragePoolResponse.class) public class ListStoragePoolsCmd extends BaseListCmd { @@ -114,16 +114,16 @@ public class ListStoragePoolsCmd extends BaseListCmd { @Override public void execute(){ - List pools = _mgr.searchForStoragePools(this); + Pair, Integer> pools = _mgr.searchForStoragePools(this); ListResponse response = new ListResponse(); List poolResponses = new ArrayList(); - for (StoragePool pool : pools) { + for (StoragePool pool : pools.first()) { StoragePoolResponse poolResponse = _responseGenerator.createStoragePoolResponse(pool); poolResponse.setObjectName("storagepool"); poolResponses.add(poolResponse); } - response.setResponses(poolResponses); + response.setResponses(poolResponses, pools.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListSystemVMsCmd.java b/api/src/com/cloud/api/commands/ListSystemVMsCmd.java index 03e19855e0c..44391971469 100644 --- a/api/src/com/cloud/api/commands/ListSystemVMsCmd.java +++ b/api/src/com/cloud/api/commands/ListSystemVMsCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.SystemVmResponse; import com.cloud.async.AsyncJob; +import com.cloud.utils.Pair; import com.cloud.vm.VirtualMachine; @Implementation(description="List system virtual machines.", responseObject=SystemVmResponse.class) @@ -121,16 +122,16 @@ public class ListSystemVMsCmd extends BaseListCmd { @Override public void execute(){ - List systemVMs = _mgr.searchForSystemVm(this); + Pair, Integer> systemVMs = _mgr.searchForSystemVm(this); ListResponse response = new ListResponse(); List vmResponses = new ArrayList(); - for (VirtualMachine systemVM : systemVMs) { + for (VirtualMachine systemVM : systemVMs.first()) { SystemVmResponse vmResponse = _responseGenerator.createSystemVmResponse(systemVM); vmResponse.setObjectName("systemvm"); vmResponses.add(vmResponse); } - response.setResponses(vmResponses); + response.setResponses(vmResponses, systemVMs.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListTrafficTypesCmd.java b/api/src/com/cloud/api/commands/ListTrafficTypesCmd.java index 59ad2a745a4..671d406e289 100755 --- a/api/src/com/cloud/api/commands/ListTrafficTypesCmd.java +++ b/api/src/com/cloud/api/commands/ListTrafficTypesCmd.java @@ -31,6 +31,7 @@ import com.cloud.api.response.ProviderResponse; import com.cloud.api.response.TrafficTypeResponse; import com.cloud.network.PhysicalNetworkTrafficType; import com.cloud.user.Account; +import com.cloud.utils.Pair; @Implementation(description="Lists traffic types of a given physical network.", responseObject=ProviderResponse.class, since="3.0.0") @@ -72,15 +73,15 @@ public class ListTrafficTypesCmd extends BaseListCmd { @Override public void execute(){ - List trafficTypes = _networkService.listTrafficTypes(getPhysicalNetworkId()); + Pair, Integer> trafficTypes = _networkService.listTrafficTypes(getPhysicalNetworkId()); ListResponse response = new ListResponse(); List trafficTypesResponses = new ArrayList(); - for (PhysicalNetworkTrafficType trafficType : trafficTypes) { + for (PhysicalNetworkTrafficType trafficType : trafficTypes.first()) { TrafficTypeResponse trafficTypeResponse = _responseGenerator.createTrafficTypeResponse(trafficType); trafficTypesResponses.add(trafficTypeResponse); } - response.setResponses(trafficTypesResponses); + response.setResponses(trafficTypesResponses, trafficTypes.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListVMGroupsCmd.java b/api/src/com/cloud/api/commands/ListVMGroupsCmd.java index 33cc9273f04..34a5e195a3e 100644 --- a/api/src/com/cloud/api/commands/ListVMGroupsCmd.java +++ b/api/src/com/cloud/api/commands/ListVMGroupsCmd.java @@ -28,6 +28,7 @@ import com.cloud.api.Implementation; import com.cloud.api.Parameter; import com.cloud.api.response.InstanceGroupResponse; import com.cloud.api.response.ListResponse; +import com.cloud.utils.Pair; import com.cloud.vm.InstanceGroup; @Implementation(description="Lists vm groups", responseObject=InstanceGroupResponse.class) @@ -70,16 +71,16 @@ public class ListVMGroupsCmd extends BaseListProjectAndAccountResourcesCmd { @Override public void execute(){ - List groups = _mgr.searchForVmGroups(this); + Pair, Integer> groups = _mgr.searchForVmGroups(this); ListResponse response = new ListResponse(); List responses = new ArrayList(); - for (InstanceGroup group : groups) { + for (InstanceGroup group : groups.first()) { InstanceGroupResponse groupResponse = _responseGenerator.createInstanceGroupResponse(group); groupResponse.setObjectName("instancegroup"); responses.add(groupResponse); } - response.setResponses(responses); + response.setResponses(responses, groups.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListVlanIpRangesCmd.java b/api/src/com/cloud/api/commands/ListVlanIpRangesCmd.java index 039628ab361..5cefa65cb24 100644 --- a/api/src/com/cloud/api/commands/ListVlanIpRangesCmd.java +++ b/api/src/com/cloud/api/commands/ListVlanIpRangesCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.VlanIpRangeResponse; import com.cloud.dc.Vlan; +import com.cloud.utils.Pair; @Implementation(description="Lists all VLAN IP ranges.", responseObject=VlanIpRangeResponse.class) public class ListVlanIpRangesCmd extends BaseListCmd { @@ -132,16 +133,16 @@ public class ListVlanIpRangesCmd extends BaseListCmd { @Override public void execute(){ - List vlans = _mgr.searchForVlans(this); + Pair, Integer> vlans = _mgr.searchForVlans(this); ListResponse response = new ListResponse(); List vlanResponses = new ArrayList(); - for (Vlan vlan : vlans) { + for (Vlan vlan : vlans.first()) { VlanIpRangeResponse vlanResponse = _responseGenerator.createVlanIpRangeResponse(vlan); vlanResponse.setObjectName("vlaniprange"); vlanResponses.add(vlanResponse); } - response.setResponses(vlanResponses); + response.setResponses(vlanResponses, vlans.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListVpnConnectionsCmd.java b/api/src/com/cloud/api/commands/ListVpnConnectionsCmd.java index 512f9458f27..c7d5523d7b2 100644 --- a/api/src/com/cloud/api/commands/ListVpnConnectionsCmd.java +++ b/api/src/com/cloud/api/commands/ListVpnConnectionsCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.Site2SiteVpnConnectionResponse; import com.cloud.network.Site2SiteVpnConnection; +import com.cloud.utils.Pair; @Implementation(description="Lists site to site vpn connection gateways", responseObject=Site2SiteVpnConnectionResponse.class) public class ListVpnConnectionsCmd extends BaseListProjectAndAccountResourcesCmd { @@ -72,20 +73,19 @@ public class ListVpnConnectionsCmd extends BaseListProjectAndAccountResourcesCmd @Override public void execute(){ - List conns = _s2sVpnService.searchForVpnConnections(this); + Pair, Integer> conns = _s2sVpnService.searchForVpnConnections(this); ListResponse response = new ListResponse(); List connResponses = new ArrayList(); - if (conns != null && !conns.isEmpty()) { - for (Site2SiteVpnConnection conn : conns) { - if (conn == null) { - continue; - } - Site2SiteVpnConnectionResponse site2SiteVpnConnectonRes = _responseGenerator.createSite2SiteVpnConnectionResponse(conn); - site2SiteVpnConnectonRes.setObjectName("vpnconnection"); - connResponses.add(site2SiteVpnConnectonRes); + for (Site2SiteVpnConnection conn : conns.first()) { + if (conn == null) { + continue; } + Site2SiteVpnConnectionResponse site2SiteVpnConnectonRes = _responseGenerator.createSite2SiteVpnConnectionResponse(conn); + site2SiteVpnConnectonRes.setObjectName("vpnconnection"); + connResponses.add(site2SiteVpnConnectonRes); } - response.setResponses(connResponses); + + response.setResponses(connResponses, conns.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListVpnCustomerGatewaysCmd.java b/api/src/com/cloud/api/commands/ListVpnCustomerGatewaysCmd.java index 1e8b06ba81e..51fde93976e 100644 --- a/api/src/com/cloud/api/commands/ListVpnCustomerGatewaysCmd.java +++ b/api/src/com/cloud/api/commands/ListVpnCustomerGatewaysCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.Site2SiteCustomerGatewayResponse; import com.cloud.network.Site2SiteCustomerGateway; +import com.cloud.utils.Pair; @Implementation(description="Lists site to site vpn customer gateways", responseObject=Site2SiteCustomerGatewayResponse.class) public class ListVpnCustomerGatewaysCmd extends BaseListProjectAndAccountResourcesCmd { @@ -64,20 +65,19 @@ public class ListVpnCustomerGatewaysCmd extends BaseListProjectAndAccountResourc @Override public void execute(){ - List gws = _s2sVpnService.searchForCustomerGateways(this); + Pair, Integer> gws = _s2sVpnService.searchForCustomerGateways(this); ListResponse response = new ListResponse(); List gwResponses = new ArrayList(); - if (gws != null && !gws.isEmpty()) { - for (Site2SiteCustomerGateway gw : gws) { - if (gw == null) { - continue; - } - Site2SiteCustomerGatewayResponse site2SiteCustomerGatewayRes = _responseGenerator.createSite2SiteCustomerGatewayResponse(gw); - site2SiteCustomerGatewayRes.setObjectName("vpncustomergateway"); - gwResponses.add(site2SiteCustomerGatewayRes); + for (Site2SiteCustomerGateway gw : gws.first()) { + if (gw == null) { + continue; } + Site2SiteCustomerGatewayResponse site2SiteCustomerGatewayRes = _responseGenerator.createSite2SiteCustomerGatewayResponse(gw); + site2SiteCustomerGatewayRes.setObjectName("vpncustomergateway"); + gwResponses.add(site2SiteCustomerGatewayRes); } - response.setResponses(gwResponses); + + response.setResponses(gwResponses, gws.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/api/commands/ListVpnGatewaysCmd.java b/api/src/com/cloud/api/commands/ListVpnGatewaysCmd.java index 63b212b0e31..ec0c054fdb7 100644 --- a/api/src/com/cloud/api/commands/ListVpnGatewaysCmd.java +++ b/api/src/com/cloud/api/commands/ListVpnGatewaysCmd.java @@ -29,6 +29,7 @@ import com.cloud.api.Parameter; import com.cloud.api.response.ListResponse; import com.cloud.api.response.Site2SiteVpnGatewayResponse; import com.cloud.network.Site2SiteVpnGateway; +import com.cloud.utils.Pair; @Implementation(description="Lists site 2 site vpn gateways", responseObject=Site2SiteVpnGatewayResponse.class) public class ListVpnGatewaysCmd extends BaseListProjectAndAccountResourcesCmd { @@ -71,20 +72,19 @@ public class ListVpnGatewaysCmd extends BaseListProjectAndAccountResourcesCmd { @Override public void execute(){ - List gws = _s2sVpnService.searchForVpnGateways(this); + Pair, Integer> gws = _s2sVpnService.searchForVpnGateways(this); ListResponse response = new ListResponse(); List gwResponses = new ArrayList(); - if (gws != null && !gws.isEmpty()) { - for (Site2SiteVpnGateway gw : gws) { - if (gw == null) { - continue; - } - Site2SiteVpnGatewayResponse site2SiteVpnGatewayRes = _responseGenerator.createSite2SiteVpnGatewayResponse(gw); - site2SiteVpnGatewayRes.setObjectName("vpngateway"); - gwResponses.add(site2SiteVpnGatewayRes); - } + for (Site2SiteVpnGateway gw : gws.first()) { + if (gw == null) { + continue; + } + Site2SiteVpnGatewayResponse site2SiteVpnGatewayRes = _responseGenerator.createSite2SiteVpnGatewayResponse(gw); + site2SiteVpnGatewayRes.setObjectName("vpngateway"); + gwResponses.add(site2SiteVpnGatewayRes); } - response.setResponses(gwResponses); + + response.setResponses(gwResponses, gws.second()); response.setResponseName(getCommandName()); this.setResponseObject(response); } diff --git a/api/src/com/cloud/network/NetworkService.java b/api/src/com/cloud/network/NetworkService.java index 6bbc36c75ac..a20056152eb 100755 --- a/api/src/com/cloud/network/NetworkService.java +++ b/api/src/com/cloud/network/NetworkService.java @@ -82,7 +82,7 @@ public interface NetworkService { PhysicalNetwork createPhysicalNetwork(Long zoneId, String vnetRange, String networkSpeed, List isolationMethods, String broadcastDomainRange, Long domainId, List tags, String name); - List searchPhysicalNetworks(Long id, Long zoneId, String keyword, + Pair, Integer> searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name); PhysicalNetwork updatePhysicalNetwork(Long id, String networkSpeed, List tags, @@ -97,7 +97,7 @@ public interface NetworkService { PhysicalNetworkServiceProvider addProviderToPhysicalNetwork(Long physicalNetworkId, String providerName, Long destinationPhysicalNetworkId, List enabledServices); - List listNetworkServiceProviders(Long physicalNetworkId, String name, + Pair, Integer> listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize); PhysicalNetworkServiceProvider updateNetworkServiceProvider(Long id, String state, List enabledServices); @@ -123,7 +123,7 @@ public interface NetworkService { boolean deletePhysicalNetworkTrafficType(Long id); - List listTrafficTypes(Long physicalNetworkId); + Pair, Integer> listTrafficTypes(Long physicalNetworkId); PhysicalNetwork getDefaultPhysicalNetworkByZoneAndTrafficType(long zoneId, TrafficType trafficType); diff --git a/api/src/com/cloud/network/vpn/Site2SiteVpnService.java b/api/src/com/cloud/network/vpn/Site2SiteVpnService.java index 0e98b9e8786..69eab1a13f6 100644 --- a/api/src/com/cloud/network/vpn/Site2SiteVpnService.java +++ b/api/src/com/cloud/network/vpn/Site2SiteVpnService.java @@ -31,10 +31,10 @@ import com.cloud.api.commands.ResetVpnConnectionCmd; import com.cloud.api.commands.UpdateVpnCustomerGatewayCmd; import com.cloud.exception.NetworkRuleConflictException; import com.cloud.exception.ResourceUnavailableException; -import com.cloud.network.IpAddress; import com.cloud.network.Site2SiteCustomerGateway; import com.cloud.network.Site2SiteVpnConnection; import com.cloud.network.Site2SiteVpnGateway; +import com.cloud.utils.Pair; public interface Site2SiteVpnService { Site2SiteVpnGateway createVpnGateway(CreateVpnGatewayCmd cmd); @@ -46,8 +46,8 @@ public interface Site2SiteVpnService { boolean deleteVpnGateway(DeleteVpnGatewayCmd deleteVpnGatewayCmd); boolean deleteVpnConnection(DeleteVpnConnectionCmd deleteVpnConnectionCmd) throws ResourceUnavailableException; Site2SiteVpnConnection resetVpnConnection(ResetVpnConnectionCmd resetVpnConnectionCmd) throws ResourceUnavailableException; - List searchForCustomerGateways(ListVpnCustomerGatewaysCmd listVpnCustomerGatewaysCmd); - List searchForVpnGateways(ListVpnGatewaysCmd listVpnGatewaysCmd); - List searchForVpnConnections(ListVpnConnectionsCmd listVpnConnectionsCmd); + Pair, Integer> searchForCustomerGateways(ListVpnCustomerGatewaysCmd listVpnCustomerGatewaysCmd); + Pair, Integer> searchForVpnGateways(ListVpnGatewaysCmd listVpnGatewaysCmd); + Pair, Integer> searchForVpnConnections(ListVpnConnectionsCmd listVpnConnectionsCmd); Site2SiteCustomerGateway updateCustomerGateway(UpdateVpnCustomerGatewayCmd updateVpnCustomerGatewayCmd); } diff --git a/api/src/com/cloud/projects/ProjectService.java b/api/src/com/cloud/projects/ProjectService.java index 5834f1ce712..ea143b7e868 100644 --- a/api/src/com/cloud/projects/ProjectService.java +++ b/api/src/com/cloud/projects/ProjectService.java @@ -24,6 +24,7 @@ import com.cloud.exception.ResourceAllocationException; import com.cloud.exception.ResourceUnavailableException; import com.cloud.projects.ProjectAccount.Role; import com.cloud.user.Account; +import com.cloud.utils.Pair; public interface ProjectService { /** @@ -60,7 +61,7 @@ public interface ProjectService { */ Project getProject(long id); - List listProjects(Long id, String name, String displayText, String state, String accountName, + Pair, Integer> listProjects(Long id, String name, String displayText, String state, String accountName, Long domainId, String keyword, Long startIndex, Long pageSize, boolean listAll, boolean isRecursive, Map tags); ProjectAccount assignAccountToProject(Project project, long accountId, Role accountRole); @@ -79,9 +80,9 @@ public interface ProjectService { boolean deleteAccountFromProject(long projectId, String accountName); - List listProjectAccounts(long projectId, String accountName, String role, Long startIndex, Long pageSizeVal); + Pair, Integer> listProjectAccounts(long projectId, String accountName, String role, Long startIndex, Long pageSizeVal); - List listProjectInvitations(Long id, Long projectId, String accountName, Long domainId, String state, boolean activeOnly, Long startIndex, Long pageSizeVal, boolean isRecursive, + Pair, Integer> listProjectInvitations(Long id, Long projectId, String accountName, Long domainId, String state, boolean activeOnly, Long startIndex, Long pageSizeVal, boolean isRecursive, boolean listAll); boolean updateInvitation(long projectId, String accountName, String token, boolean accept); diff --git a/api/src/com/cloud/server/ManagementService.java b/api/src/com/cloud/server/ManagementService.java index d1a789edbec..7532cae2a64 100755 --- a/api/src/com/cloud/server/ManagementService.java +++ b/api/src/com/cloud/server/ManagementService.java @@ -114,7 +114,7 @@ public interface ManagementService { * * @return map of configuration name/values */ - List searchForConfigurations(ListCfgsByCmd c); + Pair, Integer> searchForConfigurations(ListCfgsByCmd c); /** * Searches for Service Offerings by the specified search criteria Can search by: "name" @@ -130,7 +130,7 @@ public interface ManagementService { * @param c * @return */ - List searchForClusters(ListClustersCmd c); + Pair, Integer> searchForClusters(ListClustersCmd c); /** * Searches for Clusters by the specified zone Id. @@ -145,7 +145,7 @@ public interface ManagementService { * @param cmd * @return List of Pods */ - List searchForPods(ListPodsByCmd cmd); + Pair, Integer> searchForPods(ListPodsByCmd cmd); /** * Searches for servers by the specified search criteria Can search by: "name", "type", "state", "dataCenterId", @@ -201,14 +201,14 @@ public interface ManagementService { * * @return list of GuestOS */ - List listGuestOSByCriteria(ListGuestOsCmd cmd); + Pair, Integer> listGuestOSByCriteria(ListGuestOsCmd cmd); /** * Obtains a list of all guest OS categories. * * @return list of GuestOSCategories */ - List listGuestOSCategoriesByCriteria(ListGuestOsCategoriesCmd cmd); + Pair, Integer> listGuestOSCategoriesByCriteria(ListGuestOsCategoriesCmd cmd); VirtualMachine stopSystemVM(StopSystemVmCmd cmd) throws ResourceUnavailableException, ConcurrentOperationException; @@ -283,7 +283,7 @@ public interface ManagementService { * the command that wraps the search criteria (zone, pod, name, IP address, path, and cluster id) * @return a list of storage pools that match the given criteria */ - List searchForStoragePools(ListStoragePoolsCmd cmd); + Pair, Integer> searchForStoragePools(ListStoragePoolsCmd cmd); /** * List system VMs by the given search criteria @@ -292,7 +292,7 @@ public interface ManagementService { * the command that wraps the search criteria (host, name, state, type, zone, pod, and/or id) * @return the list of system vms that match the given criteria */ - List searchForSystemVm(ListSystemVMsCmd cmd); + Pair, Integer> searchForSystemVm(ListSystemVMsCmd cmd); /** * Returns back a SHA1 signed response @@ -307,7 +307,7 @@ public interface ManagementService { InstanceGroup updateVmGroup(UpdateVMGroupCmd cmd); - List searchForVmGroups(ListVMGroupsCmd cmd); + Pair, Integer> searchForVmGroups(ListVMGroupsCmd cmd); Map listCapabilities(ListCapabilitiesCmd cmd); @@ -354,7 +354,7 @@ public interface ManagementService { * @param cmd * @return List of Vlans */ - List searchForVlans(ListVlanIpRangesCmd cmd); + Pair, Integer> searchForVlans(ListVlanIpRangesCmd cmd); /** * Search for async jobs by account and/or startDate @@ -383,7 +383,7 @@ public interface ManagementService { * The api command class. * @return The list of key pairs found. */ - List listSSHKeyPairs(ListSSHKeyPairsCmd cmd); + Pair, Integer> listSSHKeyPairs(ListSSHKeyPairsCmd cmd); /** * Registers a key pair for a given public key. @@ -439,7 +439,7 @@ public interface ManagementService { String[] listEventTypes(); - List listHypervisorCapabilities(Long id, HypervisorType hypervisorType, String keyword, Long startIndex, Long pageSizeVal); + Pair, Integer> listHypervisorCapabilities(Long id, HypervisorType hypervisorType, String keyword, Long startIndex, Long pageSizeVal); HypervisorCapabilities updateHypervisorCapabilities(Long id, Long maxGuestsLimit, Boolean securityGroupEnabled); diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java index 1d6ba4f9ec5..418fe362fd4 100755 --- a/server/src/com/cloud/api/ApiDBUtils.java +++ b/server/src/com/cloud/api/ApiDBUtils.java @@ -327,7 +327,7 @@ public class ApiDBUtils { } public static List searchForStoragePools(Criteria c) { - return _ms.searchForStoragePools(c); + return _ms.searchForStoragePools(c).first(); } // /////////////////////////////////////////////////////////// diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 13a2bb1cbd1..cf5b6e356bc 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -5250,7 +5250,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag } @Override - public List searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { + public Pair, Integer> searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { Filter searchFilter = new Filter(PhysicalNetworkVO.class, "id", Boolean.TRUE, startIndex, pageSize); SearchCriteria sc = _physicalNetworkDao.createSearchCriteria(); @@ -5266,7 +5266,8 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + name + "%"); } - return _physicalNetworkDao.search(sc, searchFilter); + Pair, Integer> result = _physicalNetworkDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -5716,7 +5717,8 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag } @Override - public List listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize) { + public Pair, Integer> listNetworkServiceProviders(Long physicalNetworkId, + String name, String state, Long startIndex, Long pageSize) { Filter searchFilter = new Filter(PhysicalNetworkServiceProviderVO.class, "id", false, startIndex, pageSize); SearchBuilder sb = _pNSPDao.createSearchBuilder(); @@ -5734,7 +5736,8 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag sc.addAnd("state", Op.EQ, state); } - return _pNSPDao.search(sc, searchFilter); + Pair, Integer> result = _pNSPDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -6328,7 +6331,7 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag } @Override - public List listTrafficTypes(Long physicalNetworkId) { + public Pair, Integer> listTrafficTypes(Long physicalNetworkId) { PhysicalNetworkVO network = _physicalNetworkDao.findById(physicalNetworkId); if (network == null) { InvalidParameterValueException ex = new InvalidParameterValueException("Physical Network with specified id doesn't exist in the system"); @@ -6336,7 +6339,8 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag throw ex; } - return _pNTrafficTypeDao.listBy(physicalNetworkId); + Pair, Integer> result = _pNTrafficTypeDao.listAndCountBy(physicalNetworkId); + return new Pair, Integer>(result.first(), result.second()); } @Override diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDao.java b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDao.java index 2efd904b7e0..42e5b4e0a35 100644 --- a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDao.java +++ b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDao.java @@ -16,14 +16,16 @@ // under the License. package com.cloud.network.dao; + import java.util.List; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.Networks.TrafficType; +import com.cloud.utils.Pair; import com.cloud.utils.db.GenericDao; public interface PhysicalNetworkTrafficTypeDao extends GenericDao { - List listBy(long physicalNetworkId); + Pair, Integer> listAndCountBy(long physicalNetworkId); boolean isTrafficTypeSupported(long physicalNetworkId, TrafficType trafficType); String getNetworkTag (long physicalNetworkId, TrafficType trafficType, HypervisorType hType); PhysicalNetworkTrafficTypeVO findBy(long physicalNetworkId, TrafficType trafficType); diff --git a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDaoImpl.java b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDaoImpl.java index c89477db3a5..5a44cd54704 100755 --- a/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDaoImpl.java +++ b/server/src/com/cloud/network/dao/PhysicalNetworkTrafficTypeDaoImpl.java @@ -22,6 +22,7 @@ import javax.ejb.Local; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.Networks.TrafficType; +import com.cloud.utils.Pair; import com.cloud.utils.db.DB; import com.cloud.utils.db.GenericDaoBase; import com.cloud.utils.db.GenericSearchBuilder; @@ -77,10 +78,10 @@ public class PhysicalNetworkTrafficTypeDaoImpl extends GenericDaoBase listBy(long physicalNetworkId) { + public Pair, Integer> listAndCountBy(long physicalNetworkId) { SearchCriteria sc = physicalNetworkSearch.create(); sc.setParameters("physicalNetworkId", physicalNetworkId); - return search(sc, null); + return searchAndCount(sc, null); } @Override diff --git a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java index ae0f4ec7fa1..da993d0b754 100644 --- a/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java +++ b/server/src/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java @@ -67,6 +67,7 @@ import com.cloud.user.UserContext; import com.cloud.user.dao.AccountDao; import com.cloud.user.dao.UserStatisticsDao; import com.cloud.utils.NumbersUtil; +import com.cloud.utils.Pair; import com.cloud.utils.Ternary; import com.cloud.utils.component.ComponentLocator; import com.cloud.utils.component.Inject; @@ -568,7 +569,7 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager { } @Override - public List searchForCustomerGateways(ListVpnCustomerGatewaysCmd cmd) { + public Pair, Integer> searchForCustomerGateways(ListVpnCustomerGatewaysCmd cmd) { Long id = cmd.getId(); Long domainId = cmd.getDomainId(); boolean isRecursive = cmd.isRecursive(); @@ -600,13 +601,12 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager { sc.addAnd("id", SearchCriteria.Op.EQ, id); } - List results = new ArrayList(); - results.addAll(_customerGatewayDao.search(sc, searchFilter)); - return results; + Pair, Integer> result = _customerGatewayDao.searchAndCount(sc, searchFilter); + return new Pair, Integer> (result.first(), result.second()); } @Override - public List searchForVpnGateways(ListVpnGatewaysCmd cmd) { + public Pair, Integer> searchForVpnGateways(ListVpnGatewaysCmd cmd) { Long id = cmd.getId(); Long vpcId = cmd.getVpcId(); @@ -645,13 +645,12 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager { sc.addAnd("vpcId", SearchCriteria.Op.EQ, vpcId); } - List results = new ArrayList(); - results.addAll(_vpnGatewayDao.search(sc, searchFilter)); - return results; + Pair, Integer> result = _vpnGatewayDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override - public List searchForVpnConnections(ListVpnConnectionsCmd cmd) { + public Pair, Integer> searchForVpnConnections(ListVpnConnectionsCmd cmd) { Long id = cmd.getId(); Long vpcId = cmd.getVpcId(); @@ -695,9 +694,8 @@ public class Site2SiteVpnManagerImpl implements Site2SiteVpnManager, Manager { sc.setJoinParameters("gwSearch", "vpcId", vpcId); } - List results = new ArrayList(); - results.addAll(_vpnConnectionDao.search(sc, searchFilter)); - return results; + Pair, Integer> result = _vpnConnectionDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override diff --git a/server/src/com/cloud/projects/ProjectManagerImpl.java b/server/src/com/cloud/projects/ProjectManagerImpl.java index 77b778eb244..8cbd31370ac 100755 --- a/server/src/com/cloud/projects/ProjectManagerImpl.java +++ b/server/src/com/cloud/projects/ProjectManagerImpl.java @@ -72,6 +72,7 @@ import com.cloud.user.UserContext; import com.cloud.user.dao.AccountDao; import com.cloud.utils.DateUtil; import com.cloud.utils.NumbersUtil; +import com.cloud.utils.Pair; import com.cloud.utils.Ternary; import com.cloud.utils.component.Inject; import com.cloud.utils.component.Manager; @@ -352,7 +353,7 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ } @Override - public List listProjects(Long id, String name, String displayText, String state, + public Pair, Integer> listProjects(Long id, String name, String displayText, String state, String accountName, Long domainId, String keyword, Long startIndex, Long pageSize, boolean listAll, boolean isRecursive, Map tags) { Account caller = UserContext.current().getCaller(); @@ -468,8 +469,9 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ count++; } } - - return _projectDao.search(sc, searchFilter); + + Pair, Integer> result = _projectDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -740,7 +742,7 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ @Override - public List listProjectAccounts(long projectId, String accountName, String role, Long startIndex, Long pageSizeVal) { + public Pair, Integer> listProjectAccounts(long projectId, String accountName, String role, Long startIndex, Long pageSizeVal) { Account caller = UserContext.current().getCaller(); //check that the project exists @@ -778,8 +780,9 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ if (accountName != null) { sc.setJoinParameters("accountSearch", "accountName", accountName); } - - return _projectAccountDao.search(sc, searchFilter); + + Pair, Integer> result = _projectAccountDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } public ProjectInvitation createAccountInvitation(Project project, Long accountId) { @@ -851,8 +854,9 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ } @Override - public List listProjectInvitations(Long id, Long projectId, String accountName, Long domainId, String state, boolean activeOnly, Long startIndex, Long pageSizeVal, boolean isRecursive, boolean listAll) { - Account caller = UserContext.current().getCaller(); + public Pair, Integer> listProjectInvitations(Long id, Long projectId, + String accountName, Long domainId, String state, boolean activeOnly, Long startIndex, Long pageSizeVal, boolean isRecursive, boolean listAll) { + Account caller = UserContext.current().getCaller(); List permittedAccounts = new ArrayList(); Ternary domainIdRecursiveListProject = new Ternary(domainId, isRecursive, null); @@ -890,8 +894,9 @@ public class ProjectManagerImpl implements ProjectManager, Manager{ sc.setParameters("state", ProjectInvitation.State.Pending); sc.setParameters("created", new Date((DateUtil.currentGMTTime().getTime()) - _invitationTimeOut)); } - - return _projectInvitationDao.search(sc, searchFilter); + + Pair, Integer> result = _projectInvitationDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @DB diff --git a/server/src/com/cloud/server/ManagementServer.java b/server/src/com/cloud/server/ManagementServer.java index 941d30cd6f0..473b0ee9b3a 100755 --- a/server/src/com/cloud/server/ManagementServer.java +++ b/server/src/com/cloud/server/ManagementServer.java @@ -92,7 +92,7 @@ public interface ManagementServer extends ManagementService { public long getMemoryOrCpuCapacityByHost(Long hostId, short capacityType); - List searchForStoragePools(Criteria c); + Pair, Integer> searchForStoragePools(Criteria c); String getHashKey(); } diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index a698c93e208..a916eb69696 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -111,6 +111,7 @@ import com.cloud.capacity.dao.CapacityDao; import com.cloud.capacity.dao.CapacityDaoImpl.SummedCapacity; import com.cloud.configuration.Config; import com.cloud.configuration.ConfigurationManager; +import com.cloud.configuration.Configuration; import com.cloud.configuration.ConfigurationVO; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.consoleproxy.ConsoleProxyManagementState; @@ -119,7 +120,9 @@ import com.cloud.dc.AccountVlanMapVO; import com.cloud.dc.ClusterVO; import com.cloud.dc.DataCenterVO; import com.cloud.dc.HostPodVO; +import com.cloud.dc.Pod; import com.cloud.dc.PodVlanMapVO; +import com.cloud.dc.Vlan; import com.cloud.dc.Vlan.VlanType; import com.cloud.dc.VlanVO; import com.cloud.dc.dao.AccountVlanMapDao; @@ -177,11 +180,14 @@ import com.cloud.server.ResourceTag.TaggedResourceType; import com.cloud.service.ServiceOfferingVO; import com.cloud.service.dao.ServiceOfferingDao; import com.cloud.storage.DiskOfferingVO; +import com.cloud.storage.GuestOS; import com.cloud.storage.GuestOSCategoryVO; import com.cloud.storage.GuestOSVO; +import com.cloud.storage.GuestOsCategory; import com.cloud.storage.Storage; import com.cloud.storage.Storage.ImageFormat; import com.cloud.storage.StorageManager; +import com.cloud.storage.StoragePool; import com.cloud.storage.StoragePoolVO; import com.cloud.storage.Upload; import com.cloud.storage.Upload.Mode; @@ -237,6 +243,7 @@ import com.cloud.utils.net.NetUtils; import com.cloud.utils.ssh.SSHKeysHelper; import com.cloud.vm.ConsoleProxyVO; import com.cloud.vm.DomainRouterVO; +import com.cloud.vm.InstanceGroup; import com.cloud.vm.InstanceGroupVO; import com.cloud.vm.NicVO; import com.cloud.vm.SecondaryStorageVmVO; @@ -822,7 +829,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List searchForClusters(ListClustersCmd cmd) { + public Pair, Integer> searchForClusters(ListClustersCmd cmd) { Filter searchFilter = new Filter(ClusterVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal()); SearchCriteria sc = _clusterDao.createSearchCriteria(); @@ -872,7 +879,8 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("name", SearchCriteria.Op.SC, ssc); } - return _clusterDao.search(sc, searchFilter); + Pair, Integer> result = _clusterDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -1065,7 +1073,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List searchForPods(ListPodsByCmd cmd) { + public Pair, Integer> searchForPods(ListPodsByCmd cmd) { Filter searchFilter = new Filter(HostPodVO.class, "dataCenterId", true, cmd.getStartIndex(), cmd.getPageSizeVal()); SearchCriteria sc = _hostPodDao.createSearchCriteria(); @@ -1101,11 +1109,12 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("allocationState", SearchCriteria.Op.EQ, allocationState); } - return _hostPodDao.search(sc, searchFilter); + Pair, Integer> result = _hostPodDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override - public List searchForVlans(ListVlanIpRangesCmd cmd) { + public Pair, Integer> searchForVlans(ListVlanIpRangesCmd cmd) { // If an account name and domain ID are specified, look up the account String accountName = cmd.getAccountName(); Long domainId = cmd.getDomainId(); @@ -1219,11 +1228,12 @@ public class ManagementServerImpl implements ManagementServer { } } - return _vlanDao.search(sc, searchFilter); + Pair, Integer> result = _vlanDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override - public List searchForConfigurations(ListCfgsByCmd cmd) { + public Pair, Integer> searchForConfigurations(ListCfgsByCmd cmd) { Filter searchFilter = new Filter(ConfigurationVO.class, "name", true, cmd.getStartIndex(), cmd.getPageSizeVal()); SearchCriteria sc = _configDao.createSearchCriteria(); @@ -1254,7 +1264,8 @@ public class ManagementServerImpl implements ManagementServer { // hidden configurations are not displayed using the search API sc.addAnd("category", SearchCriteria.Op.NEQ, "Hidden"); - return _configDao.search(sc, searchFilter); + Pair, Integer> result = _configDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -1867,7 +1878,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List listGuestOSByCriteria(ListGuestOsCmd cmd) { + public Pair, Integer> listGuestOSByCriteria(ListGuestOsCmd cmd) { Filter searchFilter = new Filter(GuestOSVO.class, "displayName", true, cmd.getStartIndex(), cmd.getPageSizeVal()); Long id = cmd.getId(); Long osCategoryId = cmd.getOsCategoryId(); @@ -1892,11 +1903,12 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("displayName", SearchCriteria.Op.LIKE, "%" + keyword + "%"); } - return _guestOSDao.search(sc, searchFilter); + Pair, Integer> result = _guestOSDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override - public List listGuestOSCategoriesByCriteria(ListGuestOsCategoriesCmd cmd) { + public Pair, Integer> listGuestOSCategoriesByCriteria(ListGuestOsCategoriesCmd cmd) { Filter searchFilter = new Filter(GuestOSCategoryVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal()); Long id = cmd.getId(); String name = cmd.getName(); @@ -1916,7 +1928,8 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + keyword + "%"); } - return _guestOSCategoryDao.search(sc, searchFilter); + Pair, Integer> result = _guestOSCategoryDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -2476,7 +2489,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List searchForStoragePools(ListStoragePoolsCmd cmd) { + public Pair, Integer> searchForStoragePools(ListStoragePoolsCmd cmd) { Long zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), cmd.getZoneId()); Criteria c = new Criteria("id", Boolean.TRUE, cmd.getStartIndex(), cmd.getPageSizeVal()); @@ -2489,11 +2502,12 @@ public class ManagementServerImpl implements ManagementServer { c.addCriteria(Criteria.PODID, cmd.getPodId()); c.addCriteria(Criteria.DATACENTERID, zoneId); - return searchForStoragePools(c); + Pair, Integer> result = searchForStoragePools(c); + return new Pair, Integer>(result.first(), result.second()); } @Override - public List searchForStoragePools(Criteria c) { + public Pair, Integer> searchForStoragePools(Criteria c) { Filter searchFilter = new Filter(StoragePoolVO.class, c.getOrderBy(), c.getAscending(), c.getOffset(), c.getLimit()); SearchCriteria sc = _poolDao.createSearchCriteria(); @@ -2541,7 +2555,7 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("clusterId", SearchCriteria.Op.EQ, cluster); } - return _poolDao.search(sc, searchFilter); + return _poolDao.searchAndCount(sc, searchFilter); } @Override @@ -2651,7 +2665,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List searchForSystemVm(ListSystemVMsCmd cmd) { + public Pair, Integer> searchForSystemVm(ListSystemVMsCmd cmd) { String type = cmd.getSystemVmType(); Long zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), cmd.getZoneId()); Long id = cmd.getId(); @@ -2720,7 +2734,8 @@ public class ManagementServerImpl implements ManagementServer { sc.setJoinParameters("volumeSearch", "poolId", storageId); } - return _vmInstanceDao.search(sc, searchFilter); + Pair, Integer> result = _vmInstanceDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -3111,7 +3126,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List searchForVmGroups(ListVMGroupsCmd cmd) { + public Pair, Integer> searchForVmGroups(ListVMGroupsCmd cmd) { Long id = cmd.getId(); String name = cmd.getGroupName(); String keyword = cmd.getKeyword(); @@ -3178,7 +3193,8 @@ public class ManagementServerImpl implements ManagementServer { sc.setParameters("name", "%" + name + "%"); } - return _vmGroupDao.search(sc, searchFilter); + Pair, Integer> result = _vmGroupDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -3322,7 +3338,7 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List listSSHKeyPairs(ListSSHKeyPairsCmd cmd) { + public Pair, Integer> listSSHKeyPairs(ListSSHKeyPairsCmd cmd) { String name = cmd.getName(); String fingerPrint = cmd.getFingerprint(); @@ -3349,7 +3365,8 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("fingerprint", SearchCriteria.Op.EQ, fingerPrint); } - return _sshKeyPairDao.search(sc, searchFilter); + Pair, Integer> result = _sshKeyPairDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override @@ -3486,7 +3503,8 @@ public class ManagementServerImpl implements ManagementServer { } @Override - public List listHypervisorCapabilities(Long id, HypervisorType hypervisorType, String keyword, Long startIndex, Long pageSizeVal) { + public Pair, Integer> listHypervisorCapabilities(Long id, + HypervisorType hypervisorType, String keyword, Long startIndex, Long pageSizeVal) { Filter searchFilter = new Filter(HypervisorCapabilitiesVO.class, "id", true, startIndex, pageSizeVal); SearchCriteria sc = _hypervisorCapabilitiesDao.createSearchCriteria(); @@ -3504,8 +3522,8 @@ public class ManagementServerImpl implements ManagementServer { sc.addAnd("hypervisorType", SearchCriteria.Op.SC, ssc); } - return _hypervisorCapabilitiesDao.search(sc, searchFilter); - + Pair, Integer> result = _hypervisorCapabilitiesDao.searchAndCount(sc, searchFilter); + return new Pair, Integer>(result.first(), result.second()); } @Override diff --git a/server/test/com/cloud/network/MockNetworkManagerImpl.java b/server/test/com/cloud/network/MockNetworkManagerImpl.java index c2ae1bfd29c..8c7b67f7bf0 100755 --- a/server/test/com/cloud/network/MockNetworkManagerImpl.java +++ b/server/test/com/cloud/network/MockNetworkManagerImpl.java @@ -441,7 +441,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager, NetworkS } @Override - public List searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { + public Pair, Integer> searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { // TODO Auto-generated method stub return null; } @@ -477,7 +477,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager, NetworkS } @Override - public List listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize) { + public Pair, Integer> listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize) { // TODO Auto-generated method stub return null; } @@ -537,7 +537,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager, NetworkS } @Override - public List listTrafficTypes(Long physicalNetworkId) { + public Pair, Integer> listTrafficTypes(Long physicalNetworkId) { // TODO Auto-generated method stub return null; } diff --git a/server/test/com/cloud/projects/MockProjectManagerImpl.java b/server/test/com/cloud/projects/MockProjectManagerImpl.java index 0fbcf9c1a1d..d8bce2fcf81 100644 --- a/server/test/com/cloud/projects/MockProjectManagerImpl.java +++ b/server/test/com/cloud/projects/MockProjectManagerImpl.java @@ -28,6 +28,8 @@ import com.cloud.exception.ResourceUnavailableException; import com.cloud.projects.ProjectAccount.Role; import com.cloud.user.Account; import com.cloud.utils.component.Manager; +import com.cloud.utils.Pair; + @Local(value = { ProjectManager.class }) public class MockProjectManagerImpl implements ProjectManager, Manager { @@ -104,14 +106,14 @@ public class MockProjectManagerImpl implements ProjectManager, Manager { } @Override - public List listProjectAccounts(long projectId, + public Pair, Integer> listProjectAccounts(long projectId, String accountName, String role, Long startIndex, Long pageSizeVal) { // TODO Auto-generated method stub return null; } @Override - public List listProjectInvitations(Long id, + public Pair, Integer> listProjectInvitations(Long id, Long projectId, String accountName, Long domainId, String state, boolean activeOnly, Long startIndex, Long pageSizeVal, boolean isRecursive, boolean listAll) { @@ -223,7 +225,7 @@ public class MockProjectManagerImpl implements ProjectManager, Manager { * @see com.cloud.projects.ProjectService#listProjects(java.lang.Long, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.Long, java.lang.String, java.lang.Long, java.lang.Long, boolean, boolean, java.util.Map) */ @Override - public List listProjects(Long id, String name, String displayText, String state, String accountName, Long domainId, String keyword, Long startIndex, Long pageSize, boolean listAll, + public Pair, Integer> listProjects(Long id, String name, String displayText, String state, String accountName, Long domainId, String keyword, Long startIndex, Long pageSize, boolean listAll, boolean isRecursive, Map tags) { // TODO Auto-generated method stub return null; diff --git a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java index dfd4f7e839f..e1b6ad429a9 100644 --- a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java +++ b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java @@ -268,7 +268,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager{ * @see com.cloud.network.NetworkService#searchPhysicalNetworks(java.lang.Long, java.lang.Long, java.lang.String, java.lang.Long, java.lang.Long, java.lang.String) */ @Override - public List searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { + public Pair, Integer> searchPhysicalNetworks(Long id, Long zoneId, String keyword, Long startIndex, Long pageSize, String name) { // TODO Auto-generated method stub return null; } @@ -322,7 +322,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager{ * @see com.cloud.network.NetworkService#listNetworkServiceProviders(java.lang.Long, java.lang.String, java.lang.String, java.lang.Long, java.lang.Long) */ @Override - public List listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize) { + public Pair, Integer> listNetworkServiceProviders(Long physicalNetworkId, String name, String state, Long startIndex, Long pageSize) { // TODO Auto-generated method stub return null; } @@ -430,7 +430,7 @@ public class MockNetworkManagerImpl implements NetworkManager, Manager{ * @see com.cloud.network.NetworkService#listTrafficTypes(java.lang.Long) */ @Override - public List listTrafficTypes(Long physicalNetworkId) { + public Pair, Integer> listTrafficTypes(Long physicalNetworkId) { // TODO Auto-generated method stub return null; } diff --git a/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java b/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java index 4cd742ca4a3..64db5bbfb79 100644 --- a/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java +++ b/server/test/com/cloud/vpc/MockSite2SiteVpnManagerImpl.java @@ -41,6 +41,7 @@ import com.cloud.network.Site2SiteVpnConnectionVO; import com.cloud.network.Site2SiteVpnGateway; import com.cloud.network.vpn.Site2SiteVpnManager; import com.cloud.network.vpn.Site2SiteVpnService; +import com.cloud.utils.Pair; import com.cloud.utils.component.Manager; import com.cloud.vm.DomainRouterVO; @@ -132,7 +133,7 @@ public class MockSite2SiteVpnManagerImpl implements Site2SiteVpnManager, Site2Si * @see com.cloud.network.vpn.Site2SiteVpnService#searchForCustomerGateways(com.cloud.api.commands.ListVpnCustomerGatewaysCmd) */ @Override - public List searchForCustomerGateways(ListVpnCustomerGatewaysCmd listVpnCustomerGatewaysCmd) { + public Pair, Integer> searchForCustomerGateways(ListVpnCustomerGatewaysCmd listVpnCustomerGatewaysCmd) { // TODO Auto-generated method stub return null; } @@ -141,7 +142,7 @@ public class MockSite2SiteVpnManagerImpl implements Site2SiteVpnManager, Site2Si * @see com.cloud.network.vpn.Site2SiteVpnService#searchForVpnGateways(com.cloud.api.commands.ListVpnGatewaysCmd) */ @Override - public List searchForVpnGateways(ListVpnGatewaysCmd listVpnGatewaysCmd) { + public Pair, Integer> searchForVpnGateways(ListVpnGatewaysCmd listVpnGatewaysCmd) { // TODO Auto-generated method stub return null; } @@ -150,7 +151,7 @@ public class MockSite2SiteVpnManagerImpl implements Site2SiteVpnManager, Site2Si * @see com.cloud.network.vpn.Site2SiteVpnService#searchForVpnConnections(com.cloud.api.commands.ListVpnConnectionsCmd) */ @Override - public List searchForVpnConnections(ListVpnConnectionsCmd listVpnConnectionsCmd) { + public Pair, Integer> searchForVpnConnections(ListVpnConnectionsCmd listVpnConnectionsCmd) { // TODO Auto-generated method stub return null; }