/// <summary> /// This consumer is prepared to handle sessions. /// Can handle our sql data access and (after promotion) the basic file data access /// </summary> public void Consume1(SessionedDataAccess sessionedDataAccess) { sessionedDataAccess.Session.OpenSession(); Console.WriteLine( sessionedDataAccess.DataAccess.GetData() ); sessionedDataAccess.DataAccess.SetData("data"); sessionedDataAccess.Session.CloseSession(); sessionedDataAccess.Disposable.Dispose(); }
/// <summary> /// allows to use a plain data access as a sessioned data access by providing no-op ISession and IDisposable implementations /// </summary> public static SessionedDataAccess Promote(this PlainDataAccess self) { return(SessionedDataAccess.Create(dataAccess: self)); }
public static SessionedDataAccess Create() { return(SessionedDataAccess.Create(new SQLDataAccess())); }