banshee r4237 - in trunk/musicbrainz-sharp: . src/MusicBrainz src/MusicBrainz/MusicBrainz
- From: scottp svn gnome org
- To: svn-commits-list gnome org
- Subject: banshee r4237 - in trunk/musicbrainz-sharp: . src/MusicBrainz src/MusicBrainz/MusicBrainz
- Date: Mon, 21 Jul 2008 07:50:50 +0000 (UTC)
Author: scottp
Date: Mon Jul 21 07:50:50 2008
New Revision: 4237
URL: http://svn.gnome.org/viewvc/banshee?rev=4237&view=rev
Log:
* src/MusicBrainz/MusicBrainz/MusicBrainzObject.cs: Simplified relation
creation slightly and added equivilance operator overload.
* src/MusicBrainz/MusicBrainz/LinuxDisc.cs,
src/MusicBrainz/MusicBrainz/DiscLinux.cs: Renamed back to DiscLinux
* src/MusicBrainz/MusicBrainz/Query.cs: Renamed some public parameters
to follow FDG style and changed some public methods to return IList
instead of List.
* src/MusicBrainz/MusicBrainz/Win32Disc.cs,
src/MusicBrainz/MusicBrainz/DiscWin32.cs: Renamed back to DiscWin32
* src/MusicBrainz/MusicBrainz/Artist.cs: Added equivilance operator
overload to ArtistReleaseType type.
Added:
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/DiscLinux.cs
- copied unchanged from r4235, /trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/LinuxDisc.cs
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/DiscWin32.cs
- copied unchanged from r4235, /trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Win32Disc.cs
Removed:
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/LinuxDisc.cs
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Win32Disc.cs
Modified:
trunk/musicbrainz-sharp/ChangeLog
trunk/musicbrainz-sharp/MusicBrainz.mds
trunk/musicbrainz-sharp/src/MusicBrainz/ChangeLog
trunk/musicbrainz-sharp/src/MusicBrainz/Makefile.am
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz.mdp
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Artist.cs
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/MusicBrainzObject.cs
trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Query.cs
Modified: trunk/musicbrainz-sharp/MusicBrainz.mds
==============================================================================
--- trunk/musicbrainz-sharp/MusicBrainz.mds (original)
+++ trunk/musicbrainz-sharp/MusicBrainz.mds Mon Jul 21 07:50:50 2008
@@ -16,7 +16,6 @@
</Configurations>
<StartMode startupentry="MusicBrainz" single="True">
<Execute type="None" entry="MusicBrainz" />
- <Execute type="None" entry="MusicBrainz" />
<Execute type="None" entry="MusicBrainz.Tests" />
</StartMode>
<Entries>
Modified: trunk/musicbrainz-sharp/src/MusicBrainz/Makefile.am
==============================================================================
--- trunk/musicbrainz-sharp/src/MusicBrainz/Makefile.am (original)
+++ trunk/musicbrainz-sharp/src/MusicBrainz/Makefile.am Mon Jul 21 07:50:50 2008
@@ -5,9 +5,10 @@
SOURCES = \
MusicBrainz/Artist.cs \
MusicBrainz/Disc.cs \
+ MusicBrainz/DiscLinux.cs \
+ MusicBrainz/DiscWin32.cs \
MusicBrainz/Event.cs \
MusicBrainz/Label.cs \
- MusicBrainz/LinuxDisc.cs \
MusicBrainz/LocalDisc.cs \
MusicBrainz/MusicBrainzEntity.cs \
MusicBrainz/MusicBrainzException.cs \
@@ -19,7 +20,6 @@
MusicBrainz/Release.cs \
MusicBrainz/Track.cs \
MusicBrainz/Utils.cs \
- MusicBrainz/Win32Disc.cs \
MusicBrainz/XmlRequestEventArgs.cs
instdir = $(prefix)/lib/musicbrainz-sharp
Modified: trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz.mdp
==============================================================================
--- trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz.mdp (original)
+++ trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz.mdp Mon Jul 21 07:50:50 2008
@@ -1,4 +1,4 @@
-<Project name="MusicBrainz" fileversion="2.0" DefaultNamespace="MusicBrainz" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
+<Project name="MusicBrainz" fileversion="2.0" language="C#" DefaultNamespace="MusicBrainz" clr-version="Net_2_0" ctype="DotNetProject">
<Configurations active="Debug">
<Configuration name="Debug" ctype="DotNetProjectConfiguration">
<Output directory="." assemblyKeyFile="." assembly="MusicBrainz" />
@@ -16,7 +16,7 @@
<Contents>
<File name="MusicBrainz/Artist.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/Disc.cs" subtype="Code" buildaction="Compile" />
- <File name="MusicBrainz/Win32Disc.cs" subtype="Code" buildaction="Compile" />
+ <File name="MusicBrainz/DiscWin32.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/Event.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/Label.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/MusicBrainzEntity.cs" subtype="Code" buildaction="Compile" />
@@ -28,7 +28,7 @@
<File name="MusicBrainz/Release.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/Track.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/Utils.cs" subtype="Code" buildaction="Compile" />
- <File name="MusicBrainz/LinuxDisc.cs" subtype="Code" buildaction="Compile" />
+ <File name="MusicBrainz/DiscLinux.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/XmlRequestEventArgs.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/LocalDisc.cs" subtype="Code" buildaction="Compile" />
<File name="MusicBrainz/MusicBrainzService.cs" subtype="Code" buildaction="Compile" />
Modified: trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Artist.cs
==============================================================================
--- trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Artist.cs (original)
+++ trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Artist.cs Mon Jul 21 07:50:50 2008
@@ -131,7 +131,7 @@
public ArtistReleaseType ArtistReleaseType {
get { return artist_release_type; }
set {
- if (artist_release_type.Equals (value)) {
+ if (artist_release_type == value) {
return;
}
artist_release_type = value;
@@ -251,8 +251,18 @@
public override bool Equals (object o)
{
- ArtistReleaseType art = o as ArtistReleaseType;
- return art != null && art.str == str;
+ return this == o as ArtistReleaseType;
+ }
+
+ public static bool operator ==(ArtistReleaseType artistReleaseType1, ArtistReleaseType artistReleaseType2)
+ {
+ return (artistReleaseType1 == null && artistReleaseType2 == null) ||
+ (artistReleaseType1 != null && artistReleaseType2 != null && artistReleaseType1.str == artistReleaseType2.str);
+ }
+
+ public static bool operator !=(ArtistReleaseType artistReleaseType1, ArtistReleaseType artistReleaseType2)
+ {
+ return !(artistReleaseType1 == artistReleaseType2);
}
public override int GetHashCode ()
Modified: trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/MusicBrainzObject.cs
==============================================================================
--- trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/MusicBrainzObject.cs (original)
+++ trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/MusicBrainzObject.cs Mon Jul 21 07:50:50 2008
@@ -103,24 +103,16 @@
all_rels_loaded = true;
switch (reader ["target-type"]) {
case "Artist":
- List<Relation<Artist>> artist_rels = new List<Relation<Artist>> ();
- CreateRelation (reader.ReadSubtree (), artist_rels);
- this.artist_rels = artist_rels.AsReadOnly ();
+ artist_rels = CreateRelation<Artist> (reader.ReadSubtree ());
break;
case "Release":
- List<Relation<Release>> release_rels = new List<Relation<Release>> ();
- CreateRelation (reader.ReadSubtree (), release_rels);
- this.release_rels = release_rels.AsReadOnly ();
+ release_rels = CreateRelation<Release> (reader.ReadSubtree ());
break;
case "Track":
- List<Relation<Track>> track_rels = new List<Relation<Track>> ();
- CreateRelation (reader.ReadSubtree (), track_rels);
- this.track_rels = track_rels.AsReadOnly ();
+ track_rels = CreateRelation<Track> (reader.ReadSubtree ());
break;
case "Label":
- List<Relation<Label>> label_rels = new List<Relation<Label>> ();
- CreateRelation (reader.ReadSubtree (), label_rels);
- this.label_rels = label_rels.AsReadOnly ();
+ label_rels = CreateRelation<Label> (reader.ReadSubtree ());
break;
case "Url":
if (!reader.ReadToDescendant ("relation")) break;
@@ -282,8 +274,17 @@
public override bool Equals (object obj)
{
- MusicBrainzObject mbobj = obj as MusicBrainzObject;
- return mbobj != null && mbobj.GetType ().Equals (GetType ()) && mbobj.Id == Id;
+ return this == obj as MusicBrainzObject;
+ }
+
+ public static bool operator ==(MusicBrainzObject obj1, MusicBrainzObject obj2)
+ {
+ return (obj1 == null && obj2 == null) || (obj1 != null && obj2 != null && obj1.GetType ().Equals (obj2.GetType ()) && obj1.Id == obj2.Id);
+ }
+
+ public static bool operator !=(MusicBrainzObject obj1, MusicBrainzObject obj2)
+ {
+ return !(obj1 == obj2);
}
public override int GetHashCode ()
@@ -295,8 +296,9 @@
#region Static
- static void CreateRelation<T> (XmlReader reader, List<Relation<T>> relations) where T : MusicBrainzObject
+ static ReadOnlyCollection<Relation<T>> CreateRelation<T> (XmlReader reader) where T : MusicBrainzObject
{
+ List<Relation<T>> relations = new List<Relation<T>> ();
while (reader.ReadToFollowing ("relation")) {
string type = reader ["type"];
RelationDirection direction = RelationDirection.Forward;
@@ -319,6 +321,7 @@
attributes));
}
reader.Close ();
+ return relations.AsReadOnly ();
}
static string CreateUrl (string url_extension, int limit, int offset, string parameters)
Modified: trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Query.cs
==============================================================================
--- trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Query.cs (original)
+++ trunk/musicbrainz-sharp/src/MusicBrainz/MusicBrainz/Query.cs Mon Jul 21 07:50:50 2008
@@ -125,23 +125,23 @@
return Best (100);
}
- public IEnumerable<T> Best (int score_threshold)
+ public IEnumerable<T> Best (int scoreThreshold)
{
foreach (T result in this) {
- if (result.Score < score_threshold) yield break;
+ if (result.Score < scoreThreshold) yield break;
yield return result;
}
}
- public List<T> ToList ()
+ public IList<T> ToList ()
{
return ToList (0);
}
- public List<T> ToList (int score_threshold)
+ public IList<T> ToList (int scoreThreshold)
{
- List<T> list = new List<T> (score_threshold == 0 ? Count : 0);
- foreach (T result in Best(score_threshold)) list.Add (result);
+ List<T> list = new List<T> (scoreThreshold == 0 ? Count : 0);
+ foreach (T result in Best(scoreThreshold)) list.Add (result);
return list;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]