/// <summary>
 /// Get a list of clients that match the search criteria
 /// </summary>
 /// <param name="oHostSecurityToken">HostSecurityToken obtained when security provider of IWS is called</param>
 /// <param name="collectionRequest">Information about the collection being requested</param>
 /// <param name="criteria">Client search criteria</param>
 /// <returns></returns>
 public ClientSearchReturnValue ClientSearch(HostSecurityToken oHostSecurityToken, CollectionRequest collectionRequest,
     ClientSearchCriteria criteria)
 {
     ClientSearchReturnValue returnValue = null;
     if (Functions.ValidateIWSToken(oHostSecurityToken))
     {
         oClientService = new ClientService();
         returnValue = oClientService.ClientSearch(Functions.GetLogonIdFromToken(oHostSecurityToken), collectionRequest, criteria);
     }
     else
     {
         returnValue = new ClientSearchReturnValue();
         returnValue.Success = false;
         returnValue.Message = "Invalid Token";
     }
     return returnValue;
 }