Skip to content

Commit

Permalink
Use a value-based key for the lookup dictionary
Browse files Browse the repository at this point in the history
  • Loading branch information
SeanFeldman authored and danielmarbach committed Feb 26, 2021
1 parent b7ae858 commit 596d311
Showing 1 changed file with 5 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public async Task Save(IContainSagaData sagaData, SagaCorrelationProperty correl
sagaDataEntityToSave.Table = table;

var meta = context.GetOrCreate<SagaInstanceMetadata>();
meta.Entities[sagaData] = sagaDataEntityToSave;
meta.Entities[sagaData.Id] = sagaDataEntityToSave;

storageSession.Add(new SagaSave(partitionKey, sagaDataEntityToSave));
}
Expand All @@ -63,7 +63,7 @@ public Task Update(IContainSagaData sagaData, SynchronizedStorageSession session
var partitionKey = GetPartitionKey(context, sagaData.Id);

var meta = context.GetOrCreate<SagaInstanceMetadata>();
var sagaDataEntityToUpdate = meta.Entities[sagaData];
var sagaDataEntityToUpdate = meta.Entities[sagaData.Id];

var sagaAsDictionaryTableEntity = DictionaryTableEntityExtensions.ToDictionaryTableEntity(sagaData, sagaDataEntityToUpdate, jsonSerializer, writerCreator);

Expand Down Expand Up @@ -99,7 +99,7 @@ public async Task<TSagaData> Get<TSagaData>(Guid sagaId, SynchronizedStorageSess

var sagaData = DictionaryTableEntityExtensions.ToSagaData<TSagaData>(readSagaDataEntity, jsonSerializer, readerCreator);
var meta = context.GetOrCreate<SagaInstanceMetadata>();
meta.Entities[sagaData] = readSagaDataEntity;
meta.Entities[sagaData.Id] = readSagaDataEntity;
return sagaData;
}

Expand Down Expand Up @@ -181,7 +181,7 @@ public Task Complete(IContainSagaData sagaData, SynchronizedStorageSession sessi
{
var storageSession = (StorageSession)session;
var meta = context.GetOrCreate<SagaInstanceMetadata>();
var sagaDataEntityToDelete = meta.Entities[sagaData];
var sagaDataEntityToDelete = meta.Entities[sagaData.Id];
var partitionKey = GetPartitionKey(context, sagaData.Id);

storageSession.Add(new SagaDelete(partitionKey, sagaDataEntityToDelete));
Expand Down Expand Up @@ -228,7 +228,7 @@ static TableEntityPartitionKey GetPartitionKey(ContextBag context, Guid sagaData
/// </summary>
class SagaInstanceMetadata
{
public Dictionary<object, DictionaryTableEntity> Entities { get; } = new Dictionary<object, DictionaryTableEntity>();
public Dictionary<Guid, DictionaryTableEntity> Entities { get; } = new Dictionary<Guid, DictionaryTableEntity>();
}
}

Expand Down

0 comments on commit 596d311

Please sign in to comment.