@Override public Discoverer getMatchingDiscover(final Hypervisor.HypervisorType hypervisorType) { for (final Discoverer discoverer : _discoverers) { if (discoverer.getHypervisorType() == hypervisorType) { return discoverer; } } return null; }
for (final Discoverer discoverer : _discoverers) { if (params != null) { discoverer.putParam(params); if (!discoverer.matchHypervisor(hypervisorType)) { continue; resources = discoverer.find(dcId, podId, clusterId, uri, username, password, hostTags); } catch (final DiscoveryException e) { throw e; } catch (final Exception e) { s_logger.info("Exception in host discovery process with discoverer: " + discoverer.getName() + ", skip to another discoverer if there is any"); hosts.add(host); discoverer.postDiscovery(hosts, _nodeId); s_logger.info("server resources successfully discovered by " + discoverer.getName()); return hosts;
resource = loadResourcesWithoutHypervisor(host); } else { resource = discoverer.reloadResource(host);
discoverer.putParam(allParams); resources = discoverer.find(dcId, podId, cluster.getId(), uri, username, password, null); hosts.add(host); discoverer.postDiscovery(hosts, _nodeId); s_logger.info("External cluster has been successfully discovered by " + discoverer.getName()); success = true; return result;