protected static Set findEffectiveMemberships( Owner o, String mid, Field f, Owner via, int depth
public static Set findEffectiveMemberships( GrouperSession s, Group g, Subject subj, Field f, Group via, int depth
  protected static Set findEffectiveMemberships(    Owner o, String mid, Field f, Owner via, int depth  )    throws MembershipNotFoundException  {    /*     * @caller    private Membership._membershipsToDelete(s, imm)     * @caller    public  MembershipFinder.findEffectiveMemberships(s, g, subj, f, via, depth)      * @filtered  false     * @session   false     */    LOG.debug(MSG_FEMSHIP_PRO);    Set mships = new LinkedHashSet();    try {      Session hs  = HibernateHelper.getSession();      Query   qry = hs.createQuery(        "from Membership as ms where      "        + "     ms.owner_id     = :owner  "        + "and  ms.member_id    = :mid    "        + "and  ms.field.name   = :fname  "        + "and  ms.field.type   = :ftype  "        + "and  ms.via_id       = :via    "        + "and  ms.depth        = :depth"      );      qry.setCacheable(GrouperConfig.QRY_MSF_FEM);      qry.setCacheRegion(GrouperConfig.QCR_MSF_FEM);      qry.setParameter( "owner"   , o                     );      qry.setString(    "mid"     , mid                   ); // FIXME      qry.setString(    "fname"   , f.getName()           );      qry.setString(    "ftype"   , f.getType().toString());      qry.setParameter( "via"     , via                   );      qry.setInteger(   "depth"   , depth                 );      mships.addAll(qry.list());      hs.close();    }    catch (HibernateException eH) {      throw new MembershipNotFoundException(eH.getMessage(), eH);    }    return mships;  } // protected static Set findEffectiveMembership(o, mid, field, via, depth)