Scripts: Accept objects as DependenciesResolver implementations

Fixes DependenciesResolver.NoDependencies causing "missing constructor without parameters" warning
This commit is contained in:
Pavel V. Talanov
2017-10-12 17:16:15 +03:00
parent 4972dbfc2d
commit df4b90fcb6
@@ -80,6 +80,9 @@ open class KotlinScriptDefinitionFromAnnotatedTemplate(
private fun <T : Any> instantiateResolver(resolverClass: KClass<T>): T? {
try {
resolverClass.objectInstance?.let {
return it
}
val constructorWithoutParameters = resolverClass.constructors.find { it.parameters.all { it.isOptional } }
if (constructorWithoutParameters == null) {
log.warn("[kts] ${resolverClass.qualifiedName} must have a constructor without required parameters")