abstract class ModelConfigLoader extends Serializable with LazyLogging
Loads model configs.
Configs are resolved once when loading model data. Implement when you want to add dynamic configuration that is fetched from external source, for example OpenAPI specification and you would like this configuration to be immutable for deployed processes.
This class is optional to implement.
- Alphabetic
- By Inheritance
- ModelConfigLoader
- LazyLogging
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ModelConfigLoader()
Abstract Value Members
- abstract def resolveInputConfigDuringExecution(inputConfig: Config, configWithDefaults: Config, classLoader: ClassLoader): InputConfigDuringExecution
Same as resolveInputConfigDuringExecution but with provided param configWithDefaults containing inputConfig with resolved default values.
Same as resolveInputConfigDuringExecution but with provided param configWithDefaults containing inputConfig with resolved default values.
- Attributes
- protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- lazy val logger: Logger
- Attributes
- protected
- Definition Classes
- LazyLogging
- Annotations
- @transient()
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def resolveConfig(inputConfigDuringExecution: InputConfigDuringExecution, classLoader: ClassLoader): Config
Resolves full config used inside pl.touk.nussknacker.engine.api.process.ProcessConfigCreator.
Resolves full config used inside pl.touk.nussknacker.engine.api.process.ProcessConfigCreator. Invoked both in NK and running process.
Default implementation resolveConfigUsingDefaults should rather not be changed.
- final def resolveConfigUsingDefaults(inputConfig: Config, classLoader: ClassLoader): Config
Default implementation of resolveConfig.
Default implementation of resolveConfig. Loads model config the from following locations:
- param inputConfig
- defaultModelConfig.conf from model jar
- reference.conf from model jar</li </ol
- Attributes
- protected
- final def resolveInputConfigDuringExecution(inputConfig: ConfigWithUnresolvedVersion, classLoader: ClassLoader): InputConfigDuringExecution
Resolves config part to pass during execution while e.g.
Resolves config part to pass during execution while e.g. process deployment on Flink cluster. When running a process (e.g. on Flink) resolved config part is used to construct full config (see resolveConfig)
Method used for performance reasons to reduce serialized configuration size inside deployed processes. By default config from main nussknacker file at path: scenarioTypes.{type_name}.modelConfig is passed unchanged.
- inputConfig
configuration from scenarioTypes.{type_name}.modelConfig
- returns
config part that is later passed to a running process (see e.g. FlinkProcessCompiler)
- def shouldResolveEnvVariables: Boolean
We want to be able to use model config with unresolved env variables.
We want to be able to use model config with unresolved env variables. It is for purpose where engine (e.g. Flink) see other host names / ports than designer. It is especially useful for local development. Remember that when you turn it off, you can't use optional substitutions (e.g. ${?KAFKA_ADDRESS} in model config. Otherwise they will be removed.
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def withFallbackToDefaults(inputConfig: Config, classLoader: ClassLoader): Config
- Attributes
- protected
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)