DartleCache class

The cache used by dartle to figure out when files change between checks, typically between two builds.

It is a cache-based cache - it does not cache the contents of files or directories, it only associates a cache to them so that it can tell whether their contents have changed between two checks in a very efficient manner.

Available extensions

Constructors

DartleCache(String rootDir)
Create an instance of DartleCache at the given root directory.

Properties

hashCode → int
The hash code for this object.
no setterinherited
rootDir → String
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

cacheInvocation(TaskInvocation invocation) → Future<void>

Available on DartleCache, provided by the CacheTasks extension

cacheTaskInvocation(String taskName, [List<String> args = const []]) → Future<void>
Cache the given task invocation.
call(FileCollection collection, {String key = ''}) → Future<void>
Cache all files and directories in the given collection.
clean({String key = ''}) → Future<void>
Clean the Dartle cache.
contains(FileSystemEntity entity, {String key = ''}) → bool
Check if the given file system entity is present in the cache.
findChanges(FileCollection fileCollection, {String key = ''}) → Stream<FileChange>
Find all changes if a FileCollection has been modified since the last time someone checked with this method.
getExecutablesLocation(File file) → File
Get a location for storing an executable file created from the given file.
getLatestInvocationTime(String taskName) → Future<DateTime?>
Get the DateTime when this task was last invoked successfully.
hasChanged(FileCollection fileCollection, {String key = ''}) → Future<bool>
Check if any member of a FileCollection has been modified since the last time someone checked with this method.
hasInvocationChanged(TaskInvocation invocation) → Future<bool>

Available on DartleCache, provided by the CacheTasks extension

hasTask(String taskName) → Future<bool>
Check if a task invocation with the given name has been cached before.
hasTaskInvocationChanged(String taskName, [List<String> args = const []]) → Future<bool>
Check if the given task had been invoked with the same arguments before.
init() → void
Initialize the cache directories.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
remove(FileCollection collection, {String key = ''}) → Future<void>
Remove from this cache all files and directories in the given collection.
removeNotMatching(Set<String> taskNames, Set<String> keys) → Future<void>
Remove any cache entry that is not relevant given the remaining taskNames and keys.
removeTaskInvocation(String taskName) → Future<void>
Remove any previous invocations of a task with the given name from the cache.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Properties

instance → DartleCache
Get the default DartleCache instance. May initialize the default cache directory at .dartle_tool.
no setter