@Override public void visit( int version, int access, String name, String sig, String superName, String[] interfaces) { className = name; superclassName = superName; final String ENHANCED = "com/sleepycat/persist/impl/Enhanced"; if (containsString(interfaces, ENHANCED)) { throw abort(); } interfaces = appendString(interfaces, ENHANCED); isAbstract = ((access & ACC_ABSTRACT) != 0); hasPersistentSuperclass = (superName != null && !superName.equals("java/lang/Object")); super.visit(version, access, name, sig, superName, interfaces); }
@Override public void visitEnd() { if (!isPersistent || !hasDefaultConstructor) { throw abort(); } /* Generate new code at the end of the class. */ sortFields(); genBdbNewInstance(); genBdbNewArray(); genBdbIsPriKeyFieldNullOrZero(); genBdbWritePriKeyField(); genBdbReadPriKeyField(); genBdbWriteSecKeyFields(); genBdbReadSecKeyFields(); genBdbWriteNonKeyFields(); genBdbReadNonKeyFields(); genBdbGetField(); genBdbSetField(); genStaticBlock(); super.visitEnd(); }
@Override public void visitSource(String source, String debug) { super.visitSource(source, debug); }