+ default <A> A adapt(Class<A> clss) throws IllegalArgumentException {
+ throw new IllegalArgumentException("Cannot adapt content " + this + " to " + clss.getName());
+ }
+
+ default <C extends AutoCloseable> C open(Class<C> clss) throws Exception, IllegalArgumentException {
+ throw new IllegalArgumentException("Cannot open content " + this + " as " + clss.getName());