001package org.kuali.common.util.runonce;
002
003/**
004 * @deprecated Use org.kuali.common.util.runonce.smart.RunOnce instead
005 */
006@Deprecated
007public interface RunOnceStateManager {
008
009        /**
010         * Do whatever needs to be done in order for <code>isRunOnce()</code> to return the right value.
011         */
012        void initialize();
013
014        /**
015         * Return true if it is safe to run something once, false otherwise.
016         */
017        boolean isRunOnce();
018
019        /**
020         * Update state in a way that persists across JVM restarts (eg database table, properties file, etc)
021         */
022        void persistState(RunOnceState state);
023
024}