@Override
public Pair<List<? extends Host>, Integer> searchForServers(final ListHostsCmd cmd) {
final Long zoneId = _accountMgr.checkAccessAndSpecifyAuthority(CallContext.current().getCallingAccount(), cmd.getZoneId());
final Object name = cmd.getHostName();
final Object type = cmd.getType();
final Object state = cmd.getState();
final Object pod = cmd.getPodId();
final Object cluster = cmd.getClusterId();
final Object id = cmd.getId();
final Object keyword = cmd.getKeyword();
final Object resourceState = cmd.getResourceState();
final Object haHosts = cmd.getHaHost();
final Pair<List<HostVO>, Integer> result = searchForServers(cmd.getStartIndex(), cmd.getPageSizeVal(), name, type, state, zoneId, pod, cluster, id, keyword, resourceState, haHosts, null,
null);
return new Pair<List<? extends Host>, Integer>(result.first(), result.second());
}