public void ExtractCaptureFromRequest(string request, Action <string, Guid, Guid, string> onValueExtraction) { GreenLogger.Log("Extracting capture from request"); RequestBodyElement body = request.ToXDocument().GetInsureServeMessage().RequestBody; ProductLineCode code = ProductLineCode.Parse(body.BusinessTransaction.ProductLineCode.Value); State.ProductLines[code].ExtractCaptureFromRisk(body.PolMessage.InputPolData, onValueExtraction); }
public void ExtractMapFromRequest(string request) { GreenLogger.Log("Extract risk capture map from request"); RequestBodyElement body = request.ToXDocument().GetInsureServeMessage().RequestBody; ProductLineCode productLine = ProductLineCode.Parse(body.BusinessTransaction.ProductLineCode.Value); if (!State.ProductLines.ContainsKey(productLine)) { GreenLogger.Log("new risk product line mapped for {0}", productLine); Then(new NewRiskProductLineMapped(productLine)); } State.ProductLines[productLine].ExtractMapFromRisk(body.PolMessage.InputPolData); }
public ProductLineState(AggregateId id, ProductLineCode productLine) : base(id) { ProductLine = productLine; Sections = new Dictionary <string, Section>(); }
public void Apply(NewRiskProductLineMapped @event) { var productLine = ProductLineCode.Parse(@event.ProductLine); ProductLines[productLine] = new ProductLine(Id, productLine); }
public ProductLine(AggregateId id, ProductLineCode productLine) : base(new ProductLineState(id, productLine)) { }