mirror of https://github.com/sbt/sbt.git
Merge pull request #191 from eatkins/avoid-io
Add file FileInfo factory applys without io
This commit is contained in:
commit
62471c6215
|
|
@ -90,6 +90,8 @@ object FileInfo {
|
|||
|
||||
implicit def apply(file: File): HashModifiedFileInfo =
|
||||
FileHashModified(file.getAbsoluteFile, Hash(file).toList, IO.getModifiedTimeOrZero(file))
|
||||
def apply(file: File, hash: List[Byte], lastModified: Long): HashModifiedFileInfo =
|
||||
FileHashModified(file.getAbsoluteFile, hash, lastModified)
|
||||
}
|
||||
|
||||
object hash extends Style {
|
||||
|
|
@ -115,6 +117,8 @@ object FileInfo {
|
|||
}
|
||||
|
||||
implicit def apply(file: File): HashFileInfo = FileHash(file.getAbsoluteFile, computeHash(file))
|
||||
def apply(file: File, bytes: List[Byte]): HashFileInfo =
|
||||
FileHash(file.getAbsoluteFile, bytes)
|
||||
|
||||
private def computeHash(file: File): List[Byte] =
|
||||
try Hash(file).toList
|
||||
|
|
@ -147,6 +151,8 @@ object FileInfo {
|
|||
|
||||
implicit def apply(file: File): ModifiedFileInfo =
|
||||
FileModified(file.getAbsoluteFile, IO.getModifiedTimeOrZero(file))
|
||||
def apply(file: File, lastModified: Long): ModifiedFileInfo =
|
||||
FileModified(file.getAbsoluteFile, lastModified)
|
||||
}
|
||||
|
||||
object exists extends Style {
|
||||
|
|
@ -175,5 +181,9 @@ object FileInfo {
|
|||
val abs = file.getAbsoluteFile
|
||||
PlainFile(abs, abs.exists)
|
||||
}
|
||||
def apply(file: File, exists: Boolean): PlainFileInfo = {
|
||||
val abs = file.getAbsoluteFile
|
||||
PlainFile(abs, exists)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue