mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 21:37:32 +00:00
feat: query side for executions and targets for actions v2 (#7524)
* feat: add projections and query side to executions and targets * feat: add list and get endpoints for targets * feat: add integration tests for query endpoints target and execution * fix: linting * fix: linting * fix: review changes, renames and corrections * fix: review changes, renames and corrections * fix: review changes, renames and corrections * fix: review changes, renames and corrections * fix: review changes, renames and corrections * fix: review changes, renames and corrections * fix: remove position from list details
This commit is contained in:
@@ -3,7 +3,6 @@ package execution
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/zitadel/zitadel/internal/domain"
|
||||
"github.com/zitadel/zitadel/internal/eventstore"
|
||||
)
|
||||
|
||||
@@ -16,9 +15,8 @@ const (
|
||||
type SetEvent struct {
|
||||
*eventstore.BaseEvent `json:"-"`
|
||||
|
||||
ExecutionType domain.ExecutionType `json:"executionType"`
|
||||
Targets []string `json:"targets"`
|
||||
Includes []string `json:"includes"`
|
||||
Targets []string `json:"targets"`
|
||||
Includes []string `json:"includes"`
|
||||
}
|
||||
|
||||
func (e *SetEvent) SetBaseEvent(b *eventstore.BaseEvent) {
|
||||
|
@@ -3,7 +3,7 @@ package target
|
||||
import "github.com/zitadel/zitadel/internal/eventstore"
|
||||
|
||||
func init() {
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, AddedEventType, AddedEventMapper)
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, ChangedEventType, ChangedEventMapper)
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, RemovedEventType, RemovedEventMapper)
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, AddedEventType, eventstore.GenericEventMapper[AddedEvent])
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, ChangedEventType, eventstore.GenericEventMapper[ChangedEvent])
|
||||
eventstore.RegisterFilterEventMapper(AggregateType, RemovedEventType, eventstore.GenericEventMapper[RemovedEvent])
|
||||
}
|
||||
|
@@ -6,7 +6,6 @@ import (
|
||||
|
||||
"github.com/zitadel/zitadel/internal/domain"
|
||||
"github.com/zitadel/zitadel/internal/eventstore"
|
||||
"github.com/zitadel/zitadel/internal/zerrors"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -17,7 +16,7 @@ const (
|
||||
)
|
||||
|
||||
type AddedEvent struct {
|
||||
*eventstore.BaseEvent `json:"-"`
|
||||
eventstore.BaseEvent `json:"-"`
|
||||
|
||||
Name string `json:"name"`
|
||||
TargetType domain.TargetType `json:"targetType"`
|
||||
@@ -28,7 +27,7 @@ type AddedEvent struct {
|
||||
}
|
||||
|
||||
func (e *AddedEvent) SetBaseEvent(b *eventstore.BaseEvent) {
|
||||
e.BaseEvent = b
|
||||
e.BaseEvent = *b
|
||||
}
|
||||
|
||||
func (e *AddedEvent) Payload() any {
|
||||
@@ -50,26 +49,14 @@ func NewAddedEvent(
|
||||
interruptOnError bool,
|
||||
) *AddedEvent {
|
||||
return &AddedEvent{
|
||||
eventstore.NewBaseEventForPush(
|
||||
*eventstore.NewBaseEventForPush(
|
||||
ctx, aggregate, AddedEventType,
|
||||
),
|
||||
name, targetType, url, timeout, async, interruptOnError}
|
||||
}
|
||||
|
||||
func AddedEventMapper(event eventstore.Event) (eventstore.Event, error) {
|
||||
added := &AddedEvent{
|
||||
BaseEvent: eventstore.BaseEventFromRepo(event),
|
||||
}
|
||||
err := event.Unmarshal(added)
|
||||
if err != nil {
|
||||
return nil, zerrors.ThrowInternal(err, "TARGET-fx8f8yfbn1", "unable to unmarshal target added")
|
||||
}
|
||||
|
||||
return added, nil
|
||||
}
|
||||
|
||||
type ChangedEvent struct {
|
||||
*eventstore.BaseEvent `json:"-"`
|
||||
eventstore.BaseEvent `json:"-"`
|
||||
|
||||
Name *string `json:"name,omitempty"`
|
||||
TargetType *domain.TargetType `json:"targetType,omitempty"`
|
||||
@@ -81,6 +68,10 @@ type ChangedEvent struct {
|
||||
oldName string
|
||||
}
|
||||
|
||||
func (e *ChangedEvent) SetBaseEvent(b *eventstore.BaseEvent) {
|
||||
e.BaseEvent = *b
|
||||
}
|
||||
|
||||
func (e *ChangedEvent) Payload() interface{} {
|
||||
return e
|
||||
}
|
||||
@@ -101,7 +92,7 @@ func NewChangedEvent(
|
||||
changes []Changes,
|
||||
) *ChangedEvent {
|
||||
changeEvent := &ChangedEvent{
|
||||
BaseEvent: eventstore.NewBaseEventForPush(
|
||||
BaseEvent: *eventstore.NewBaseEventForPush(
|
||||
ctx,
|
||||
aggregate,
|
||||
ChangedEventType,
|
||||
@@ -152,26 +143,14 @@ func ChangeInterruptOnError(interruptOnError bool) func(event *ChangedEvent) {
|
||||
}
|
||||
}
|
||||
|
||||
func ChangedEventMapper(event eventstore.Event) (eventstore.Event, error) {
|
||||
changed := &ChangedEvent{
|
||||
BaseEvent: eventstore.BaseEventFromRepo(event),
|
||||
}
|
||||
err := event.Unmarshal(changed)
|
||||
if err != nil {
|
||||
return nil, zerrors.ThrowInternal(err, "TARGET-w6402p4ek7", "unable to unmarshal target changed")
|
||||
}
|
||||
|
||||
return changed, nil
|
||||
}
|
||||
|
||||
type RemovedEvent struct {
|
||||
*eventstore.BaseEvent `json:"-"`
|
||||
eventstore.BaseEvent `json:"-"`
|
||||
|
||||
name string
|
||||
}
|
||||
|
||||
func (e *RemovedEvent) SetBaseEvent(b *eventstore.BaseEvent) {
|
||||
e.BaseEvent = b
|
||||
e.BaseEvent = *b
|
||||
}
|
||||
|
||||
func (e *RemovedEvent) Payload() any {
|
||||
@@ -183,17 +162,5 @@ func (e *RemovedEvent) UniqueConstraints() []*eventstore.UniqueConstraint {
|
||||
}
|
||||
|
||||
func NewRemovedEvent(ctx context.Context, aggregate *eventstore.Aggregate, name string) *RemovedEvent {
|
||||
return &RemovedEvent{eventstore.NewBaseEventForPush(ctx, aggregate, RemovedEventType), name}
|
||||
}
|
||||
|
||||
func RemovedEventMapper(event eventstore.Event) (eventstore.Event, error) {
|
||||
removed := &RemovedEvent{
|
||||
BaseEvent: eventstore.BaseEventFromRepo(event),
|
||||
}
|
||||
err := event.Unmarshal(removed)
|
||||
if err != nil {
|
||||
return nil, zerrors.ThrowInternal(err, "TARGET-0kuc12c7bc", "unable to unmarshal target removed")
|
||||
}
|
||||
|
||||
return removed, nil
|
||||
return &RemovedEvent{*eventstore.NewBaseEventForPush(ctx, aggregate, RemovedEventType), name}
|
||||
}
|
||||
|
Reference in New Issue
Block a user