public abstract class MakeNextDirectory
extends java.lang.Object
ManagedRepositoryI.TemplateDirectoryCreator:
 pinpoint the next directory to use, then try to use it while watching for
 conflicts from other similar threads.| Constructor and Description | 
|---|
| MakeNextDirectory() | 
| Modifier and Type | Method and Description | 
|---|---|
| abstract java.util.List<java.lang.String> | getPathFor(long index)Get the subdirectories to create for the given index,
 the first directories to be created corresponding to  index == 0. | 
| abstract boolean | isAcceptable(java.util.List<java.lang.String> path)If the circumstances (filesystem, etc.) are such that it is okay to use the given subdirectories. | 
| java.util.List<java.lang.String> | useFirstAcceptable()Use the first acceptable path (that with the lowest  indexforgetPathFor(long))
 and return the corresponding subdirectories. | 
| abstract void | usePath(java.util.List<java.lang.String> path)Actually use the path. | 
public abstract java.util.List<java.lang.String> getPathFor(long index)
index == 0.index - a non-negative indexpublic abstract boolean isAcceptable(java.util.List<java.lang.String> path)
                              throws ServerError
path - the subdirectories to possibly useServerError - if the path could not be testedpublic abstract void usePath(java.util.List<java.lang.String> path)
                      throws ServerError
path - the subdirectories to useServerError - if the path could not be usedpublic java.util.List<java.lang.String> useFirstAcceptable()
                                                    throws ServerError
index for getPathFor(long))
 and return the corresponding subdirectories.ServerError - if the first acceptable path could not be found or used