banshee r3283 - in trunk/banshee: . src/Core/Banshee.Services src/Core/Banshee.Services/Banshee.Library src/Core/Banshee.ThickClient/Banshee.Library.Gui
- From: abock svn gnome org
- To: svn-commits-list gnome org
- Subject: banshee r3283 - in trunk/banshee: . src/Core/Banshee.Services src/Core/Banshee.Services/Banshee.Library src/Core/Banshee.ThickClient/Banshee.Library.Gui
- Date: Wed, 20 Feb 2008 18:45:56 +0000 (GMT)
Author: abock
Date: Wed Feb 20 18:45:55 2008
New Revision: 3283
URL: http://svn.gnome.org/viewvc/banshee?rev=3283&view=rev
Log:
2008-02-20 Aaron Bockover <abock gnome org>
* src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs:
Fixed loading after Scott's commit, defer the loading of these import
objects until they are actually needed to improve theoretical startup speed
* src/Core/Banshee.Services/Banshee.Library/IImportSource.cs: Added the
CanImport member that Scott used in IExtensionImportSource
* src/Core/Banshee.Services/Banshee.Library/IExtensionImportSource.cs:
Removed, no sense in having this interface
* src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs:
* src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs:
* src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs:
Implement CanImport
Removed:
trunk/banshee/src/Core/Banshee.Services/Banshee.Library/IExtensionImportSource.cs
Modified:
trunk/banshee/ChangeLog
trunk/banshee/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs
trunk/banshee/src/Core/Banshee.Services/Banshee.Library/IImportSource.cs
trunk/banshee/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs
trunk/banshee/src/Core/Banshee.Services/Banshee.Services.mdp
trunk/banshee/src/Core/Banshee.Services/Makefile.am
trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs (original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Library/HomeDirectoryImportSource.cs Wed Feb 20 18:45:55 2008
@@ -50,5 +50,9 @@
public string [] IconNames {
get { return new string [] { "user-home", "gtk-home" }; }
}
+
+ public bool CanImport {
+ get { return true; }
+ }
}
}
Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Library/IImportSource.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Library/IImportSource.cs (original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Library/IImportSource.cs Wed Feb 20 18:45:55 2008
@@ -35,5 +35,6 @@
void Import ();
string Name { get; }
string [] IconNames { get; }
+ bool CanImport { get; }
}
}
Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs (original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Library/ImportSourceManager.cs Wed Feb 20 18:45:55 2008
@@ -37,21 +37,25 @@
{
public class ImportSourceManager : IService, IEnumerable<IImportSource>
{
- private List<IImportSource> import_sources = new List<IImportSource> ();
+ private List<IImportSource> import_sources;
public ImportSourceManager ()
{
- import_sources.Add (new HomeDirectoryImportSource ());
-
- foreach (IExtensionImportSource source in AddinManager.GetExtensionObjects ("/Banshee/Library/ImportSource")) {
- if (source.CanImport) {
- import_sources.Add (source);
- }
- }
}
public IEnumerator<IImportSource> GetEnumerator ()
{
+ if (import_sources == null) {
+ import_sources = new List<IImportSource> ();
+ import_sources.Add (new HomeDirectoryImportSource ());
+
+ foreach (IImportSource source in AddinManager.GetExtensionObjects ("/Banshee/Library/ImportSource")) {
+ if (source.CanImport) {
+ import_sources.Add (source);
+ }
+ }
+ }
+
return import_sources.GetEnumerator ();
}
Modified: trunk/banshee/src/Core/Banshee.Services/Banshee.Services.mdp
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Banshee.Services.mdp (original)
+++ trunk/banshee/src/Core/Banshee.Services/Banshee.Services.mdp Wed Feb 20 18:45:55 2008
@@ -121,7 +121,6 @@
<File name="Banshee.Query/SmartPlaylistQueryValue.cs" subtype="Code" buildaction="Compile" />
<File name="Banshee.Query/YearQueryValue.cs" subtype="Code" buildaction="Compile" />
<File name="Banshee.MediaEngine/NullPlayerEngine.cs" subtype="Code" buildaction="Compile" />
- <File name="Banshee.Library/IExtensionImportSource.cs" subtype="Code" buildaction="Compile" />
</Contents>
<References>
<ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
Modified: trunk/banshee/src/Core/Banshee.Services/Makefile.am
==============================================================================
--- trunk/banshee/src/Core/Banshee.Services/Makefile.am (original)
+++ trunk/banshee/src/Core/Banshee.Services/Makefile.am Wed Feb 20 18:45:55 2008
@@ -35,7 +35,6 @@
Banshee.Equalizer/EqualizerSetting.cs \
Banshee.Equalizer/EqualizerSettingEvent.cs \
Banshee.Library/HomeDirectoryImportSource.cs \
- Banshee.Library/IExtensionImportSource.cs \
Banshee.Library/IImportSource.cs \
Banshee.Library/ImportSourceManager.cs \
Banshee.Library/LibraryImportManager.cs \
Modified: trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs (original)
+++ trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FileImportSource.cs Wed Feb 20 18:45:55 2008
@@ -66,5 +66,9 @@
public string [] IconNames {
get { return new string [] { "gtk-open" }; }
}
+
+ public bool CanImport {
+ get { return true; }
+ }
}
}
Modified: trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs
==============================================================================
--- trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs (original)
+++ trunk/banshee/src/Core/Banshee.ThickClient/Banshee.Library.Gui/FolderImportSource.cs Wed Feb 20 18:45:55 2008
@@ -64,5 +64,9 @@
public string [] IconNames {
get { return new string [] { "gtk-open" }; }
}
+
+ public bool CanImport {
+ get { return true; }
+ }
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]