java.lang.Object
org.eclipse.lsp4j.debug.Source
io.quarkus.qute.debug.agent.source.RemoteSource
io.quarkus.qute.debug.agent.source.JarSource
A specialized
RemoteSource representing a Qute template located
inside a JAR file.
This implementation is used when a template originates from a dependency JAR
rather than from the local file system. It ensures the source is properly
identified in the DAP client using a unique sourceReference.
Example URI:
jar:file:///C:/Users/.../quarkus-renarde-3.1.2.jar!/templates/tags/ifError.html
The displayed name for this source will be:
quarkus-renarde-3.1.2.jar!/templates/tags/ifError.htmlIf extraction fails for any reason, the name falls back to the file name (for example,
ifError.html).-
Constructor Summary
ConstructorsConstructorDescriptionJarSource(URI uri, String templateId, SourceReferenceRegistry sourceReferenceRegistry) Creates a newJarSourcefor a Qute template embedded in a JAR file. -
Method Summary
Modifier and TypeMethodDescriptionprotected StringcomputeName(URI uri) Computes a human-readable name for this source, suitable for display in the DAP client.Methods inherited from class io.quarkus.qute.debug.agent.source.RemoteSource
getStartLine, getTemplateId, getUriMethods inherited from class org.eclipse.lsp4j.debug.Source
equals, getAdapterData, getChecksums, getName, getOrigin, getPath, getPresentationHint, getSourceReference, getSources, hashCode, setAdapterData, setChecksums, setName, setOrigin, setPath, setPresentationHint, setSourceReference, setSources, toString
-
Constructor Details
-
JarSource
Creates a newJarSourcefor a Qute template embedded in a JAR file.- Parameters:
uri- the full JAR URI of the template (e.g.jar:file:///.../template.jar!/path/to/template.html)templateId- the Qute template identifiersourceReferenceRegistry- the registry responsible for assigning a unique DAP source reference
-
-
Method Details
-
computeName
Computes a human-readable name for this source, suitable for display in the DAP client.For JAR-based templates, the name includes the JAR file name and the internal resource path (e.g.
my-lib.jar!/templates/foo.html). If the URI is not a JAR path or the format cannot be parsed, this method falls back toRemoteSource.computeName(URI).- Overrides:
computeNamein classRemoteSource- Parameters:
uri- the full JAR URI of the source- Returns:
- a descriptive name for the source
-