Use with Cats Effect
Setup
You will need these dependencies:
- sbt
libraryDependencies += "uk.gov.nationalarchives" % "da-eventbridge-client_2.13" % "0.1.123"
- Maven
<dependencies> <dependency> <groupId>uk.gov.nationalarchives</groupId> <artifactId>da-eventbridge-client_2.13</artifactId> <version>0.1.123</version> </dependency> </dependencies>
- Gradle
dependencies { implementation "uk.gov.nationalarchives:da-eventbridge-client_2.13:0.1.123" }
Examples
Publish an event message
import cats.effect._
import uk.gov.nationalarchives.DAEventBridgeClient
import software.amazon.awssdk.services.eventbridge.model.PutEventsRequest
import io.circe.generic.auto._ // Used to provide Encoder[T] but you can provide your own
enum DetailType:
case TestMessage, TestDevMessage
def publishToEventBridge(): IO[PutEventsResponse] = {
val eventBridgeClient = DAEventBridgeClient[IO]()
case class Detail(value: String)
eventBridgeClient.publishEventToEventBridge[Detail]("sourceId", TestMessage, Detail("value"))
}