GradleBuildRootsManager: implement getScriptFirstSeenTs
This commit is contained in:
+9
-1
@@ -32,7 +32,10 @@ import org.jetbrains.plugins.gradle.config.GradleSettingsListenerAdapter
|
|||||||
import org.jetbrains.plugins.gradle.settings.*
|
import org.jetbrains.plugins.gradle.settings.*
|
||||||
import org.jetbrains.plugins.gradle.util.GradleConstants
|
import org.jetbrains.plugins.gradle.util.GradleConstants
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
import java.nio.file.FileSystems
|
||||||
|
import java.nio.file.Files
|
||||||
import java.nio.file.Paths
|
import java.nio.file.Paths
|
||||||
|
import java.nio.file.attribute.BasicFileAttributes
|
||||||
import java.util.concurrent.atomic.AtomicBoolean
|
import java.util.concurrent.atomic.AtomicBoolean
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -107,7 +110,12 @@ class GradleBuildRootsManager(val project: Project) : GradleBuildRootsLocator(),
|
|||||||
override fun getScriptInfo(localPath: String): GradleScriptInfo? =
|
override fun getScriptInfo(localPath: String): GradleScriptInfo? =
|
||||||
manager.getLightScriptInfo(localPath) as? GradleScriptInfo
|
manager.getLightScriptInfo(localPath) as? GradleScriptInfo
|
||||||
|
|
||||||
override fun getScriptFirstSeenTs(path: String): Long = 0
|
override fun getScriptFirstSeenTs(path: String): Long {
|
||||||
|
val nioPath = FileSystems.getDefault().getPath(path)
|
||||||
|
return Files.readAttributes(nioPath, BasicFileAttributes::class.java)
|
||||||
|
?.creationTime()?.toMillis()
|
||||||
|
?: Long.MAX_VALUE
|
||||||
|
}
|
||||||
|
|
||||||
fun fileChanged(filePath: String, ts: Long = System.currentTimeMillis()) {
|
fun fileChanged(filePath: String, ts: Long = System.currentTimeMillis()) {
|
||||||
findAffectedFileRoot(filePath)?.fileChanged(filePath, ts)
|
findAffectedFileRoot(filePath)?.fileChanged(filePath, ts)
|
||||||
|
|||||||
Reference in New Issue
Block a user