/** * Initializes the forward and reverse tables used by this Index. * * @param schemaManager The server schemaManager * @throws IOException if we cannot initialize the forward and reverse * tables * @throws NamingException */ private void initTables( SchemaManager schemaManager ) throws IOException { MatchingRule mr = attributeType.getEquality(); if ( mr == null ) { throw new IOException( I18n.err( I18n.ERR_574, attributeType.getName() ) ); } DnSerializerComparator comp = new DnSerializerComparator( mr.getOid() ); UuidComparator.INSTANCE.setSchemaManager( schemaManager ); DnSerializer dnSerializer = new DnSerializer( schemaManager ); forward = new JdbmTable<Dn, String>( schemaManager, attributeType.getOid() + FORWARD_BTREE, recMan, comp, dnSerializer, UuidSerializer.INSTANCE ); reverse = new JdbmTable<String, Dn>( schemaManager, attributeType.getOid() + REVERSE_BTREE, recMan, UuidComparator.INSTANCE, UuidSerializer.INSTANCE, dnSerializer ); } }