예제 #1
0
 public <T> T unwrap(Class<T> clazz) {
   if (clazz.isInstance(this)) {
     return clazz.cast(this);
   }
   if (clazz.isInstance(OptiqSchema.this)) {
     return clazz.cast(OptiqSchema.this);
   }
   if (clazz.isInstance(OptiqSchema.this.schema)) {
     return clazz.cast(OptiqSchema.this.schema);
   }
   throw new ClassCastException("not a " + clazz);
 }