using System;
using System.Configuration;
using System.Collections.Specialized;
using System.Data;
namespace Yavsc.Model
{
public interface IModule
{
///
/// Install the model in database using the specified cnx.
///
/// Cnx.
void Install(IDbConnection cnx);
///
/// Uninstall the module data and data model from
/// database, using the specified cnx.
///
/// Cnx.
/// If set to true remove config.
void Uninstall(IDbConnection cnx,bool removeConfig);
ConfigurationSection DefaultConfig (string appName, string cnxStr);
///
/// Gets or sets a value indicating whether this is active.
///
/// true if active; otherwise, false.
bool Active { get; set; }
///
/// Gets or sets the name of the application.
///
/// The name of the application.
string ApplicationName { get; set; }
void Initialize (string name, NameValueCollection config);
}
}