/* This code is part of Freenet. It is distributed under the GNU General * Public License, version 2 (or at your option any later version). See * http://www.gnu.org/ for further details of the GPL. */ package freenet.client.async; import freenet.keys.USK; /** * USK callback interface. Used for subscriptions to the USKManager, * and extended for USKFetcher callers. */ public interface USKCallback { /** * Found the latest edition. Called when the USKFetcher has finished, it won't * search for any later editions. * * @param l * The edition number. * @param key * A copy of the key with new edition set * @param newKnownGood If the highest known good edition (which has actually been * fetched with what it pointed to) has increased. Otherwise, the highest known * SSK slot has been increased, from which searches will start, but we do not * know whether it can actually be fetched successfully. * @param newSlotToo If newKnownGood is set, this indicates whether it is also a * new highest known SSK slot. If newKnownGood is not set, there is always a new * highest known SSK slot. */ void onFoundEdition(long l, USK key, ClientContext context, boolean metadata, short codec, byte[] data, boolean newKnownGood, boolean newSlotToo); /** * Priority at which the polling should run normally. See RequestScheduler for constants. */ short getPollingPriorityNormal(); /** * Priority at which the polling should run when starting, or immediately after making some progress. * See RequestScheduler for constants. */ short getPollingPriorityProgress(); }