Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:18:07 +0000 (17:18 +0000)]
Remove a now redundant method.
svn path=/trunk/; revision=630
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:18:03 +0000 (17:18 +0000)]
No need to allow subclasses to override browse_cb.
If a subclass need to do that, it is better off implementing
ContentDirectory from scratch.
svn path=/trunk/; revision=629
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:59 +0000 (17:17 +0000)]
Mark all internal API as 'internal'.
svn path=/trunk/; revision=628
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:54 +0000 (17:17 +0000)]
Use VAPI sources directly rather than VAPI.
This is needed for removing internal API from VAPI.
svn path=/trunk/; revision=627
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:50 +0000 (17:17 +0000)]
Minor indentation fix.
svn path=/trunk/; revision=626
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:45 +0000 (17:17 +0000)]
Declare error throw.
svn path=/trunk/; revision=625
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:41 +0000 (17:17 +0000)]
Allow multiple URIs to original content in MediaItem.
All the other properties (resolution, number of channels, frame rate etc
etc) still need to be exactly the same for each item.
svn path=/trunk/; revision=624
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:36 +0000 (17:17 +0000)]
Small refactoring.
svn path=/trunk/; revision=623
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:31 +0000 (17:17 +0000)]
Check for needed version of gupnp-vala.
svn path=/trunk/; revision=622
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:27 +0000 (17:17 +0000)]
Browse just forwards the Cancellable to async calls.
svn path=/trunk/; revision=621
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:22 +0000 (17:17 +0000)]
Replace StateMachine.cancel by use of GLib.Cancellable.
svn path=/trunk/; revision=620
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:16 +0000 (17:17 +0000)]
All results inherit from Rygel.SimpleAsyncResult.
svn path=/trunk/; revision=619
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:11 +0000 (17:17 +0000)]
Disconnect from StateMachine.completed before cancelling it.
svn path=/trunk/; revision=618
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:17:05 +0000 (17:17 +0000)]
All state machines are canceled before their user objects go away.
svn path=/trunk/; revision=617
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:16:59 +0000 (17:16 +0000)]
Common interface for all state machine classes.
svn path=/trunk/; revision=616
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:16:53 +0000 (17:16 +0000)]
Set appliction name.
This is just the translated PACKAGE_NAME from config.h.
svn path=/trunk/; revision=615
Zeeshan Ali (Khattak) [Thu, 19 Feb 2009 17:16:47 +0000 (17:16 +0000)]
Include config.h in the build.
svn path=/trunk/; revision=614
Zeeshan Ali (Khattak) [Tue, 17 Feb 2009 12:01:43 +0000 (12:01 +0000)]
Decrease needed gconf version to 2.16.
svn path=/trunk/; revision=613
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:23 +0000 (17:33 +0000)]
Implement notification of container updates.
All plugins need to do to notify clients of changes in a container,
let's say 'some_container' is to call 'some_container.updated()'.
svn path=/trunk/; revision=612
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:19 +0000 (17:33 +0000)]
Correct the logic of creating ContainerUpdateIDs value.
svn path=/trunk/; revision=611
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:15 +0000 (17:33 +0000)]
First param of signal is always the source object.
svn path=/trunk/; revision=610
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:11 +0000 (17:33 +0000)]
Basic skeleton for "ContainerUpdateIDs" state-variable.
svn path=/trunk/; revision=609
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:07 +0000 (17:33 +0000)]
ContentDir keeps a system_update_id.
This id is no longer the same as update_id of the root_container.
svn path=/trunk/; revision=608
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:33:03 +0000 (17:33 +0000)]
Provide a mechanism for container to signal updates.
svn path=/trunk/; revision=607
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:32:59 +0000 (17:32 +0000)]
All containers gets an update_id of 0 at creation.
svn path=/trunk/; revision=606
Zeeshan Ali (Khattak) [Mon, 16 Feb 2009 17:32:54 +0000 (17:32 +0000)]
Each media object gets a weak ref to it's parent container.
svn path=/trunk/; revision=605
Zeeshan Ali (Khattak) [Sun, 15 Feb 2009 21:58:06 +0000 (21:58 +0000)]
Refactor TrackerCategory constructor.
svn path=/trunk/; revision=604
Zeeshan Ali (Khattak) [Sun, 15 Feb 2009 21:58:00 +0000 (21:58 +0000)]
Rename (category) container to category.
svn path=/trunk/; revision=603
Zeeshan Ali (Khattak) [Sun, 15 Feb 2009 19:59:32 +0000 (19:59 +0000)]
Don't assume a requested count if not provided.
svn path=/trunk/; revision=602
Zeeshan Ali (Khattak) [Sun, 15 Feb 2009 19:59:27 +0000 (19:59 +0000)]
Bump libgee required version to 0.1.5.
svn path=/trunk/; revision=601
Zeeshan Ali (Khattak) [Sun, 15 Feb 2009 00:01:13 +0000 (00:01 +0000)]
Refactor DVBRootContainer constructor.
Somehow this fixes the crash in case of error.
svn path=/trunk/; revision=600
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 23:06:39 +0000 (23:06 +0000)]
Return in case of error.
Should fix the segfault in case of errors on async dbus calls.
svn path=/trunk/; revision=599
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:33:51 +0000 (15:33 +0000)]
return a empty list rather than null.
Fixes a crash in case of items providing HTTP URIs.
svn path=/trunk/; revision=598
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:33:26 +0000 (15:33 +0000)]
Catch the error thrown by Search.Query.
svn path=/trunk/; revision=597
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:33:10 +0000 (15:33 +0000)]
Add complete_in_idle to TrackerSearchResult.
svn path=/trunk/; revision=596
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:33:01 +0000 (15:33 +0000)]
Put the result object to list as soon as it is created.
svn path=/trunk/; revision=595
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:32:44 +0000 (15:32 +0000)]
Put TrackerGetMetadataResult in separate file.
svn path=/trunk/; revision=594
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:32:20 +0000 (15:32 +0000)]
Put Browse into Rygel namespace.
svn path=/trunk/; revision=593
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:31:58 +0000 (15:31 +0000)]
Call Metadata.Get asynchronously.
svn path=/trunk/; revision=592
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:31:37 +0000 (15:31 +0000)]
Make get_item_path public.
svn path=/trunk/; revision=591
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:31:21 +0000 (15:31 +0000)]
results list should be able to container any AsyncResult.
svn path=/trunk/; revision=590
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:31:05 +0000 (15:31 +0000)]
Rename fetch_item_by_path to create_item.
svn path=/trunk/; revision=589
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:30:50 +0000 (15:30 +0000)]
Put TrackerSearchResult in separate file.
svn path=/trunk/; revision=588
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:30:29 +0000 (15:30 +0000)]
Rename search_result_ready method to ready.
svn path=/trunk/; revision=587
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:30:14 +0000 (15:30 +0000)]
No need to delay the completion of search result.
svn path=/trunk/; revision=586
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:29:59 +0000 (15:29 +0000)]
TrackerSearchResult doesn't inherit from SimpleAsyncResult.
This is a temporary hack (hopefully) till bug#567319 is fixed.
svn path=/trunk/; revision=585
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:28:05 +0000 (15:28 +0000)]
Add/Remove the search results to the list at the correct time.
svn path=/trunk/; revision=584
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:27:43 +0000 (15:27 +0000)]
Keep the results in an ArrayList.
svn path=/trunk/; revision=583
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:27:22 +0000 (15:27 +0000)]
call Search.Query asynchronously.
This currently doesn't build due to bug#567319.
svn path=/trunk/; revision=582
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:27:03 +0000 (15:27 +0000)]
Give subclasses of SimpleAsyncResult access to it's fields.
svn path=/trunk/; revision=581
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:26:36 +0000 (15:26 +0000)]
Item constructor don't need to throw signals anymore.
svn path=/trunk/; revision=580
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:26:14 +0000 (15:26 +0000)]
Remove TrackerContainer.fetch_item method.
svn path=/trunk/; revision=579
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:26:05 +0000 (15:26 +0000)]
Refactor fetch_item* implementations.
svn path=/trunk/; revision=578
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:25:43 +0000 (15:25 +0000)]
Use Tracker.Search.Query for getting total items in a category as well.
svn path=/trunk/; revision=577
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:25:29 +0000 (15:25 +0000)]
Start using Tracker.Search.Query.
This method has a horrible api and moreover vala dbus api is currently
not really capable of handling the return value of this method.
Nevertheless, it does improve performance a lot since now we get all the
metadata for all items at once rather than making a dbus call for each
item separately.
svn path=/trunk/; revision=576
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:25:16 +0000 (15:25 +0000)]
container classes also provide get_metadata_keys().
svn path=/trunk/; revision=575
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:24:53 +0000 (15:24 +0000)]
Container classes fetch the metadata.
svn path=/trunk/; revision=574
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:24:37 +0000 (15:24 +0000)]
fetch_metadata doesn't need to be implemented by every item class.
svn path=/trunk/; revision=573
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:24:24 +0000 (15:24 +0000)]
Each container class implements fetch_item_by_path().
svn path=/trunk/; revision=572
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:24:04 +0000 (15:24 +0000)]
Rename find_item* to fetch_item*.
svn path=/trunk/; revision=571
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:23:49 +0000 (15:23 +0000)]
Item constructors take an optional metadata argument.
This is to avoid each item having to fetch it's metadata from Tracker on
creation if the creator of the item already has it's metadata at hand.
svn path=/trunk/; revision=570
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:23:31 +0000 (15:23 +0000)]
Refactor: Separate function for retreiving the metadata keys.
svn path=/trunk/; revision=569
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:23:16 +0000 (15:23 +0000)]
Refactor: put initialization from metadata into a separate func.
svn path=/trunk/; revision=568
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:23:02 +0000 (15:23 +0000)]
Use Filename.to_string ().
Bastian should be happier now. :)
svn path=/trunk/; revision=567
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:22:43 +0000 (15:22 +0000)]
Turn find_item*() methods private.
svn path=/trunk/; revision=566
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:22:27 +0000 (15:22 +0000)]
Separate classes for all categories.
svn path=/trunk/; revision=565
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:22:11 +0000 (15:22 +0000)]
No need to keep DBus proxy objects 'static'.
svn path=/trunk/; revision=564
Zeeshan Ali (Khattak) [Sat, 14 Feb 2009 15:21:45 +0000 (15:21 +0000)]
Prefix items' IDs with parent container's ID.
This is to recognise the parent of the item without having to ask anything
from Tracker over DBus.
svn path=/trunk/; revision=563
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:35 +0000 (22:29 +0000)]
Don't continue handling the browse if parsing of arguments fail.
svn path=/trunk/; revision=562
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:30 +0000 (22:29 +0000)]
Utilize generics in AsyncResult so it can hold any type of data.
svn path=/trunk/; revision=561
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:25 +0000 (22:29 +0000)]
Make MediaContainer.get_children async.
A GIO-based API divided in two methods get_children and
get_children_finish.
svn path=/trunk/; revision=560
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:20 +0000 (22:29 +0000)]
More utilization of state-machine in Browse.
These changes are particularly for ease of move to async
MediaContainer.get_children method when it's there.
svn path=/trunk/; revision=559
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:15 +0000 (22:29 +0000)]
Correct the doc comment indentation.
svn path=/trunk/; revision=558
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:10 +0000 (22:29 +0000)]
Put SimpleAsyncResult in separate file.
svn path=/trunk/; revision=557
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:05 +0000 (22:29 +0000)]
Turn MediaContainer.find_object() async.
A GIO-based API divided in two methods find_object and find_object_finish.
svn path=/trunk/; revision=556
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:29:00 +0000 (22:29 +0000)]
Provide a simple implementation of AsyncResult: SimpleAsyncResult.
svn path=/trunk/; revision=555
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:55 +0000 (22:28 +0000)]
Hook to end of response before starting it.
svn path=/trunk/; revision=554
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:51 +0000 (22:28 +0000)]
HTTPRequest pauses the message rather than HTTPResponse.
svn path=/trunk/; revision=553
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:47 +0000 (22:28 +0000)]
MediaObject now derives from GLib.Object.
svn path=/trunk/; revision=552
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:42 +0000 (22:28 +0000)]
Some refactoring to prepare fetch_requested_item for async calls.
svn path=/trunk/; revision=551
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:38 +0000 (22:28 +0000)]
Make sure we really found the object.
svn path=/trunk/; revision=550
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:33 +0000 (22:28 +0000)]
Some refactoring to prepare fetch_media_object for async calls.
svn path=/trunk/; revision=549
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:28 +0000 (22:28 +0000)]
Mark privates fields as private explicitly.
svn path=/trunk/; revision=548
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:24 +0000 (22:28 +0000)]
Rename 'metadata' boolean field to 'fetch_metadata'.
svn path=/trunk/; revision=547
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:19 +0000 (22:28 +0000)]
'metadata' boolean should be maintained as part of Browse's state.
svn path=/trunk/; revision=546
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:14 +0000 (22:28 +0000)]
Rename find_object_by_id to find_object.
svn path=/trunk/; revision=545
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:08 +0000 (22:28 +0000)]
ContentDirectory doesn't need to implement find_object_by_id anymore.
svn path=/trunk/; revision=544
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:28:03 +0000 (22:28 +0000)]
Use root container directly whenever possible.
svn path=/trunk/; revision=543
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:59 +0000 (22:27 +0000)]
Create root container before HTTP server.
svn path=/trunk/; revision=542
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:54 +0000 (22:27 +0000)]
Put HTTP request handling into a separate class: HTTPRequest.
This will allow us to make async calls during the handling of HTTP
requests.
svn path=/trunk/; revision=541
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:49 +0000 (22:27 +0000)]
SeekableResponse constructor doesn't need to throw Error.
svn path=/trunk/; revision=540
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:44 +0000 (22:27 +0000)]
MediaItem don't need http_server field anymore.
This also simplifies plugins's code since they don't need to pass around
the http_server ref everywhere anymore.
svn path=/trunk/; revision=539
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:38 +0000 (22:27 +0000)]
Separate class for serializing the media objects.
svn path=/trunk/; revision=538
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:32 +0000 (22:27 +0000)]
Live items provide gst source element creation method.
HTTPServer doesn't need to emit any signals anymore as it can now
just ask the MediaItem to create the gst source element for it.
svn path=/trunk/; revision=537
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:26 +0000 (22:27 +0000)]
Don't forget to serialize the MediaObject.
svn path=/trunk/; revision=536
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:21 +0000 (22:27 +0000)]
Get rid of HTTPServer.item_requested signal.
Instead of emitting a signal, ask ContentDir to find the item for us.
svn path=/trunk/; revision=535
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:15 +0000 (22:27 +0000)]
HTTPServer keeps a weak (for now) ref to ContentDir.
svn path=/trunk/; revision=534
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:09 +0000 (22:27 +0000)]
Refactor and clean-up of Browse class.
svn path=/trunk/; revision=533
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:27:03 +0000 (22:27 +0000)]
A bit more docs on new Browse class.
svn path=/trunk/; revision=532
Zeeshan Ali (Khattak) [Mon, 9 Feb 2009 22:26:56 +0000 (22:26 +0000)]
Move 'Browse' handling to a separate class.
svn path=/trunk/; revision=531