While throwing works for detecting the bin can't complete it's requested packing, is it possible to ask BinPacker if the size will fit first, and avoid the exception?  I tend to try to leave exceptions for things out of my control, but this is information that should already be available based on BinPacker's already-packed space.