package net.sourceforge.pain.db; /** * User: fmike Date: 18.03.2003 Time: 17:09:34 */ final class DbClassImage extends DbObject { static final DbClassSchema schema = new DbClassSchema(new byte[]{DbType.STRING, DbType.ARRAY_OF_BYTE, DbType.ARRAY_OF_STRING}, new String[]{"className", "types", "names"}); private DbRuntimeClass runtimeClass; DbClassImage() { } DbClassImage(final PainDB db) throws RuntimeException { super(db); } public DbClassSchema provideSchema() { return schema; } void setClassName(final String className) { setString(0, className); } void setFieldTypes(final byte[] types) { setByteArray(1, types); } void setFieldNames(final String[] fieldNames) { setStringArray(2, fieldNames); } String getClassName() { return getString(0); } byte[] getFieldTypes() { return getByteArray(1); } String[] getFieldNames() { return getStringArray(2); } int getNumberOfFields() { return getFieldTypes().length; } DbClassImpl getDbRuntimeClass() { return runtimeClass; } void setDbRuntimeClass(final DbRuntimeClass clazz) { runtimeClass = clazz; } }