001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.persistence.ocfl.api; 007 008 009/** 010 * An interface representing index rebuilding capabilities. Any index state that can be derived from the underlying OCFL 011 * repository must be regenerated by the implementing class. 012 * 013 * repository 014 * @author dbernstein 015 * @since 6.0.0 016 */ 017public interface IndexBuilder { 018 019 /** 020 * Rebuilds the index only when the existing index is not populated. 021 */ 022 void rebuildIfNecessary(); 023 024} 025