docs: public void setCollectionProxyClass(Class collectionProxyClass)
      {
          _collectionProxyConstructor = retrieveCollectionProxyConstructor(collectionProxyClass, Collection.class, "CollectionProxyClass");
          // we also require the class to be a subclass of ManageableCollection
          if(!ManageableCollection.class.isAssignableFrom(collectionProxyClass))
          {
              throw new MetadataException("Illegal class "
                      + collectionProxyClass.getName()
                      + " specified for CollectionProxyClass. Must be a concrete subclass of "
                      + ManageableCollection.class.getName());
          }
      }