Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:35:04 +0000 (12:35 +0000)]
Remove child_count param of Container.get_children().
The user of this API already have access to the container and therefore
it's child_count field.
svn path=/trunk/; revision=522
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:35:00 +0000 (12:35 +0000)]
Containers should initialize child_count at creation time.
svn path=/trunk/; revision=521
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:56 +0000 (12:34 +0000)]
MediaContainer.get_children is now nullable.
svn path=/trunk/; revision=520
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:52 +0000 (12:34 +0000)]
ContentDir.get_children () returns List<MediaObject>.
svn path=/trunk/; revision=519
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:48 +0000 (12:34 +0000)]
MediaContainer.find_item_by_id is now nullable.
This method should just return null if object is not found.
svn path=/trunk/; revision=518
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:44 +0000 (12:34 +0000)]
Prefix own calls with 'this' for clarity.
svn path=/trunk/; revision=517
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:40 +0000 (12:34 +0000)]
More docs for MediaContainer.
svn path=/trunk/; revision=516
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:36 +0000 (12:34 +0000)]
Update ContentDir docs.
svn path=/trunk/; revision=515
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:32 +0000 (12:34 +0000)]
No need for all methods in ContentDir to be protected virtual.
svn path=/trunk/; revision=514
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:28 +0000 (12:34 +0000)]
Move most of ContentDirectory implementation into the base class.
The only method that derived classes need to implement now is
'create_root_container'.
svn path=/trunk/; revision=513
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:24 +0000 (12:34 +0000)]
Separate class for Test root container.
Most implementation is now in this class rather than TestContentDir.
svn path=/trunk/; revision=512
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:21 +0000 (12:34 +0000)]
Separate class for Tracker's root container.
Most implementation is now in this class rather than MediaTracker.
svn path=/trunk/; revision=511
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:17 +0000 (12:34 +0000)]
Get rid of unused search parser object.
svn path=/trunk/; revision=510
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:13 +0000 (12:34 +0000)]
Separate class for DVB's root container.
Most implementation is now in this class rather than DVBContentDirectory.
svn path=/trunk/; revision=509
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:09 +0000 (12:34 +0000)]
Add get_children & find_object_by_id methods to MediaContainer.
svn path=/trunk/; revision=508
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:05 +0000 (12:34 +0000)]
Create the HTTPServer before Root container.
svn path=/trunk/; revision=507
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:34:01 +0000 (12:34 +0000)]
Root container is now created by ContentDir implementations.
svn path=/trunk/; revision=506
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:57 +0000 (12:33 +0000)]
MediaContainer derivates must implement find_object_by_id method.
svn path=/trunk/; revision=505
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:53 +0000 (12:33 +0000)]
MediaContainer derivates must implement get_children method.
svn path=/trunk/; revision=504
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:49 +0000 (12:33 +0000)]
Fix a typo in last release announcement.
svn path=/trunk/; revision=503
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:45 +0000 (12:33 +0000)]
No need to provide any equality function to ArrayList.
svn path=/trunk/; revision=502
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:41 +0000 (12:33 +0000)]
DVBChannelGroup:get_channels does the slicing.
DVBChannelGroup:get_channels does the slicing rather than DVBContentDir.
svn path=/trunk/; revision=501
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:37 +0000 (12:33 +0000)]
DVBChannelGroup keeps an ArrayList of channels.
svn path=/trunk/; revision=500
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:32 +0000 (12:33 +0000)]
Update ContentDirectory docs.
svn path=/trunk/; revision=499
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:28 +0000 (12:33 +0000)]
ContentDirectory.get_*_children() returns a Gee.List.
svn path=/trunk/; revision=498
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:24 +0000 (12:33 +0000)]
Always slice the browse results.
svn path=/trunk/; revision=497
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:20 +0000 (12:33 +0000)]
Drop slice_object_list() in favor of Gee.List.slice().
svn path=/trunk/; revision=496
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:16 +0000 (12:33 +0000)]
Remove now unneeded TrackerContainer.add_item_from_db.
svn path=/trunk/; revision=495
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:12 +0000 (12:33 +0000)]
Save ContentDir implementations from handling HTTPServer.item_requested.
svn path=/trunk/; revision=494
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:08 +0000 (12:33 +0000)]
HTTPServer doesn't print warning when item is not found.
svn path=/trunk/; revision=493
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:33:04 +0000 (12:33 +0000)]
Free ContentDirectory implementations from DIDL-Lite handling.
svn path=/trunk/; revision=492
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:59 +0000 (12:32 +0000)]
Separate out search and serialization in Test plugin.
svn path=/trunk/; revision=491
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:55 +0000 (12:32 +0000)]
Separate out search and serialization in DVB plugin.
svn path=/trunk/; revision=490
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:51 +0000 (12:32 +0000)]
Refactor: Put slicing of ArrayList into a separate method.
This should really be moved to ArrayList implementation.
svn path=/trunk/; revision=489
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:47 +0000 (12:32 +0000)]
Remove some forgotten redundant code.
svn path=/trunk/; revision=488
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:43 +0000 (12:32 +0000)]
Separate out search and serialization of root container in MediaTracker.
svn path=/trunk/; revision=487
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:38 +0000 (12:32 +0000)]
Separate out search and serialization in Tracker plugin.
svn path=/trunk/; revision=486
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:34 +0000 (12:32 +0000)]
MediaTracker serializes the children rather than TrackerContainer.
svn path=/trunk/; revision=485
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:29 +0000 (12:32 +0000)]
get_children_from_db returns children objects rather than paths.
svn path=/trunk/; revision=484
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:23 +0000 (12:32 +0000)]
Minor clean-up/move.
svn path=/trunk/; revision=483
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:17 +0000 (12:32 +0000)]
Duplicate common DIDLLiteResource fields in MediaItem.
This is to save typical plugin developer from the knowlege of
DIDLLiteResource. Next we need to make sure he doesn't need to know about
DIDL-Lite at all.
svn path=/trunk/; revision=482
Zeeshan Ali (Khattak) [Wed, 28 Jan 2009 12:32:10 +0000 (12:32 +0000)]
Decide priority based on requested transfer mode.
svn path=/trunk/; revision=481
Zeeshan Ali (Khattak) [Tue, 27 Jan 2009 22:38:34 +0000 (22:38 +0000)]
Revert "Merge branch 'easy-plugin'."
This reverts commit
88acdc44b8a8d97b39427509b3e18f71bce0340a.
Please ignore this and the previous commit. They resulted out of the
combination of my ignorance and git-svn greatness.
svn path=/trunk/; revision=480
Zeeshan Ali (Khattak) [Tue, 27 Jan 2009 17:22:51 +0000 (17:22 +0000)]
Merge branch 'easy-plugin'.
Conflicts:
NEWS
src/plugins/dvb/rygel-dvb-content-dir.vala
src/plugins/test/rygel-test-content-dir.vala
src/plugins/tracker/rygel-media-tracker.vala
src/rygel/rygel-content-directory.vala
src/rygel/rygel-seekable-response.vala
svn path=/trunk/; revision=479
Zeeshan Ali (Khattak) [Sat, 24 Jan 2009 17:20:24 +0000 (17:20 +0000)]
Explicitly build/link against libuuid.
Fixes the build on fedora 10 (bug#568987).
svn path=/trunk/; revision=478
Zeeshan Ali (Khattak) [Tue, 20 Jan 2009 11:21:42 +0000 (11:21 +0000)]
Post release version bump.
svn path=/trunk/; revision=477
Zeeshan Ali (Khattak) [Tue, 20 Jan 2009 11:21:38 +0000 (11:21 +0000)]
Switch back to Tracker trunk API.
This reverts commit
a450ef33135fff17a4701fee955dc6e371b74347.
svn path=/trunk/; revision=476
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:43 +0000 (21:53 +0000)]
Minor change in the NEWS file.
svn path=/trunk/; revision=473
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:38 +0000 (21:53 +0000)]
Create the groups ArrayList before any dbus calls.
Work around for a crasher bug caused by missing null-check in Vala.
svn path=/trunk/; revision=472
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:34 +0000 (21:53 +0000)]
Distribute vapi source files as well.
svn path=/trunk/; revision=471
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:29 +0000 (21:53 +0000)]
DVB plugin uses gstreamer-0.10 package.
svn path=/trunk/; revision=470
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:25 +0000 (21:53 +0000)]
Prepare NEWS file for next (0.2) release.
svn path=/trunk/; revision=469
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:21 +0000 (21:53 +0000)]
Revert "Use the new Tracker interface."
This reverts commit
3fc46a4e4802992b18e30af3a7b5b4e4c46bc953.
svn path=/trunk/; revision=468
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 21:53:16 +0000 (21:53 +0000)]
Version bump.
svn path=/trunk/; revision=467
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:46 +0000 (15:56 +0000)]
Refer to Rygel by name in License headers.
This is as per the GNU guidelines.
svn path=/trunk/; revision=466
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:41 +0000 (15:56 +0000)]
Refer to LGPL by it's (not so) new name.
svn path=/trunk/; revision=465
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:35 +0000 (15:56 +0000)]
Relicense under LGPL version 2.
svn path=/trunk/; revision=464
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:30 +0000 (15:56 +0000)]
Require latest vala, gupnp and gupnp-av.
svn path=/trunk/; revision=463
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:26 +0000 (15:56 +0000)]
configure options for disabling dvb and tracker plugins.
svn path=/trunk/; revision=462
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:22 +0000 (15:56 +0000)]
Don't use underscores in configure options.
svn path=/trunk/; revision=461
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:10 +0000 (15:56 +0000)]
Correctly initialize the responses array list.
svn path=/trunk/; revision=460
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:06 +0000 (15:56 +0000)]
Rename StreamingResponse to LiveResponse.
svn path=/trunk/; revision=459
Zeeshan Ali (Khattak) [Mon, 19 Jan 2009 15:56:02 +0000 (15:56 +0000)]
Rename InteractiveResponse to SeekableResponse.
This is because we'll be using SeekableResponse for streaming and background
transfer as well in the very near future.
svn path=/trunk/; revision=458
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:28:23 +0000 (19:28 +0000)]
Remove MetadataExtractor class.
We'll use libowl-av's TagReader.
svn path=/trunk/; revision=457
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:28:18 +0000 (19:28 +0000)]
Use Gee.ArrayList instead of GLib.List to keep DIDLLiteResource instances.
svn path=/trunk/; revision=456
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:28:13 +0000 (19:28 +0000)]
Close the InputStream asynchronously.
svn path=/trunk/; revision=455
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:28:09 +0000 (19:28 +0000)]
Explicitly close the input stream.
svn path=/trunk/; revision=454
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:28:04 +0000 (19:28 +0000)]
Merge branch 'leak-tests' into streamer-renaming
svn path=/trunk/; revision=453
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:58 +0000 (19:27 +0000)]
Remove blank lines.
svn path=/trunk/; revision=452
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:54 +0000 (19:27 +0000)]
HTTPResponse.end takes HTTP status code to put on the message.
This is to allow the users/subclasses to be always able to end the stream
using the same single method.
svn path=/trunk/; revision=451
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:49 +0000 (19:27 +0000)]
InteractiveResponse reports partial replies.
svn path=/trunk/; revision=450
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:44 +0000 (19:27 +0000)]
More extensive use of (async) GIO.
svn path=/trunk/; revision=449
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:40 +0000 (19:27 +0000)]
Seek class should reside in the same place as HTTPResponse.
svn path=/trunk/; revision=448
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:35 +0000 (19:27 +0000)]
Put Interactive response handling into a separate class.
svn path=/trunk/; revision=447
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:31 +0000 (19:27 +0000)]
Small beautification change.
svn path=/trunk/; revision=446
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:26 +0000 (19:27 +0000)]
Rename 'eos' signal of HTTPResponse to 'ended'.
svn path=/trunk/; revision=445
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:22 +0000 (19:27 +0000)]
Rename GstStream to StreamingResponse.
svn path=/trunk/; revision=444
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:17 +0000 (19:27 +0000)]
Rename Steam to HTTPResponse.
svn path=/trunk/; revision=443
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:27:11 +0000 (19:27 +0000)]
Rename Streamer to HTTPServer.
svn path=/trunk/; revision=442
Zeeshan Ali (Khattak) [Sun, 18 Jan 2009 19:26:59 +0000 (19:26 +0000)]
GstStream decides about chunking of message.
svn path=/trunk/; revision=441
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:35 +0000 (14:33 +0000)]
Handle item as interactive if it's size is known.
svn path=/trunk/; revision=440
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:32 +0000 (14:33 +0000)]
Don't handle seeking when streaming.
Turns out that seeking wasn't as simple as sending a seek event
to the pipeline.
svn path=/trunk/; revision=439
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:29 +0000 (14:33 +0000)]
Flush the AsyncQueue when the stream ends.
svn path=/trunk/; revision=438
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:25 +0000 (14:33 +0000)]
Use try_pop() instead of blocking pop() on AsyncQueue.
svn path=/trunk/; revision=437
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:22 +0000 (14:33 +0000)]
Only seek on upstream state change to PAUSED.
svn path=/trunk/; revision=436
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:18 +0000 (14:33 +0000)]
Add an auto-updated length property to Seek.
Seek now derives from GLib.Object.
svn path=/trunk/; revision=435
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:14 +0000 (14:33 +0000)]
offset in a file should be less than length of the file.
svn path=/trunk/; revision=434
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:10 +0000 (14:33 +0000)]
Use pointers for dealing with raw data instead of strings.
svn path=/trunk/; revision=433
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:06 +0000 (14:33 +0000)]
No need to use GUPnP namespace everywhere.
svn path=/trunk/; revision=432
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:33:03 +0000 (14:33 +0000)]
Claim DLNA BG transfer mode for known-sized items.
svn path=/trunk/; revision=431
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:59 +0000 (14:32 +0000)]
Check only prefix of MediaItem.upnp_class.
svn path=/trunk/; revision=430
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:56 +0000 (14:32 +0000)]
Always include Content-Range if size of item is known.
DLNA requirement 7.4.35.7.
svn path=/trunk/; revision=429
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:52 +0000 (14:32 +0000)]
Use a private class to pass around seek parameters.
Instead of passing around seek parameters to all functions, just create a
small class that keeps the parameters and use that.
svn path=/trunk/; revision=428
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:48 +0000 (14:32 +0000)]
GstStream overrides end() rather than providing stop().
svn path=/trunk/; revision=427
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:44 +0000 (14:32 +0000)]
Better error handling.
Stream should end itself if pads/elements don't get linked.
svn path=/trunk/; revision=426
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:41 +0000 (14:32 +0000)]
GstStream now inherits from Stream.
As a consequence, Streamer just uses GstStream only.
svn path=/trunk/; revision=425
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:36 +0000 (14:32 +0000)]
Remove unused Stream.accepted() method.
svn path=/trunk/; revision=424
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:33 +0000 (14:32 +0000)]
Go to PAUSED state first and then PLAYING.
This is to ensure that seek event is sent to pipeline before it goes to
PLAYING state. This could be the solution to mp3 not working on PS3.
svn path=/trunk/; revision=423
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:29 +0000 (14:32 +0000)]
GstStream provides means to start and stop the stream.
svn path=/trunk/; revision=422
Zeeshan Ali (Khattak) [Tue, 13 Jan 2009 14:32:25 +0000 (14:32 +0000)]
Range header doesn't necessarily imply partial content request.
svn path=/trunk/; revision=421