mirror of
https://github.com/latex-lsp/texlab.git
synced 2025-12-23 09:19:21 +00:00
Make logger available to provider
This commit is contained in:
parent
eecd78b94b
commit
790a1bb72d
3 changed files with 12 additions and 4 deletions
|
|
@ -26,7 +26,7 @@ dependencies {
|
|||
implementation "com.fasterxml.jackson.module:jackson-module-kotlin:2.9.+"
|
||||
implementation "com.overzealous:remark:1.1.0"
|
||||
implementation "org.zeroturnaround:zt-zip:1.13"
|
||||
implementation "org.slf4j:slf4j-nop:1.7.25"
|
||||
implementation "org.slf4j:slf4j-simple:1.7.26"
|
||||
implementation "me.andrz:brace-expansion:v0.1.3"
|
||||
implementation "org.scilab.forge:jlatexmath:1.0.7"
|
||||
implementation "de.undercouch:citeproc-java:1.0.1"
|
||||
|
|
|
|||
|
|
@ -6,6 +6,8 @@ import kotlinx.coroutines.future.await
|
|||
import kotlinx.coroutines.future.future
|
||||
import org.eclipse.lsp4j.*
|
||||
import org.eclipse.lsp4j.jsonrpc.messages.Either
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import texlab.build.BuildConfig
|
||||
import texlab.build.BuildEngine
|
||||
import texlab.build.BuildParams
|
||||
|
|
@ -60,6 +62,10 @@ import kotlin.coroutines.CoroutineContext
|
|||
|
||||
@ObsoleteCoroutinesApi
|
||||
class TextDocumentServiceImpl(val workspaceActor: WorkspaceActor) : CustomTextDocumentService, CoroutineScope {
|
||||
companion object {
|
||||
private val logger: Logger = LoggerFactory.getLogger("")
|
||||
}
|
||||
|
||||
override val coroutineContext: CoroutineContext = Dispatchers.Default + SupervisorJob()
|
||||
|
||||
private lateinit var client: CustomLanguageClient
|
||||
|
|
@ -382,7 +388,7 @@ class TextDocumentServiceImpl(val workspaceActor: WorkspaceActor) : CustomTextDo
|
|||
|
||||
suspend fun publishDiagnostics(uri: URI) {
|
||||
workspaceActor.withWorkspace { workspace ->
|
||||
val request = FeatureRequest(uri, workspace, Unit)
|
||||
val request = FeatureRequest(uri, workspace, Unit, logger)
|
||||
val diagnostics = diagnosticsProvider.get(request)
|
||||
val params = PublishDiagnosticsParams(uri.toString(), diagnostics)
|
||||
client.publishDiagnostics(params)
|
||||
|
|
@ -394,7 +400,7 @@ class TextDocumentServiceImpl(val workspaceActor: WorkspaceActor) : CustomTextDo
|
|||
params: T): List<R> {
|
||||
return workspaceActor.withWorkspace { workspace ->
|
||||
val uri = URIHelper.parse(document.uri)
|
||||
val request = FeatureRequest(uri, workspace, params)
|
||||
val request = FeatureRequest(uri, workspace, params, logger)
|
||||
provider.get(request)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,13 @@
|
|||
package texlab.provider
|
||||
|
||||
import org.slf4j.Logger
|
||||
import texlab.Workspace
|
||||
import java.net.URI
|
||||
|
||||
data class FeatureRequest<T>(val uri: URI,
|
||||
val workspace: Workspace,
|
||||
val params: T) {
|
||||
val params: T,
|
||||
val logger: Logger) {
|
||||
val relatedDocuments = workspace.relatedDocuments(uri)
|
||||
val document = relatedDocuments.first { it.uri == uri }
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue