mirror of
https://github.com/hanzoai/tasks.git
synced 2026-11-03 03:56:04 +00:00
Full module path rebrand from Temporal to Hanzo Tasks: - go.mod module: github.com/hanzoai/tasks - All internal Go imports updated (1906 files) - cmd/server renamed to cmd/tasksd - Binary name: tasksd (was temporal-server) - Docker images: hanzoai/tasks (was temporalio/server) - README rewritten with Hanzo Tasks branding - LLM.md created with integration notes - Makefile, goreleaser, CI workflows updated - go.temporal.io/sdk and go.temporal.io/api imports preserved (separate repos) Fork of Temporal.io (MIT license).
37 lines
1.1 KiB
Go
37 lines
1.1 KiB
Go
package tests
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/nexus-rpc/sdk-go/nexus"
|
|
"github.com/hanzoai/tasks/chasm"
|
|
)
|
|
|
|
var TestOperation = nexus.NewSyncOperation("TestOperation", func(ctx context.Context, input string, options nexus.StartOperationOptions) (string, error) {
|
|
return "Hello, " + input, nil
|
|
})
|
|
|
|
func NewTestServiceNexusService() *nexus.Service {
|
|
service := nexus.NewService("TestService")
|
|
service.MustRegister(TestOperation)
|
|
return service
|
|
}
|
|
|
|
type testOperationProcessor struct {
|
|
}
|
|
|
|
func (o testOperationProcessor) ProcessInput(ctx chasm.NexusOperationProcessorContext, input string) (*chasm.NexusOperationProcessorResult, error) {
|
|
return &chasm.NexusOperationProcessorResult{
|
|
RoutingKey: chasm.NexusOperationRoutingKeyExecution{
|
|
NamespaceID: ctx.Namespace.ID().String(),
|
|
BusinessID: input,
|
|
},
|
|
}, nil
|
|
}
|
|
|
|
func NewTestServiceNexusServiceProcessor() *chasm.NexusServiceProcessor {
|
|
sp := chasm.NewNexusServiceProcessor("TestService")
|
|
sp.MustRegisterOperation("TestOperation", chasm.NewRegisterableNexusOperationProcessor(testOperationProcessor{}))
|
|
return sp
|
|
}
|