Esempio n. 1
0
        public void Apply(StockPropertiesChangedEvent @event)
        {
            Version++;

            var newProperties = new StockProperties(
                @event.AsxCode,
                @event.Name,
                @event.Category);

            _Properties.Change(@event.ChangeDate, newProperties);
        }
Esempio n. 2
0
        public void ChangeProperties(Date changeDate, string newAsxCode, string newName, AssetCategory newAssetCategory)
        {
            if (!IsEffectiveAt(changeDate))
            {
                throw new EffectiveDateException(String.Format("Stock not active at {0}", changeDate));
            }

            var properties = Properties[changeDate];

            var @event = new StockPropertiesChangedEvent(Id, Version, changeDate, newAsxCode, newName, newAssetCategory);

            Apply(@event);
            _Events.Add(@event);
        }