我有以下课程
sealed class WorkflowStepContent(
open val id: String,
val htmlContent: String? = null
) {
@get:Inject lateinit var converter: HtmlToMarkupConverter
val markupContent: String?
init {
markupContent = converter(htmlContent)
}
}
data class QuestionStepContent(
override val id: String,
val title: String,
val options: List<Option>
) : WorkflowStepContent(id)
我标记为要注入的。当我从另一个类显式创建QuestionStepContent
的实例时,我希望guice自动注入converter
,但不确定是否可以这样做。也许我应该显式地调用guice来实例化它,但是我应该传递构造函数参数,并且将来密封类将扩展更多的类。有什么提示吗?