Files
Umbraco-CMS/umbraco/datalayer/Utility/Installer/IInstallerUtility.cs
Shandem f6d0d043b5 DO NOT DOWNLOAD. DOWNLOAT LATEST STABLE FROM RELEASE TAB
Created 4.1.0 branch

[TFS Changeset #55082]
2009-06-19 07:39:16 +00:00

85 lines
3.0 KiB
C#

/************************************************************************************
*
* Umbraco Data Layer
* MIT Licensed work
* ©2008 Ruben Verborgh
*
***********************************************************************************/
namespace umbraco.DataLayer.Utility.Installer
{
/// <summary>
/// Interface for a utility that helps installing an Umbraco data source.
/// </summary>
public interface IInstallerUtility
{
/// <summary>
/// Gets the current data source version.
/// </summary>
/// <value>The current version.</value>
DatabaseVersion CurrentVersion{ get; }
/// <summary>
/// Gets the latest available version.
/// </summary>
/// <value>The latest version.</value>
DatabaseVersion LatestVersion{ get; }
/// <summary>
/// Gets a value indicating whether this installer can connect to the data source.
/// </summary>
/// <value>
/// <c>true</c> if the installer can connect; otherwise, <c>false</c>.
/// </value>
bool CanConnect { get; }
/// <summary>
/// Gets a value indicating whether this installer can create a new database using the connection.
/// </summary>
/// <value>
/// <c>true</c> if the installer can create a new database; otherwise, <c>false</c>.
/// </value>
bool CanCreate { get; }
/// <summary>
/// Gets a value indicating whether the data source is empty and ready for installation.
/// </summary>
/// <value>
/// <c>true</c> if the data source is empty; otherwise, <c>false</c>.
/// </value>
bool IsEmpty { get; }
/// <summary>
/// Gets a value indicating whether the data source has an older version number.
/// </summary>
/// <value>
/// <c>true</c> if the data source is older; otherwise, <c>false</c>.
/// </value>
bool IsOlderVersion { get; }
/// <summary>
/// Gets a value indicating whether the data source has an up to date version.
/// </summary>
/// <value>
/// <c>true</c> if the data source is up to date; otherwise, <c>false</c>.
/// </value>
bool IsLatestVersion { get; }
/// <summary>
/// Gets a value indicating whether the installer can upgrade the data source.
/// </summary>
/// <value>
/// <c>true</c> if the installer can upgrade the data source; otherwise, <c>false</c>.
/// </value>
/// <remarks>Empty data sources can't be upgraded, just installed.</remarks>
bool CanUpgrade { get; }
/// <summary>
/// Installs the latest version into the data source.
/// </summary>
/// <exception cref="System.NotSupportedException">
/// If installing or upgrading is not supported.</exception>
void Install();
}
}