/// <summary> /// Construct my default state. /// </summary> /// <param name="store">The instance of <see cref="IObjectStore"/></param> /// <param name="storeName">The name of the object store</param> /// <param name="queryObjectExpression">The <see cref="QueryExpression"/> used to retrieve a single instance</param> /// <param name="mapper">The persistent <see cref="StateObjectMapper"/> between Object type and persistent type</param> public Info(IObjectStore store, string storeName, QueryExpression queryObjectExpression, StateObjectMapper mapper) { Store = store; StoreName = storeName; QueryObjectExpression = queryObjectExpression; Mapper = mapper; StoreType = typeof(TState); }
public EmployeeEntityTest(ITestOutputHelper output) { var converter = new Converter(output); Console.SetOut(converter); _world = World.StartWithDefaults("test-object-entity"); var objectStore = _world.ActorFor <IObjectStore>(typeof(InMemoryObjectStoreActor <string>), new MockDispatcher()); var registry = new ObjectTypeRegistry(_world); // NOTE: The InMemoryObjectStoreActor implementation currently // does not use PersistentObjectMapper, and thus the no-op decl. var employeeInfo = new Info <EmployeeState>( objectStore, "HR-Database", MapQueryExpression.Using <IEmployee>("find", MapQueryExpression.Map("number", "number")), StateObjectMapper.With <IEmployee>(new object(), new object())); registry.Register(employeeInfo); }
public ObjectProcessTest(ITestOutputHelper output) { var converter = new Converter(output); Console.SetOut(converter); _world = World.StartWithDefaults("five-step-process-test"); var queue = new AsyncMessageQueue(null); _exchange = new LocalExchange(queue); var adapter = new ProcessMessageTextAdapter(); EntryAdapterProvider.Instance(_world).RegisterAdapter(adapter); var dispatcher = new MockDispatcher(); var objectStore = _world.ActorFor <IObjectStore>(() => new InMemoryObjectStoreActor <string>(dispatcher)); var objectTypeRegistry = new ObjectTypeRegistry(_world); var stepCountStateInfo = new Info <StepCountObjectState>( objectStore, nameof(StepCountObjectState), MapQueryExpression.Using <StepCountObjectState>("find", MapQueryExpression.Map("id", "id")), StateObjectMapper.With <StepCountObjectState>(new object(), new object())); objectTypeRegistry.Register(stepCountStateInfo); _exchangeSender = new LocalExchangeSender(queue); var processTypeRegistry = new ProcessTypeRegistry(_world); processTypeRegistry.Register(new ObjectProcessInfo <FiveStepEmittingObjectProcess, StepCountObjectState>(nameof(FiveStepEmittingObjectProcess), _exchange, objectTypeRegistry)); _exchangeReceivers = new ExchangeReceivers(); RegisterExchangeCoveys(); }
/// <inheritdoc /> public void RegisterMapper(StateObjectMapper mapper) { //InMemory store does not require mappers }