Skip to content

Commit

Permalink
FBP-73. Resolve issue with injector
Browse files Browse the repository at this point in the history
  • Loading branch information
valb3r committed Jul 22, 2023
1 parent 4d874dc commit b5de9f3
Show file tree
Hide file tree
Showing 8 changed files with 21 additions and 11 deletions.
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
<idea-plugin>
<!-- Only SpEL here -->
<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.activiti.plugin.langinjection.ActivitiDelegateExpressionUiInjector"/>
</extensions>
</idea-plugin>
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,6 @@

<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.activiti.plugin.langinjection.ActivitiDelegateExpressionUiInjector"/>
<multiHostInjector implementation="com.valb3r.bpmn.intellij.activiti.plugin.langinjection.xml.ActivitiXmlInjector"/>
</extensions>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import com.intellij.psi.xml.XmlAttribute
import com.intellij.psi.xml.XmlAttributeValue
import com.intellij.psi.xml.XmlTag
import com.intellij.psi.xml.XmlText
import com.valb3r.bpmn.intellij.plugin.core.settings.currentSettings

abstract class DefaultXmlInjector: MultiHostInjector {

Expand Down Expand Up @@ -37,7 +38,13 @@ abstract class DefaultXmlInjector: MultiHostInjector {
}

protected open fun invalidXmlFileExtension(context: PsiLanguageInjectionHost): Boolean {
return !context.containingFile.name.endsWith("bpmn20.xml") && context.containingFile?.context?.containingFile?.name?.endsWith("bpmn20.xml") != true
return isValidFileName(context.containingFile.name)
}

private fun isValidFileName(fileName: String?): Boolean {
val name = fileName ?: return false
val allowedExt = currentSettings().openExtensions
return allowedExt.any { name.endsWith(it) }
}

private fun tryToInjectSkipExpression(context: XmlAttributeValue, asHost: PsiLanguageInjectionHost, registrar: MultiHostRegistrar): Boolean {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,4 @@ package com.valb3r.bpmn.intellij.plugin.camunda.langinjection.xml
import com.intellij.psi.PsiLanguageInjectionHost
import com.valb3r.bpmn.intellij.plugin.commons.langinjection.xml.DefaultXmlInjector

class CamundaXmlCamundaInjector: DefaultXmlInjector() {

override fun invalidXmlFileExtension(context: PsiLanguageInjectionHost): Boolean {
return !context.containingFile.name.endsWith("bpmn") && context.containingFile?.context?.containingFile?.name?.endsWith("bpmn") != true
}
}
class CamundaXmlCamundaInjector: DefaultXmlInjector()
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
<idea-plugin>
<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.camunda.langinjection.CamundaDelegateExpressionUiInjector"/>
</extensions>
</idea-plugin>
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,6 @@

<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.camunda.langinjection.CamundaDelegateExpressionUiInjector"/>
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.camunda.langinjection.xml.CamundaXmlCamundaInjector"/>
</extensions>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
<idea-plugin>
<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.flowable.langinjection.FlowableDelegateExpressionUiInjector"/>
</extensions>
</idea-plugin>
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,6 @@

<!-- Inject SpEL for highlighting -->
<extensions defaultExtensionNs="com.intellij">
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.flowable.langinjection.FlowableDelegateExpressionUiInjector"/>
<multiHostInjector implementation="com.valb3r.bpmn.intellij.plugin.flowable.langinjection.xml.FlowableXmlFlowableInjector"/>
</extensions>

Expand Down

0 comments on commit b5de9f3

Please sign in to comment.