mirror of
https://github.com/zitadel/zitadel
synced 2024-11-23 19:19:19 +00:00
56 lines
1.7 KiB
Go
56 lines
1.7 KiB
Go
package query
|
|
|
|
import (
|
|
"github.com/caos/zitadel/internal/eventstore"
|
|
"github.com/caos/zitadel/internal/repository/iam"
|
|
)
|
|
|
|
type IAMIDPConfigReadModel struct {
|
|
IDPConfigReadModel
|
|
|
|
iamID string
|
|
configID string
|
|
}
|
|
|
|
func NewIAMIDPConfigReadModel(iamID, configID string) *IAMIDPConfigReadModel {
|
|
return &IAMIDPConfigReadModel{
|
|
iamID: iamID,
|
|
configID: configID,
|
|
}
|
|
}
|
|
|
|
func (rm *IAMIDPConfigReadModel) AppendEvents(events ...eventstore.Event) {
|
|
for _, event := range events {
|
|
switch e := event.(type) {
|
|
case *iam.IDPConfigAddedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.IDPConfigAddedEvent)
|
|
case *iam.IDPConfigChangedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.IDPConfigChangedEvent)
|
|
case *iam.IDPConfigDeactivatedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.IDPConfigDeactivatedEvent)
|
|
case *iam.IDPConfigReactivatedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.IDPConfigReactivatedEvent)
|
|
case *iam.IDPConfigRemovedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.IDPConfigRemovedEvent)
|
|
case *iam.IDPOIDCConfigAddedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.OIDCConfigAddedEvent)
|
|
case *iam.IDPOIDCConfigChangedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.OIDCConfigChangedEvent)
|
|
case *iam.IDPJWTConfigAddedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.JWTConfigAddedEvent)
|
|
case *iam.IDPJWTConfigChangedEvent:
|
|
rm.IDPConfigReadModel.AppendEvents(&e.JWTConfigChangedEvent)
|
|
}
|
|
}
|
|
}
|
|
|
|
func (rm *IAMIDPConfigReadModel) Query() *eventstore.SearchQueryBuilder {
|
|
return eventstore.NewSearchQueryBuilder(eventstore.ColumnsEvent).
|
|
AddQuery().
|
|
AggregateTypes(iam.AggregateType).
|
|
AggregateIDs(rm.iamID).
|
|
EventData(map[string]interface{}{
|
|
"idpConfigId": rm.configID,
|
|
}).Builder()
|
|
}
|