Class DirectoryMapImpl
- java.lang.Object
-
- jetbrains.buildServer.agent.impl.directories.DirectoryMapImpl
-
- All Implemented Interfaces:
DirectoryMap
public class DirectoryMapImpl extends Object implements DirectoryMap
User: kir This class is responsible for maintaining of directory.map file and for maintaining directories with project sources.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
DirectoryMapImpl.DirectoryMapItemFilter
-
Field Summary
Fields Modifier and Type Field Description static long
HOUR
static String
PROJECT_CONFIGURATION_SEPARATOR
-
Constructor Summary
Constructors Constructor Description DirectoryMapImpl(BuildAgentConfiguration configuration, TimeService time, DirectoryMapPersistance persistance, DirectoryMapDirectoriesCleaner cleaner)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DirectoryLifeTime
getAgentConfDirectoryLifeTime(DirectoryLifeTime defaultForThisBuild)
Map<File,Date>
getRegisteredRemovableItems()
This method returns map of all allocated checkout directories with last use time.Map<File,Date>
getRegisteredRemovableItems(AgentRunningBuild runningBuild)
This method returns map of all allocated checkout directories with last use time.Long
moveExpired2Old(AgentRunningBuild build)
boolean
removeCheckoutDirectory(File checkoutDirectory)
This method is called to request DirectoryMap to remove specified checkout folder.boolean
removeCheckoutDirectory(AgentRunningBuild runningBuild, File checkoutDirectory)
This method is called to request DirectoryMap to remove specified checkout folder.void
updateDirectoryMapOnBuild(AgentRunningBuild runningBuild)
Updates information for the running build.
-
-
-
Field Detail
-
PROJECT_CONFIGURATION_SEPARATOR
@NonNls public static final String PROJECT_CONFIGURATION_SEPARATOR
- See Also:
- Constant Field Values
-
HOUR
public static final long HOUR
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DirectoryMapImpl
public DirectoryMapImpl(@NotNull BuildAgentConfiguration configuration, @NotNull TimeService time, @NotNull DirectoryMapPersistance persistance, @NotNull DirectoryMapDirectoriesCleaner cleaner)
-
-
Method Detail
-
updateDirectoryMapOnBuild
public void updateDirectoryMapOnBuild(@NotNull AgentRunningBuild runningBuild)
Description copied from interface:DirectoryMap
Updates information for the running build.- Specified by:
updateDirectoryMapOnBuild
in interfaceDirectoryMap
-
getRegisteredRemovableItems
@NotNull public Map<File,Date> getRegisteredRemovableItems(@NotNull AgentRunningBuild runningBuild)
Description copied from interface:DirectoryMap
This method returns map of all allocated checkout directories with last use time. The map should not contain any directories associated with currently running build.- Specified by:
getRegisteredRemovableItems
in interfaceDirectoryMap
- Parameters:
runningBuild
- current running build to filter results- Returns:
- map of all registered folders to remove to last use time
-
removeCheckoutDirectory
public boolean removeCheckoutDirectory(@NotNull AgentRunningBuild runningBuild, @NotNull File checkoutDirectory)
Description copied from interface:DirectoryMap
This method is called to request DirectoryMap to remove specified checkout folder. The folder may not be removed if it used by currently running build or DirectoryLifetime denies it.- Specified by:
removeCheckoutDirectory
in interfaceDirectoryMap
- Parameters:
runningBuild
- currently running buildcheckoutDirectory
- checkout directory to remove- Returns:
- true iff checkout directory was removed
-
removeCheckoutDirectory
public boolean removeCheckoutDirectory(@NotNull File checkoutDirectory)
Description copied from interface:DirectoryMap
This method is called to request DirectoryMap to remove specified checkout folder. The folder may not be removed ifDirectoryLifeTime
denies it.- Specified by:
removeCheckoutDirectory
in interfaceDirectoryMap
- Parameters:
checkoutDirectory
- checkout directory to remove- Returns:
- true if checkout directory was removed
-
getRegisteredRemovableItems
@NotNull public Map<File,Date> getRegisteredRemovableItems()
Description copied from interface:DirectoryMap
This method returns map of all allocated checkout directories with last use time.- Specified by:
getRegisteredRemovableItems
in interfaceDirectoryMap
- Returns:
- map of all registered folders to remove to last use time
-
getAgentConfDirectoryLifeTime
protected DirectoryLifeTime getAgentConfDirectoryLifeTime(DirectoryLifeTime defaultForThisBuild)
-
moveExpired2Old
@Nullable public Long moveExpired2Old(@Nullable AgentRunningBuild build)
-
-