Configurable (Configurable key) { long time = System.currentTimeMillis(); try { ConfigurableWrapper.cast(Configurable.class, key); // create wrapped configurable on a pooled thread } catch (Exception unexpected) { LOG.error("cannot prepare configurable", unexpected); } finally { warn(key, "prepare", time); } return key; }