// -*- C++ -*-
//
// PG_Location_Hash.inl,v 1.1 2002/06/04 00:11:39 ossama Exp

ACE_INLINE CORBA::ULong
TAO_PG_Location_Hash::operator() (
  const PortableGroup::Location &location) const
{
  // @todo Interim implementation until we figure out what to do when a
  //       location has multiple components.

  CORBA::ULong len = location.length ();
  CORBA::ULong hash = 0;

  for (CORBA::ULong i = 0; i < len; ++i)
    hash +=
      ACE::hash_pjw (location[i].id.in ()) +
      ACE::hash_pjw (location[i].kind.in ());

  return hash;
}
