diff API/Objects/IWarFoundryStagedLoadObject.cs @ 337:3c4a6403a88c

* Fix capitalisation so that new files are in the namespace no-open-ticket
author IBBoard <dev@ibboard.co.uk>
date Sun, 03 Apr 2011 18:50:32 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/API/Objects/IWarFoundryStagedLoadObject.cs	Sun Apr 03 18:50:32 2011 +0000
@@ -0,0 +1,44 @@
+// This file (IWarFoundryStagedLoadObject.cs) is a part of the IBBoard.WarFoundry.API project and is copyright 2007, 2008, 2009 IBBoard.
+//
+// The file and the library/program it is in are licensed and distributed, without warranty, under the GNU Affero GPL license, either version 3 of the License or (at your option) any later version. Please see COPYING for more information and the full license.
+
+using System;
+using ICSharpCode.SharpZipLib.Zip;
+using IBBoard.WarFoundry.API.Factories;
+
+namespace IBBoard.WarFoundry.API.Objects
+{
+	public interface IWarFoundryStagedLoadObject : IWarFoundryObject
+	{	
+		/// <summary>
+		/// Checks whether the object has been fully loaded or whether only the first stage of loading has been performed.
+		/// If the object is not fully loaded then the method must finish loading the object.
+		/// </summary>
+		void EnsureFullyLoaded();
+		
+		/// <value>
+		/// Gets the <code>AbstractNativeWarFoundryFactory</code> that created the object.
+		/// </value>
+		IWarFoundryFactory Factory	{ get; }
+		
+		/// <value>
+		/// Returns <code>true</code> if the object has been fully loaded with all data, else returns <code>false</code>
+		/// </value>
+		bool IsFullyLoaded { get; }
+		
+		/// <value>
+		/// Returns <code>true</code> if the object is in the process of being fully loaded with all data, else returns <code>false</code>
+		/// </value>
+		bool IsLoading { get; }
+		
+		/// <summary>
+		/// Marks the object as fully loaded so that no more load checking is required.
+		/// </summary>
+		void SetAsFullyLoaded();
+		
+		/// <summary>
+		/// Markes the object as being in the process of being fully loaded.
+		/// </summary>
+		void SetAsLoading();
+	}
+}