Skip to content

Commit

Permalink
Small improvements for dev model (#2174)
Browse files Browse the repository at this point in the history
  • Loading branch information
mproch committed Sep 13, 2021
1 parent 80d6ce9 commit 1c1dcdd
Show file tree
Hide file tree
Showing 7 changed files with 8,009 additions and 7,850 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,22 @@ import pl.touk.nussknacker.engine.api.dict.embedded.EmbeddedDictDefinition

/**
* Example dict which presents how we can use dictionaries - RGB colors example
* NOTE: we write H00ffff instead of #00ffff, as #00ffff is not proper SpEL identifier, and this case (dict key not being proper identifier) is not handle ATM.
*/
object RGBDictionary {
val id: String = "rgb"

val definition: EmbeddedDictDefinition = EmbeddedDictDefinition(Map(
"#000000" -> "Black",
"#800000" -> "Maroon",
"#008000" -> "Green",
"#00ffff" -> "Aqua",
"#0000ff" -> "Blue",
"#5f0000" -> "DarkRed",
"#d7af87" -> "Tan",
"#ff0000" -> "Red",
"#ff00ff" -> "Magenta",
"#ffff00" -> "Yellow"
"H000000" -> "Black",
"H800000" -> "Maroon",
"H008000" -> "Green",
"H00ffff" -> "Aqua",
"H0000ff" -> "Blue",
"H5f0000" -> "DarkRed",
"Hd7af87" -> "Tan",
"Hff0000" -> "Red",
"Hff00ff" -> "Magenta",
"Hffff00" -> "Yellow"
))

val instance: DictInstance = DictInstance(id, definition)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ import io.circe.generic.JsonCodec
import pl.touk.nussknacker.engine.api.DisplayJsonWithEncoder
import pl.touk.nussknacker.engine.util.json.BestEffortJsonEncoder

@JsonCodec(encodeOnly = true) case class ComplexObject(foo: Map[String, Any]) extends DisplayJsonWithEncoder[ComplexObject]
@JsonCodec(encodeOnly = true) case class ComplexObject(foo: java.util.Map[String, Any]) extends DisplayJsonWithEncoder[ComplexObject]

object ComplexObject {

private implicit val mapEncoder: Encoder[Map[String, Any]] = Encoder.instance[Map[String, Any]](BestEffortJsonEncoder.defaultForTests.encode)
private implicit val mapEncoder: Encoder[java.util.Map[String, Any]] = Encoder.instance[java.util.Map[String, Any]](BestEffortJsonEncoder.defaultForTests.encode)
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
package pl.touk.nussknacker.engine.management.sample.dto

case class RichObject(field1: String, field2: Long, field3: Option[String])
import java.util.Optional

case class RichObject(field1: String, field2: Long, field3: Optional[String])
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
package pl.touk.nussknacker.engine.management.sample.service

import java.util

import pl.touk.nussknacker.engine.api.{MethodToInvoke, ParamName, Service}
import pl.touk.nussknacker.engine.api.editor.{LabeledExpression, SimpleEditor, SimpleEditorType}
import pl.touk.nussknacker.engine.management.sample.dto.{ComplexObject, RichObject}
import pl.touk.nussknacker.engine.management.sample.TariffType
import pl.touk.sample.JavaSampleEnum

import java.util.Optional
import scala.collection.JavaConverters._
import scala.concurrent.Future

case object EmptyService extends Service {
Expand All @@ -32,21 +33,21 @@ case object OneParamService extends Service {
case object ComplexReturnObjectService extends Service {
@MethodToInvoke
def invoke(): Future[ComplexObject] = {
Future.successful(ComplexObject(Map("foo" -> 1, "bar" -> "baz")))
Future.successful(ComplexObject(Map("foo" -> 1, "bar" -> "baz").asJava))
}
}

case object Enricher extends Service {
@MethodToInvoke
def invoke(@ParamName("param") param: String, @ParamName("tariffType") tariffType: TariffType): Future[RichObject] =
Future.successful(RichObject(param, 123L, Some("rrrr")))
Future.successful(RichObject(param, 123L, Optional.of("rrrr")))
}

case object ListReturnObjectService extends Service {

@MethodToInvoke
def invoke() : Future[java.util.List[RichObject]] = {
Future.successful(util.Arrays.asList(RichObject("abcd1", 1234L, Some("defg"))))
Future.successful(util.Arrays.asList(RichObject("abcd1", 1234L, Optional.of("defg"))))
}

}
Expand Down

0 comments on commit 1c1dcdd

Please sign in to comment.