affirm(!classFile.isInterface());
//affirm(!classFile.isInnerClass());
//^olsen: assert consistency between Java and JDO metadata
// disallow enhancing classes not derived from java.lang.Object
final ConstClass superConstClass = classFile.superName();
affirm(superConstClass != null);
// non-pc-root classes must not derive from java.lang.Object
affirm(pcSuperClassName == null
|| !superConstClass.asString().equals("java/lang/Object"));
// define the PC key owner class
pcKeyOwnerClassName = className;
while (meta.getKeyClass(pcKeyOwnerClassName) == null) {
final String pcSuperClassName