DMDServiceProvider[] result = new DMDServiceProvider[providers.size()];  return (DMDServiceProvider[]) providers.toArray(result);
return (DMDServiceProvider[]) result_list.toArray(result);
  public DMDServiceProvider[] findServices(DMDServiceQuery query)      throws IllegalArgumentException  {    if (query == null)    {      throw new IllegalArgumentException();    }    Vector providers = new Vector(providers_.size());    DMDServiceProvider provider = null;    Iterator iter = providers_.values().iterator();    while (iter.hasNext())    {      provider = (DMDServiceProvider) iter.next();      if (provider != null)      {        if (provider.canProvide(query))        {          providers.add(provider);        }      }    }    DMDServiceProvider[] result = new DMDServiceProvider[providers.size()];    return (DMDServiceProvider[]) providers.toArray(result);  }