public Auction(IAuctionStatusFactory auctionStatusFactory, IRoundAuctionStatusFactory roundAuctionStatusFactory, AuctionStatusTypeEnum initialAuctionStatus) { Status = auctionStatusFactory.Make(initialAuctionStatus, this); RoundAuctionsStatus = roundAuctionStatusFactory.Make(RoundAuctionStatusTypeEnum.HasNotRound, this); }
public StatusAuction <Auction> Make(AuctionStatusTypeEnum type, Auction auction) { switch (type) { case AuctionStatusTypeEnum.New: return(new StatusAuctionNew(auction)); case AuctionStatusTypeEnum.Draft: return(new StatusAuctionDraft(auction)); case AuctionStatusTypeEnum.Close: return(new StatusAuctionClose(auction)); } return(new StatusAuctionNew(auction)); }