Skip to content

Commit 3984b20

Browse files
stephanosclaude
andcommitted
Add standalone Nexus operation API boilerplate
Register all 8 RPCs (Describe, List, Start, Poll, Count, Cancel, Terminate, Delete) with stub implementations returning Unimplemented. Add FrontendHandler interface and wire it into the frontend service. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent e80cd83 commit 3984b20

17 files changed

Lines changed: 668 additions & 3 deletions

File tree

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package nexusoperation
2+
3+
import (
4+
"go.temporal.io/server/common/log"
5+
"go.temporal.io/server/common/namespace"
6+
)
7+
8+
// FrontendHandler provides the frontend-facing API for standalone Nexus operations.
9+
type FrontendHandler interface{}
10+
11+
type frontendHandler struct {
12+
config *Config
13+
logger log.Logger
14+
namespaceRegistry namespace.Registry
15+
}
16+
17+
func NewFrontendHandler(
18+
config *Config,
19+
logger log.Logger,
20+
namespaceRegistry namespace.Registry,
21+
) FrontendHandler {
22+
return &frontendHandler{
23+
config: config,
24+
logger: logger,
25+
namespaceRegistry: namespaceRegistry,
26+
}
27+
}

chasm/lib/nexusoperation/fx.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ var Module = fx.Module(
1919
fx.Invoke(register),
2020
)
2121

22+
var FrontendModule = fx.Module(
23+
"chasm.lib.nexusoperations.frontend",
24+
fx.Provide(NewFrontendHandler),
25+
)
26+
2227
func register(
2328
registry *chasm.Registry,
2429
library *Library,

client/frontend/client_gen.go

Lines changed: 80 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/frontend/metric_client_gen.go

Lines changed: 112 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)