public void RetrieveTest() { var dataAccessor = Sys.ActorOf(DataAccessActor.Props(new List <IActorRef> { TestActor }), "data"); var json = File.ReadAllText("json/tradeOfferTransaction.json"); var transaction = JsonConvert.DeserializeObject <TradeOfferTransaction>(json); transaction = new TradeOfferTransaction(transaction.TradeOfferId); var ob = dataAccessor.Ask(new DataAccessMessage <TradeOfferTransaction>(transaction, DataAccessActionType.Retrieve)).Result; }
public void UpdateTest() { var dataAccessor = Sys.ActorOf(DataAccessActor.Props(new List <IActorRef> { TestActor }), "data"); var json = File.ReadAllText("json/tradeOfferTransaction.json"); var transaction = JsonConvert.DeserializeObject <TradeOfferTransaction>(json); dataAccessor.Tell(new DataAccessMessage <TradeOfferTransaction>(transaction, DataAccessActionType.UpdateTradeOffer)); ExpectMsg <DataAccessMessage <TradeOfferTransaction> >(TimeSpan.FromSeconds(50)); }
public void Init() { var config = LoadConfig(); if (config == null) { Log.Error("No config json, program exit"); return; } var disableJsonWarning = ConfigurationFactory.ParseString(@" akka { suppress-json-serializer-warning = on }"); _system = ActorSystem.Create("TreasureHunter", disableJsonWarning); var actors = new List <IActorRef>(); var valuationActor = _system.ActorOf(ValuationActor.Props(), "Valuation"); var commander = _system.ActorOf(CommandActor.Props(actors), "Commander"); var dataAccessActor = _system.ActorOf(DataAccessActor.Props(actors), "DataAccess"); var paymentActor = _system.ActorOf(PaymentActor.Props(dataAccessActor, actors), "Payment"); var routees = config.Bots.Select(bot => _system.ActorOf(BotActor.Props(bot, config.ApiKey, (x, y) => new CustomUserHandler(x, y), valuationActor, commander, dataAccessActor), bot.DisplayName)).ToList(); actors.AddRange(routees); actors.Add(paymentActor); actors.Add(valuationActor); do { Console.Write("botmgr > "); string inputText = Console.ReadLine(); if (!string.IsNullOrEmpty(inputText)) { commander.Tell(new UserCommandMessage() { Text = inputText }); } } while (true); }