Skip to main content

Getting Started with EAF Eventing SDK

Quick start guide for integrating the EAF Eventing SDK into your service.

📦 Installation

Add the dependency to your project:

dependencies {
implementation("com.axians.eaf:eaf-eventing-sdk:${eafVersion}")
}

⚙️ Configuration

Configure NATS connection in your application.yml:

eaf:
eventing:
nats-url: 'nats://localhost:4222'
cluster-id: 'eaf-cluster'
client-id: 'my-service'

🚀 Basic Usage

Publishing Events

@Component
class OrderEventPublisher(
private val eventPublisher: NatsEventPublisher
) {
suspend fun publishOrderCreated(order: Order) {
val event = OrderCreatedEvent(order.id, order.customerId)
eventPublisher.publish("orders.created", event)
}
}

Subscribing to Events

@Component
class OrderEventHandler {
@EventHandler("orders.created")
suspend fun handle(event: OrderCreatedEvent) {
// Handle the event
println("Order created: ${event.orderId}")
}
}

🔧 Next Steps


Get started with event-driven architecture using the EAF Eventing SDK.