Skip to content

Commit

Permalink
fixes property events (#697)
Browse files Browse the repository at this point in the history
  • Loading branch information
PaulKalho authored Mar 18, 2024
1 parent 8c23c1a commit 58c8600
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 36 deletions.
24 changes: 12 additions & 12 deletions services/property-svc/internal/property/aggregate/actions.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,23 @@ import (
func (a *PropertyAggregate) CreateProperty(ctx context.Context, subjectType pb.SubjectType, fieldType pb.FieldType, name string) error {
id := a.GetID()

event, err := propertyEventsV1.NewPropertyCreatedEvent(a, id, subjectType, fieldType, name)
event, err := propertyEventsV1.NewPropertyCreatedEvent(ctx, a, id, subjectType, fieldType, name)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) CreateFieldTypeData(ctx context.Context, fieldTypeData models.FieldTypeData) error {
event, err := propertyEventsV1.NewFieldTypeDataCreatedEvent(a, fieldTypeData)
event, err := propertyEventsV1.NewFieldTypeDataCreatedEvent(ctx, a, fieldTypeData)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) UpdateDescription(ctx context.Context, newDescription string) error {
event, err := propertyEventsV1.NewPropertyDescriptionUpdatedEvent(a, newDescription)
event, err := propertyEventsV1.NewPropertyDescriptionUpdatedEvent(ctx, a, newDescription)
if err != nil {
return err
}
Expand All @@ -39,66 +39,66 @@ func (a *PropertyAggregate) UpdateSetID(ctx context.Context, newSetID string) er
if len(newSetID) > 0 && err != nil {
return err
}
event, err := propertyEventsV1.NewPropertySetIDUpdatedEvent(a, id)
event, err := propertyEventsV1.NewPropertySetIDUpdatedEvent(ctx, a, id)
if err != nil {
return err
}
return a.Apply(event)
}
func (a *PropertyAggregate) UpdateSubjectType(ctx context.Context, subjectType pb.SubjectType) error {
event, err := propertyEventsV1.NewPropertySubjectTypeUpdatedEvent(a, subjectType)
event, err := propertyEventsV1.NewPropertySubjectTypeUpdatedEvent(ctx, a, subjectType)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) UpdateFieldType(ctx context.Context, fieldType pb.FieldType) error {
event, err := propertyEventsV1.NewPropertyFieldTypeUpdatedEvent(a, fieldType)
event, err := propertyEventsV1.NewPropertyFieldTypeUpdatedEvent(ctx, a, fieldType)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) UpdateName(ctx context.Context, name string) error {
event, err := propertyEventsV1.NewPropertyNameUpdatedEvent(a, name)
event, err := propertyEventsV1.NewPropertyNameUpdatedEvent(ctx, a, name)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) UpdateAllowFreetext(ctx context.Context, allowFreetext bool) error {
event, err := propertyEventsV1.NewFieldTypeDataAllowFreetextUpdatedEvent(a, allowFreetext)
event, err := propertyEventsV1.NewFieldTypeDataAllowFreetextUpdatedEvent(ctx, a, allowFreetext)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) FieldTypeDataUpsertOptions(ctx context.Context, upsertOptions []models.UpdateSelectOption) error {
event, err := propertyEventsV1.NewFieldTypeDataSelectOptionsUpsertedEvent(a, upsertOptions)
event, err := propertyEventsV1.NewFieldTypeDataSelectOptionsUpsertedEvent(ctx, a, upsertOptions)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) FieldTypeDataRemoveOptions(ctx context.Context, removeOptions []string) error {
event, err := propertyEventsV1.NewFieldTypeDataSelectOptionsRemovedEvent(a, removeOptions)
event, err := propertyEventsV1.NewFieldTypeDataSelectOptionsRemovedEvent(ctx, a, removeOptions)
if err != nil {
return err
}
return a.Apply(event)
}

func (a *PropertyAggregate) ArchiveProperty(ctx context.Context) error {
event, _ := propertyEventsV1.NewPropertyArchivedEvent(a)
event, _ := propertyEventsV1.NewPropertyArchivedEvent(ctx, a)
return a.Apply(event)
}

func (a *PropertyAggregate) RetrieveProperty(ctx context.Context) error {
event, _ := propertyEventsV1.NewPropertyRetrievedEvent(a)
event, _ := propertyEventsV1.NewPropertyRetrievedEvent(ctx, a)
return a.Apply(event)
}
49 changes: 25 additions & 24 deletions services/property-svc/internal/property/events/v1/events.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package v1

import (
"context"
pb "gen/proto/services/property_svc/v1"
"github.com/google/uuid"
"hwes"
Expand Down Expand Up @@ -31,123 +32,123 @@ type PropertyCreatedEvent struct {
Name string `json:"name"`
}

func NewPropertyCreatedEvent(a hwes.Aggregate, id uuid.UUID, subjectType pb.SubjectType, fieldType pb.FieldType, name string) (hwes.Event, error) {
func NewPropertyCreatedEvent(ctx context.Context, a hwes.Aggregate, id uuid.UUID, subjectType pb.SubjectType, fieldType pb.FieldType, name string) (hwes.Event, error) {
payload := PropertyCreatedEvent{
ID: id.String(),
SubjectType: subjectType.String(),
FieldType: fieldType.String(),
Name: name,
}
return hwes.NewEvent(a, PropertyCreated, hwes.WithData(payload))
return hwes.NewEvent(a, PropertyCreated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type FieldTypeDataCreatedEvent struct {
FieldTypeData models.FieldTypeData
}

func NewFieldTypeDataCreatedEvent(a hwes.Aggregate, fieldTypeData models.FieldTypeData) (hwes.Event, error) {
func NewFieldTypeDataCreatedEvent(ctx context.Context, a hwes.Aggregate, fieldTypeData models.FieldTypeData) (hwes.Event, error) {
payload := FieldTypeDataCreatedEvent{
FieldTypeData: fieldTypeData,
}
return hwes.NewEventWithData(a, PropertyFieldTypeDataCreated, payload)
return hwes.NewEvent(a, PropertyFieldTypeDataCreated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type PropertyDescriptionUpdatedEvent struct {
Description string `json:"description"`
}

func NewPropertyDescriptionUpdatedEvent(a hwes.Aggregate, description string) (hwes.Event, error) {
func NewPropertyDescriptionUpdatedEvent(ctx context.Context, a hwes.Aggregate, description string) (hwes.Event, error) {
payload := PropertyDescriptionUpdatedEvent{
Description: description,
}
return hwes.NewEvent(a, PropertyDescriptionUpdated, hwes.WithData(payload))
return hwes.NewEvent(a, PropertyDescriptionUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type PropertySetIDUpdatedEvent struct {
SetID string `json:"set_id"`
}

func NewPropertySetIDUpdatedEvent(a hwes.Aggregate, setID uuid.NullUUID) (hwes.Event, error) {
func NewPropertySetIDUpdatedEvent(ctx context.Context, a hwes.Aggregate, setID uuid.NullUUID) (hwes.Event, error) {
sids := ""
if setID.Valid {
sids = setID.UUID.String()
}
payload := PropertySetIDUpdatedEvent{
SetID: sids,
}
return hwes.NewEvent(a, PropertySetIDUpdated, hwes.WithData(payload))
return hwes.NewEvent(a, PropertySetIDUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type PropertySubjectTypeUpdatedEvent struct {
SubjectType string `json:"subject_type"`
}

func NewPropertySubjectTypeUpdatedEvent(a hwes.Aggregate, subjectType pb.SubjectType) (hwes.Event, error) {
func NewPropertySubjectTypeUpdatedEvent(ctx context.Context, a hwes.Aggregate, subjectType pb.SubjectType) (hwes.Event, error) {
payload := PropertySubjectTypeUpdatedEvent{
SubjectType: subjectType.String(),
}
return hwes.NewEventWithData(a, PropertySubjectTypeUpdated, payload)
return hwes.NewEvent(a, PropertySubjectTypeUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type PropertyFieldTypeUpdatedEvent struct {
FieldType string `json:"field_type"`
}

func NewPropertyFieldTypeUpdatedEvent(a hwes.Aggregate, fieldType pb.FieldType) (hwes.Event, error) {
func NewPropertyFieldTypeUpdatedEvent(ctx context.Context, a hwes.Aggregate, fieldType pb.FieldType) (hwes.Event, error) {
payload := PropertyFieldTypeUpdatedEvent{
FieldType: fieldType.String(),
}
return hwes.NewEventWithData(a, PropertyFieldTypeUpdated, payload)
return hwes.NewEvent(a, PropertyFieldTypeUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type PropertyNameUpdatedEvent struct {
Name string `json:"name"`
}

func NewPropertyNameUpdatedEvent(a hwes.Aggregate, name string) (hwes.Event, error) {
func NewPropertyNameUpdatedEvent(ctx context.Context, a hwes.Aggregate, name string) (hwes.Event, error) {
payload := PropertyNameUpdatedEvent{
Name: name,
}
return hwes.NewEventWithData(a, PropertyNameUpdated, payload)
return hwes.NewEvent(a, PropertyNameUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type FieldTypeDataAllowFreetextUpdatedEvent struct {
NewAllowFreetext bool `json:"new_allow_freetext"`
}

func NewFieldTypeDataAllowFreetextUpdatedEvent(a hwes.Aggregate, newAllowFreetext bool) (hwes.Event, error) {
func NewFieldTypeDataAllowFreetextUpdatedEvent(ctx context.Context, a hwes.Aggregate, newAllowFreetext bool) (hwes.Event, error) {
payload := FieldTypeDataAllowFreetextUpdatedEvent{
NewAllowFreetext: newAllowFreetext,
}
return hwes.NewEventWithData(a, PropertyFieldTypeDataAllowFreetextUpdated, payload)
return hwes.NewEvent(a, PropertyFieldTypeDataAllowFreetextUpdated, hwes.WithContext(ctx), hwes.WithData(payload))
}

type FieldTypeDataSelectOptionsRemovedEvent struct {
RemovedSelectOptions []string `json:"removed_select_options"`
}

func NewFieldTypeDataSelectOptionsRemovedEvent(a hwes.Aggregate, toBeRemoved []string) (hwes.Event, error) {
func NewFieldTypeDataSelectOptionsRemovedEvent(ctx context.Context, a hwes.Aggregate, toBeRemoved []string) (hwes.Event, error) {
payload := FieldTypeDataSelectOptionsRemovedEvent{
RemovedSelectOptions: toBeRemoved,
}
return hwes.NewEventWithData(a, PropertyFieldTypeDataSelectOptionsRemoved, payload)
return hwes.NewEvent(a, PropertyFieldTypeDataSelectOptionsRemoved, hwes.WithContext(ctx), hwes.WithData(payload))
}

type FieldTypeDataSelectOptionsUpsertedEvent struct {
UpsertedSelectOptions []models.UpdateSelectOption `json:"UpsertedSelectOptions"`
}

func NewFieldTypeDataSelectOptionsUpsertedEvent(a hwes.Aggregate, upsertOptions []models.UpdateSelectOption) (hwes.Event, error) {
func NewFieldTypeDataSelectOptionsUpsertedEvent(ctx context.Context, a hwes.Aggregate, upsertOptions []models.UpdateSelectOption) (hwes.Event, error) {
payload := FieldTypeDataSelectOptionsUpsertedEvent{
UpsertedSelectOptions: upsertOptions,
}
return hwes.NewEventWithData(a, PropertyFieldTypeDataSelectOptionsUpserted, payload)
return hwes.NewEvent(a, PropertyFieldTypeDataSelectOptionsUpserted, hwes.WithContext(ctx), hwes.WithData(payload))
}

func NewPropertyArchivedEvent(a hwes.Aggregate) (hwes.Event, error) {
return hwes.NewEvent(a, PropertyArchived), nil
func NewPropertyArchivedEvent(ctx context.Context, a hwes.Aggregate) (hwes.Event, error) {
return hwes.NewEvent(a, PropertyArchived, hwes.WithContext(ctx))
}

func NewPropertyRetrievedEvent(a hwes.Aggregate) (hwes.Event, error) {
return hwes.NewEvent(a, PropertyRetrieved), nil
func NewPropertyRetrievedEvent(ctx context.Context, a hwes.Aggregate) (hwes.Event, error) {
return hwes.NewEvent(a, PropertyRetrieved, hwes.WithContext(ctx))
}

0 comments on commit 58c8600

Please sign in to comment.