2021-01-04 14:52:13 +01:00
|
|
|
package query
|
|
|
|
|
|
|
|
import (
|
2021-02-23 15:13:04 +01:00
|
|
|
"github.com/caos/zitadel/internal/eventstore"
|
|
|
|
"github.com/caos/zitadel/internal/repository/iam"
|
2021-01-04 14:52:13 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
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.EventReader) {
|
|
|
|
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)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func (rm *IAMIDPConfigReadModel) Query() *eventstore.SearchQueryBuilder {
|
|
|
|
return eventstore.NewSearchQueryBuilder(eventstore.ColumnsEvent, iam.AggregateType).
|
|
|
|
AggregateIDs(rm.iamID).
|
|
|
|
EventData(map[string]interface{}{
|
|
|
|
"idpConfigId": rm.configID,
|
|
|
|
})
|
|
|
|
}
|