public class DefaultManifestPutter extends BaseManifestPutter
The default manifest putter. It should be choosen if no alternative putter is given. Its also the replacment for SimpleManifestPutter, thats not longer simple!
default doc:
defaultName is just the name, without any '/'! pack limits:
pack rules:
each item
pack hints for clients:
If the files in the site root directory fits into a container, they are in
the root container (the first fetched container)
Save formula: (accumulated file size) + (512 Bytes * <subdircount>) < 1,8MB
BaseManifestPutter.ContainerBuilder, BaseManifestPutter.FreeFormBuilder, BaseManifestPutter.ManifestBuilder
Modifier and Type | Field and Description |
---|---|
static long |
DEFAULT_CONTAINERSIZE_SPARE |
static long |
DEFAULT_MAX_CONTAINERITEMSIZE |
static long |
DEFAULT_MAX_CONTAINERSIZE |
minSuccessFetchBlocks
blockSetFinalized, cancelled, client, creationTime, failedBlocks, fatallyFailedBlocks, latestFailure, latestSuccess, minSuccessBlocks, priorityClass, realTimeFlag, sentToNetwork, successfulBlocks, totalBlocks
Constructor and Description |
---|
DefaultManifestPutter(ClientPutCallback clientCallback,
java.util.HashMap<java.lang.String,java.lang.Object> manifestElements,
short prioClass,
FreenetURI target,
java.lang.String defaultName,
InsertContext ctx,
boolean persistent,
byte[] forceCryptoKey,
ClientContext context) |
Modifier and Type | Method and Description |
---|---|
void |
innerOnResume(ClientContext context)
Called by onResume() once and only once after restarting.
|
protected void |
makePutHandlers(java.util.HashMap<java.lang.String,java.lang.Object> manifestElements,
java.lang.String defaultName)
Implements the pack logic.
|
addBlock, addBlocks, addMustSucceedBlocks, addRedundantBlocksInsert, blockSetFinalized, bucketsByNameToManifestEntries, cancel, countFiles, flatten, flatten, getCallback, getMinSuccessFetchBlocks, getRootBuilder, getRootContainer, getSplitfileCryptoKey, getURI, guessMime, guessMime, innerNotifyClients, innerToNetwork, isFinished, makeArchive, onFetchable, onShutdown, onTransition, onTransition, start, totalSize
dump
cancel, clearCountersOnRestart, completedBlock, failedBlock, failedBlock, fatallyFailedBlock, getAll, getClient, getClientDetail, getClientDetail, getLatestFailure, getLatestSuccess, getPriorityClass, getSchedulerGroup, getTotalBlocks, hashCode, isCancelled, isCurrentState, notifyClients, onResume, persistent, realTimeFlag, resetBlocks, setPriorityClass, toNetwork
public static final long DEFAULT_MAX_CONTAINERSIZE
public static final long DEFAULT_MAX_CONTAINERITEMSIZE
public static final long DEFAULT_CONTAINERSIZE_SPARE
public DefaultManifestPutter(ClientPutCallback clientCallback, java.util.HashMap<java.lang.String,java.lang.Object> manifestElements, short prioClass, FreenetURI target, java.lang.String defaultName, InsertContext ctx, boolean persistent, byte[] forceCryptoKey, ClientContext context) throws TooManyFilesInsertException
TooManyFilesInsertException
protected void makePutHandlers(java.util.HashMap<java.lang.String,java.lang.Object> manifestElements, java.lang.String defaultName) throws TooManyFilesInsertException
makePutHandlers
in class BaseManifestPutter
manifestElements
- A map from String to either ManifestElement or another String. This is the
site structure, which will be split into containers and/or external inserts by the method.TooManyFilesInsertException
BaseManifestPutter.makePutHandlers(java.util.HashMap, String)
public void innerOnResume(ClientContext context) throws ResumeFailedException
ClientRequester
innerOnResume
in class BaseManifestPutter
ResumeFailedException