mirror of
https://github.com/hanzoai/tasks.git
synced 2026-11-02 12:22:18 +00:00
## What changed Replaced one `WithFxOptionsForService` with fault injection. ## Why We want to eliminate `WithFxOptionsForService` as it is blocking us from migrating away from the `onebox.go` approach (which duplicates the fx setup) since we don't want to expose an equivalent method in `temporal/fx.go`.
60 lines
1.9 KiB
Go
60 lines
1.9 KiB
Go
// Code generated by gowrap. DO NOT EDIT.
|
|
// template: gowrap_template
|
|
// gowrap: http://github.com/hexdigest/gowrap
|
|
|
|
package faultinjection
|
|
|
|
//go:generate gowrap gen -p go.temporal.io/server/common/persistence -i ShardStore -t gowrap_template -o shard_store_gen.go -l ""
|
|
|
|
import (
|
|
"context"
|
|
|
|
_sourcePersistence "go.temporal.io/server/common/persistence"
|
|
)
|
|
|
|
type (
|
|
// faultInjectionShardStore implements ShardStore interface with fault injection.
|
|
faultInjectionShardStore struct {
|
|
_sourcePersistence.ShardStore
|
|
generator faultGenerator
|
|
}
|
|
)
|
|
|
|
// newFaultInjectionShardStore returns faultInjectionShardStore.
|
|
func newFaultInjectionShardStore(
|
|
baseStore _sourcePersistence.ShardStore,
|
|
generator faultGenerator,
|
|
) *faultInjectionShardStore {
|
|
return &faultInjectionShardStore{
|
|
ShardStore: baseStore,
|
|
generator: generator,
|
|
}
|
|
}
|
|
|
|
// AssertShardOwnership wraps ShardStore.AssertShardOwnership.
|
|
func (d faultInjectionShardStore) AssertShardOwnership(ctx context.Context, request *_sourcePersistence.AssertShardOwnershipRequest) (err error) {
|
|
err = d.generator.generate("AssertShardOwnership", request).inject(func() error {
|
|
err = d.ShardStore.AssertShardOwnership(ctx, request)
|
|
return err
|
|
})
|
|
return
|
|
}
|
|
|
|
// GetOrCreateShard wraps ShardStore.GetOrCreateShard.
|
|
func (d faultInjectionShardStore) GetOrCreateShard(ctx context.Context, request *_sourcePersistence.InternalGetOrCreateShardRequest) (ip1 *_sourcePersistence.InternalGetOrCreateShardResponse, err error) {
|
|
err = d.generator.generate("GetOrCreateShard", request).inject(func() error {
|
|
ip1, err = d.ShardStore.GetOrCreateShard(ctx, request)
|
|
return err
|
|
})
|
|
return
|
|
}
|
|
|
|
// UpdateShard wraps ShardStore.UpdateShard.
|
|
func (d faultInjectionShardStore) UpdateShard(ctx context.Context, request *_sourcePersistence.InternalUpdateShardRequest) (err error) {
|
|
err = d.generator.generate("UpdateShard", request).inject(func() error {
|
|
err = d.ShardStore.UpdateShard(ctx, request)
|
|
return err
|
|
})
|
|
return
|
|
}
|