<packaging>pom</packaging>
     <properties>
         <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
-        <spring.boot.version>2.1.3.RELEASE</spring.boot.version>
-        <spring.version>5.1.5.RELEASE</spring.version>
-        <kotlin.version>1.3.21</kotlin.version>
-        <kotlin.maven.version>1.3.21</kotlin.maven.version>
-        <kotlin.couroutines.version>1.1.1</kotlin.couroutines.version>
         <grpc.version>1.18.0</grpc.version>
         <protobuff.java.utils.version>3.6.1</protobuff.java.utils.version>
         <eelf.version>1.0.0</eelf.version>
 
   ~  See the License for the specific language governing permissions and
   ~  limitations under the License.
   -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.onap.ccsdk.cds</groupId>
     <description>Blueprints Processor Parent</description>
     <properties>
         <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
-        <spring.boot.version>2.1.3.RELEASE</spring.boot.version>
-        <spring.version>5.1.5.RELEASE</spring.version>
-        <kotlin.version>1.3.21</kotlin.version>
-        <kotlin.maven.version>1.3.21</kotlin.maven.version>
-        <kotlin.couroutines.version>1.1.1</kotlin.couroutines.version>
         <grpc.version>1.18.0</grpc.version>
         <sshd.version>2.2.0</sshd.version>
         <jsch.version>0.1.55</jsch.version>
 
 
 open class BlueprintScriptingHost(evaluator: ScriptEvaluator) : BasicScriptingHost(blueprintScriptCompiler, evaluator) {
 
-    override fun eval(script: SourceCode, scriptCompilationConfiguration: ScriptCompilationConfiguration,
-                      configuration: ScriptEvaluationConfiguration?): ResultWithDiagnostics<EvaluationResult> =
+    override fun eval(script: SourceCode, compilationConfiguration: ScriptCompilationConfiguration,
+                      evaluationConfiguration: ScriptEvaluationConfiguration?): ResultWithDiagnostics<EvaluationResult> =
 
             runInCoroutineContext {
-
-                blueprintScriptCompiler(script, scriptCompilationConfiguration)
-                        .onSuccess {
-                            evaluator(it, configuration)
+                blueprintScriptCompiler(script, compilationConfiguration)
+                        .onSuccess { compiledScript ->
+                            evaluator(compiledScript, evaluationConfiguration ?: ScriptEvaluationConfiguration.Default)
                         }.onFailure { failedResult ->
                             val messages = failedResult.reports.joinToString("\n")
                             throw BluePrintProcessorException(messages)
     private val log = LoggerFactory.getLogger(BluePrintScriptEvaluator::class.java)!!
 
     override suspend operator fun invoke(compiledScript: CompiledScript<*>,
-                                         scriptEvaluationConfiguration: ScriptEvaluationConfiguration?
+                                         scriptEvaluationConfiguration: ScriptEvaluationConfiguration
     ): ResultWithDiagnostics<EvaluationResult> =
             try {
                 log.debug("Getting script class name($scriptClassName) from the compiled sources ")
                 val bluePrintCompiledScript = compiledScript as BluePrintCompiledScript
                 bluePrintCompiledScript.scriptClassFQName = scriptClassName
 
-                val classResult = compiledScript.getClass(scriptEvaluationConfiguration)
-                when (classResult) {
+                when (val classResult = compiledScript.getClass(scriptEvaluationConfiguration)) {
                     is ResultWithDiagnostics.Failure -> classResult
                     is ResultWithDiagnostics.Success -> {
 
                         val scriptClass = classResult.value
                         val args = ArrayList<Any?>()
-                        scriptEvaluationConfiguration?.get(ScriptEvaluationConfiguration.providedProperties)?.forEach {
+                        scriptEvaluationConfiguration.get(ScriptEvaluationConfiguration.providedProperties)?.forEach {
                             args.add(it.value)
                         }
-                        scriptEvaluationConfiguration?.get(ScriptEvaluationConfiguration.implicitReceivers)?.let {
+                        scriptEvaluationConfiguration.get(ScriptEvaluationConfiguration.implicitReceivers)?.let {
                             args.addAll(it)
                         }
-                        scriptEvaluationConfiguration?.get(ScriptEvaluationConfiguration.constructorArgs)?.let {
+                        scriptEvaluationConfiguration.get(ScriptEvaluationConfiguration.constructorArgs)?.let {
                             args.addAll(it)
                         }
 
 
     <packaging>pom</packaging>
     <properties>
         <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
-        <spring.boot.version>2.1.3.RELEASE</spring.boot.version>
-        <spring.version>5.1.5.RELEASE</spring.version>
-        <kotlin.version>1.3.21</kotlin.version>
-        <kotlin.maven.version>1.3.21</kotlin.maven.version>
-        <kotlin.couroutines.version>1.1.1</kotlin.couroutines.version>
         <grpc.version>1.18.0</grpc.version>
         <protobuff.java.utils.version>3.6.1</protobuff.java.utils.version>
         <eelf.version>1.0.0</eelf.version>