quickstarts/pub_sub/go/sdk/order-processor/app.go

44 lines
871 B
Go

package main
import (
"context"
"fmt"
"log"
"net/http"
"os"
"github.com/dapr/go-sdk/service/common"
daprd "github.com/dapr/go-sdk/service/http"
)
var sub = &common.Subscription{
PubsubName: "orderpubsub",
Topic: "orders",
Route: "/orders",
}
func main() {
appPort := os.Getenv("APP_PORT")
if appPort == "" {
appPort = "6005"
}
// Create the new server on appPort and add a topic listener
s := daprd.NewService(":" + appPort)
err := s.AddTopicEventHandler(sub, eventHandler)
if err != nil {
log.Fatalf("error adding topic subscription: %v", err)
}
// Start the server
err = s.Start()
if err != nil && err != http.ErrServerClosed {
log.Fatalf("error listening: %v", err)
}
}
func eventHandler(ctx context.Context, e *common.TopicEvent) (retry bool, err error) {
fmt.Println("Subscriber received:", e.Data)
return false, nil
}