C# ProgressBar design pattern

Posted by MadSeb on Stack Overflow See other posts from Stack Overflow or by MadSeb
Published on 2010-06-03T14:50:18Z Indexed on 2010/06/03 14:54 UTC
Read the original article Hit count: 349

Filed under:
|
|
|

Hi, I'm working on a database upgrader application. The upgrader updates the schema of a database ( adds new columns, renames columns , adds new tables, new views to an existing database by executing SQL statements ). When a user wants to upgrade from version 1.0 to 2.0 , "Upgrader" objects are taken from an object factory and the "Execute" method of each "Upgrader" is called. The GUI of the application has a progress bar and each time an upgrader object performs a SQL statement the progress bar gets incremented.

            while (!version.Equal(CurrentVersion))
            {

                 IUpgrader myUpgrader = UpgraderFactory.GetUpgrader(version);

                 myUpgrader.Execute(UpgradedFile,progressbar);

                 version.Increment();
            }

My question is very simple : how should the upgrader object communicate with the progressbar. In the code above, the upgrader object is given direct access to the progressbar but I'm wondering if some better way of doing this or better design pattern exists.

Regards, Seb

© Stack Overflow or respective owner

Related posts about design

Related posts about update