/** * {@inheritDoc} */ @Override public MetaBean findForClass(final Class<?> clazz) { if (clazz == null) { return null; } MetaBean beanInfo = cache.findForClass(clazz); if (beanInfo != null) { return beanInfo; } try { beanInfo = builder.buildForClass(clazz); cache.cache(beanInfo); computeRelationships(beanInfo); return beanInfo; } catch (final RuntimeException e) { throw e; // do not wrap runtime exceptions } catch (final Exception e) { throw new IllegalArgumentException("error creating beanInfo for " + clazz, e); } }