diff --git a/akka-javasdk-maven/akka-javasdk-parent/pom.xml b/akka-javasdk-maven/akka-javasdk-parent/pom.xml
index def125ec1..01f5a1e44 100644
--- a/akka-javasdk-maven/akka-javasdk-parent/pom.xml
+++ b/akka-javasdk-maven/akka-javasdk-parent/pom.xml
@@ -38,7 +38,7 @@
21
- 1.2.2-7-3e32f0a1-SNAPSHOT
+ 1.2.2-25-7b7fa85e-SNAPSHOT
UTF-8
false
diff --git a/akka-javasdk-tests/src/test/java/akkajavasdk/components/workflowentities/TransferWorkflow.java b/akka-javasdk-tests/src/test/java/akkajavasdk/components/workflowentities/TransferWorkflow.java
index 111a60c48..ad9586121 100644
--- a/akka-javasdk-tests/src/test/java/akkajavasdk/components/workflowentities/TransferWorkflow.java
+++ b/akka-javasdk-tests/src/test/java/akkajavasdk/components/workflowentities/TransferWorkflow.java
@@ -53,7 +53,7 @@ public WorkflowDef definition() {
.addStep(deposit);
}
- public Effect startTransfer(Transfer transfer) {vl
+ public Effect startTransfer(Transfer transfer) {
if (transfer.amount <= 0.0) {
return effects().reply(new Message("Transfer amount should be greater than zero"));
} else {
diff --git a/akka-javasdk/src/main/scala/akka/javasdk/impl/SdkRunner.scala b/akka-javasdk/src/main/scala/akka/javasdk/impl/SdkRunner.scala
index 803d69aeb..3eccde549 100644
--- a/akka-javasdk/src/main/scala/akka/javasdk/impl/SdkRunner.scala
+++ b/akka-javasdk/src/main/scala/akka/javasdk/impl/SdkRunner.scala
@@ -45,6 +45,7 @@ import akka.javasdk.impl.action.ActionsImpl
import akka.javasdk.impl.client.ComponentClientImpl
import akka.javasdk.impl.consumer.ConsumerService
import akka.javasdk.impl.eventsourcedentity.EventSourcedEntitiesImpl
+import akka.javasdk.impl.eventsourcedentity.EventSourcedEntityImpl
import akka.javasdk.impl.eventsourcedentity.EventSourcedEntityService
import akka.javasdk.impl.http.HttpClientProviderImpl
import akka.javasdk.impl.http.JwtClaimsImpl
@@ -54,6 +55,7 @@ import akka.javasdk.impl.reflection.Reflect
import akka.javasdk.impl.reflection.Reflect.Syntax.AnnotatedElementOps
import akka.javasdk.impl.telemetry.SpanTracingImpl
import akka.javasdk.impl.telemetry.TraceInstrumentation
+import akka.javasdk.impl.timedaction.TimedActionImpl
import akka.javasdk.impl.timedaction.TimedActionService
import akka.javasdk.impl.timer.TimerSchedulerImpl
import akka.javasdk.impl.view.ViewService
@@ -79,6 +81,7 @@ import akka.runtime.sdk.spi.SpiMockedEventingSettings
import akka.runtime.sdk.spi.SpiSettings
import akka.runtime.sdk.spi.SpiWorkflow
import akka.runtime.sdk.spi.StartContext
+import akka.runtime.sdk.spi.TimedActionDescriptor
import akka.runtime.sdk.spi.WorkflowDescriptor
import akka.stream.Materializer
import com.google.protobuf.Descriptors
@@ -94,13 +97,6 @@ import kalix.protocol.value_entity.ValueEntities
import kalix.protocol.view.Views
import kalix.protocol.workflow_entity.WorkflowEntities
import org.slf4j.LoggerFactory
-import scala.jdk.OptionConverters.RichOptional
-import scala.jdk.CollectionConverters._
-
-import akka.javasdk.impl.eventsourcedentity.EventSourcedEntityImpl
-import akka.javasdk.impl.timedaction.TimedActionImpl
-import akka.runtime.sdk.spi.EventSourcedEntityDescriptor
-import akka.runtime.sdk.spi.TimedActionDescriptor
/**
* INTERNAL API
@@ -134,7 +130,7 @@ class SdkRunner private (dependencyProvider: Option[DependencyProvider]) extends
else
None
- new SpiSettings(devModeSettings)
+ new SpiSettings(100, devModeSettings)
}
private def extractBrokerConfig(eventingConf: Config): SpiEventingSupportSettings = {
diff --git a/akka-javasdk/src/main/scala/akka/javasdk/impl/eventsourcedentity/EventSourcedEntityImpl.scala b/akka-javasdk/src/main/scala/akka/javasdk/impl/eventsourcedentity/EventSourcedEntityImpl.scala
index fde399f93..39aa96224 100644
--- a/akka-javasdk/src/main/scala/akka/javasdk/impl/eventsourcedentity/EventSourcedEntityImpl.scala
+++ b/akka-javasdk/src/main/scala/akka/javasdk/impl/eventsourcedentity/EventSourcedEntityImpl.scala
@@ -41,7 +41,6 @@ import akka.runtime.sdk.spi.SpiSerialization
import akka.runtime.sdk.spi.SpiSerialization.Deserialized
import com.google.protobuf.ByteString
import com.google.protobuf.any.{ Any => ScalaPbAny }
-import io.grpc.Status
import io.opentelemetry.api.trace.Span
import io.opentelemetry.api.trace.Tracer
import org.slf4j.LoggerFactory
@@ -158,8 +157,7 @@ private[impl] final class EventSourcedEntityImpl[S, E, ES <: EventSourcedEntity[
def replyOrError(updatedState: SpiEventSourcedEntity.State): (Option[ScalaPbAny], Option[SpiEntity.Error]) = {
commandEffect.secondaryEffect(updatedState) match {
case ErrorReplyImpl(description, status) =>
- val errorCode = status.map(_.value).getOrElse(Status.Code.UNKNOWN.value)
- (None, Some(new SpiEntity.Error(description, errorCode)))
+ (None, Some(new SpiEntity.Error(description)))
case MessageReplyImpl(message, _) =>
// FIXME metadata?
// FIXME is this encoding correct?
@@ -228,7 +226,7 @@ private[impl] final class EventSourcedEntityImpl[S, E, ES <: EventSourcedEntity[
events = Vector.empty,
updatedState = state,
reply = None,
- error = Some(new SpiEntity.Error(msg, Status.Code.INVALID_ARGUMENT.value)),
+ error = Some(new SpiEntity.Error(msg)),
delete = None))
case e: EntityException =>
throw e
@@ -286,7 +284,9 @@ private[impl] final class EventSourcedEntityImpl[S, E, ES <: EventSourcedEntity[
override def toProto(obj: Deserialized): ScalaPbAny =
ScalaPbAny.fromJavaProto(messageCodec.encodeJava(obj))
- override def fromProto(pb: ScalaPbAny): Deserialized =
- messageCodec.decodeMessage(pb).asInstanceOf[Deserialized]
+ override def fromProto[T](pb: ScalaPbAny, clz: Class[T]): T = {
+ // FIXME: use BytesPayload from Johan's PR
+ messageCodec.decodeMessage(clz, akka.util.ByteString.fromArrayUnsafe(pb.value.toByteArray))
+ }
}
}
diff --git a/project/Dependencies.scala b/project/Dependencies.scala
index 09c328f1f..70d1b43b3 100644
--- a/project/Dependencies.scala
+++ b/project/Dependencies.scala
@@ -8,7 +8,7 @@ object Dependencies {
val ProtocolVersionMinor = 1
val RuntimeImage = "gcr.io/kalix-public/kalix-runtime"
// Remember to bump kalix-runtime.version in akka-javasdk-maven/akka-javasdk-parent if bumping this
- val RuntimeVersion = sys.props.getOrElse("kalix-runtime.version", "1.2.2-7-3e32f0a1-SNAPSHOT")
+ val RuntimeVersion = sys.props.getOrElse("kalix-runtime.version", "1.2.2-25-7b7fa85e-SNAPSHOT")
}
// NOTE: embedded SDK should have the AkkaVersion aligned, when updating RuntimeVersion, make sure to check
// if AkkaVersion and AkkaHttpVersion are aligned