docs: private QueryByCriteria getFKQueryMtoN(Object obj, ClassDescriptor cld, CollectionDescriptor cod)
      {
          ValueContainer[] values = pb.serviceBrokerHelper().getKeyValues(cld, obj);
          Object[] thisClassFks = cod.getFksToThisClass();
          Object[] itemClassFks = cod.getFksToItemClass();
          ClassDescriptor refCld = pb.getClassDescriptor(cod.getItemClass());
          Criteria criteria = new Criteria();
  
          for (int i = 0; i < thisClassFks.length; i++)
          {
              criteria.addEqualTo(cod.getIndirectionTable() + "." + thisClassFks[i], values[i].getValue());
          }
          for (int i = 0; i < itemClassFks.length; i++)
          {
              criteria.addEqualToField(cod.getIndirectionTable() + "." + itemClassFks[i],
                      refCld.getPkFields()[i].getAttributeName());
          }
  
          return QueryFactory.newQuery(refCld.getClassOfObject(), cod.getIndirectionTable(), criteria);
      }