Re: [Banshee-List] Can't get Banshee's CollectionIndexer to work



Oh darn I feel so silly :D I didn't even consider needing to Iterate
the DBus. I have done it before in c++ but it never dawned on me here.
Thanks to you both! it works now!

2011/7/18 Bertrand Lorentz <bertrand lorentz gmail com>:
> While looking at the demo client through the link posted by Olivier, I
> suddenly had an idea :
> The demo client is doing the following, which I think is necessary to
> process the DBus traffic :
> while (true) { DBus.Bus.Session.Iterate (); }
>
> Your client doesn't have that.
> It's not present in gnome-do or tangerine, because they're probably
> using the GLib main loop integration of the DBus library. This
> integration is done by something like a call to DBus.BusG.Init()
>
> I hope this helps.
>
> --
> Bertrand Lorentz
>
>
> On Mon, Jul 18, 2011 at 12:37 PM, olivier dufour <olivier duff gmail com> wrote:
>> You have a demo client in repo:
>> http://git.gnome.org/browse/banshee/tree/src/Core/Banshee.CollectionIndexer/Demo/RemoteClient.cs
>> Else you have source of CollectionIndexer here:
>> http://git.gnome.org/browse/banshee/tree/src/Core/Banshee.CollectionIndexer
>>
>>
>> Olivier Dufour
>>
>>
>> On Mon, Jul 18, 2011 at 12:14 PM, Tobias Arrskog <tobias arrskog gmail com>
>> wrote:
>>>
>>> Hmm, I tried the ++count in the return and I tried setting
>>> DateTime.UtcNow as CollectionLastModified. Still no cake :) Same
>>> result.
>>>
>>> I'd be happy to start a bugreport I'd be happy to see if I can't fix
>>> it even, if I was sure it is a bug. Seems like gnome-do and tangerine
>>> works (which is where I've been looking for the code example) so it
>>> must be something silly I'm missing. I just can't find what it is :)
>>> Just want to be sure I understand how it works before I start
>>> fiddleing with the actual code in the collectionlistener if possible.
>>>
>>> From what I understand the CollectionCount refers to the size of my
>>> collection I have gotten from the indexing? not sure if thats correct
>>> or why its relevant? The CollectionlastModified as I understand is for
>>> the collecitonlistener to check if it should update the index to the
>>> client, incase it has a nice cache of sorts?
>>>
>>> So what I expect is that OnStart should be called, then check the
>>> lastmodified. If lastmodified < collectionindex do
>>> OnBeginUpdateIndex(), then a bunch of IndexResult, then
>>> OnEndUpdateIndex. Have I understood this correctly?
>>>
>>> Thanks everyone for the help, I appreciate it!
>>>
>>> 2011/7/18 olivier dufour <olivier duff gmail com>:
>>> > Hello,
>>> > The issue is that CollectionCount and CollectionLastModified never
>>> > changed
>>> > so we never call new server.
>>> > So best is to return ++count; whereas count is only equal to 0 for
>>> > moment..
>>> >
>>> > Olivier Dufour
>>> >
>>> >
>>> > On Sun, Jul 17, 2011 at 9:02 AM, David Wales <yay101 gmail com> wrote:
>>> >>
>>> >> Also this isn't that active with developers, may i suggest posting a
>>> >> bug report instead as they seem to get a lot more attention.
>>> >>
>>> >> On Sun, Jul 17, 2011 at 5:01 PM, David Wales <yay101 gmail com> wrote:
>>> >> > I'm no programmer (yet) but it doesn't look like a dependency problem
>>> >> > as it doesn't error out before initialisation. What's this
>>> >> > "org.bansheeproject.CollectionIndexer is already started"? Could it
>>> >> > be
>>> >> > a dbus limitation while it waits for one instance to end before
>>> >> > indexing? Or is that fixed at "Resolving"?
>>> >> >
>>> >> > On Sun, Jul 17, 2011 at 3:13 AM, Tobias Arrskog
>>> >> > <tobias arrskog gmail com> wrote:
>>> >> >> Hi, I'm trying to use the CollectionIndexer to create the uPnP
>>> >> >> MediaServer part of GSoC but I just can't seem to get it to work.
>>> >> >> I've
>>> >> >> read through both tangerine's and gnome-do's code (which both works
>>> >> >> for me) but the simple example I made just don't want to work. I'm
>>> >> >> sure I have done something wrong but can't find it, if anyone could
>>> >> >> spot it they'd help me immensely :)
>>> >> >>
>>> >> >> I have attached the code I use and I have tried referencing both the
>>> >> >> .dll from gnome-do and one built from my mono-gsoc branch (should be
>>> >> >> quite recent).
>>> >> >>
>>> >> >> What I see in terminal when running it is:
>>> >> >> Hello World!
>>> >> >> [Debug 18:17:13.454] Acquiring org.freedesktop.DBus session instance
>>> >> >> [Debug 18:17:13.624] org.bansheeproject.CollectionIndexer is already
>>> >> >> started
>>> >> >> [Debug 18:17:13.625] Resolving
>>> >> >> org.bansheeproject.CollectionIndexer.Service (attempt 1)
>>> >> >> [Debug 18:17:13.627] Connected to
>>> >> >> org.bansheeproject.CollectionIndexer.Service
>>> >> >> [Debug 18:17:13.627] Listening to service's CollectionChanged signal
>>> >> >> (full-app is running)
>>> >> >> CollectionCount
>>> >> >> [Debug 18:17:13.636] Creating an ICollectionIndexer
>>> >> >>
>>> >> >>
>>> >> >> (/org/bansheeproject/Banshee/CollectionIndexerService/CollectionIndexer_1)
>>> >> >> Indexer started
>>> >> >>
>>> >> >> And as you can see CollectionCount and OnStart is called, nothing
>>> >> >> more. I have waited with it active for hours and tried to start, re
>>> >> >> scan library and stop banshee while it running with no result.
>>> >> >>
>>> >> >> Cheers,
>>> >> >> Tobias
>>> >> >>
> _______________________________________________
> banshee-list mailing list
> banshee-list gnome org
> http://mail.gnome.org/mailman/listinfo/banshee-list  (unsubscribe here)
>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]