Jens Georg [Sat, 30 Jan 2010 20:43:35 +0000 (21:43 +0100)]
media-db: MediaDBContainer mustn't know about DB internals
Jens Georg [Sat, 30 Jan 2010 22:30:41 +0000 (23:30 +0100)]
media-db,media-export: Get rid of static initializers
Jens Georg [Sat, 30 Jan 2010 18:20:20 +0000 (19:20 +0100)]
media-db: Minor coding style fixes
Zeeshan Ali (Khattak) [Sat, 13 Mar 2010 02:06:37 +0000 (04:06 +0200)]
tests: Catch the exact error
Latest valac spits a warning on this but thats OK since the warning is
bogus and this is already fixed in vala git master.
Zeeshan Ali (Khattak) [Sat, 13 Mar 2010 02:05:00 +0000 (04:05 +0200)]
tests: Keep all classes private in HTTPItemURITest
Zeeshan Ali (Khattak) [Thu, 11 Mar 2010 15:02:56 +0000 (17:02 +0200)]
tests: Add unit-test for HTTPResponse
Zeeshan Ali (Khattak) [Wed, 10 Mar 2010 16:06:58 +0000 (18:06 +0200)]
tests: Add copyright header to ItemURITest
Zeeshan Ali (Khattak) [Wed, 10 Mar 2010 16:06:32 +0000 (18:06 +0200)]
core: Update copyright header
Zeeshan Ali (Khattak) [Wed, 10 Mar 2010 15:54:17 +0000 (17:54 +0200)]
tests: Skip the test if network is not available
Zeeshan Ali (Khattak) [Wed, 10 Mar 2010 14:01:21 +0000 (16:01 +0200)]
build: Provide direct link to Rygel's bugzilla
Zeeshan Ali (Khattak) [Sun, 7 Mar 2010 19:48:17 +0000 (21:48 +0200)]
build,tests: First unit test
Add unit test for HTTPItemURI. This also includes the needed build setup.
Zeeshan Ali (Khattak) [Mon, 8 Mar 2010 16:55:01 +0000 (18:55 +0200)]
core: More self-consistent API for HTTPItemURI
Both constructors should take HTTPServer as argument and keep it's
reference since it's always needed in a method.
Zeeshan Ali (Khattak) [Tue, 2 Mar 2010 13:32:04 +0000 (15:32 +0200)]
tracker: 'upload_dir' is nullable
We get the value for this from Environment.get_user_special_dir(),
dynamically and it could very well be null. Fixes a potential crash.
Cyrille Chepelov [Mon, 1 Mar 2010 13:16:06 +0000 (14:16 +0100)]
core: Avoid 'this' before chaining-up to other constructors
Instead of using 'this' keyword (that will segfault as its being used
before chaining-up to other contstructor) just make copy_str_list()
static instead.
Signed-off-by: Cyrille Chepelov <cyrille.chepelov@keyconsulting.fr>
Zeeshan Ali (Khattak) [Tue, 23 Feb 2010 15:52:55 +0000 (17:52 +0200)]
core: Release announcement for 0.5.0
Jens Georg [Sat, 20 Feb 2010 16:26:13 +0000 (17:26 +0100)]
media-export: Cancel harvester before starting new one
When uploading or changing files, multiple CHANGES_DONE event hints may be
sent. With this commit the already running harvester is cancelled and a
new one is started on this occasion.
Jens Georg [Sat, 20 Feb 2010 16:25:33 +0000 (17:25 +0100)]
media-export: Don't modify DB if harvester was cancelled
Jens Georg [Sat, 20 Feb 2010 16:25:08 +0000 (17:25 +0100)]
media-export: Message & signal if harvesting not needed
Emit a console message and signal if file does not need harvesting.
Jens Georg [Sat, 20 Feb 2010 16:14:23 +0000 (17:14 +0100)]
media-export: Make harvester cancellable
Andreas Henriksson [Sat, 20 Feb 2010 08:26:53 +0000 (09:26 +0100)]
core: Fix desktop file
Correct service name and add a comment.
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 15:55:18 +0000 (17:55 +0200)]
tracker: Descriptive IDs for containers
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 15:53:40 +0000 (17:53 +0200)]
tracker: Tags & Years create their own IDs
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 15:26:30 +0000 (17:26 +0200)]
tracker: No need to search for newly created item
After creating the item we were searching for it only to find out it's
UPnP ID but now that we have a method to get the id given the URN (tracker
ID), we can avoid this search & therefore a D-Bus round-trip.
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 15:13:36 +0000 (17:13 +0200)]
tracker: Add method for child ID creation from URN
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 15:03:05 +0000 (17:03 +0200)]
tracker: Move add_item() to CategoryAllContainer
Move add_item implementation to CategoryAllContainer. The item was being
added to these containers in the end anyway so why not be honest and add
the item in the container for which the client sends the item addition
request.
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 14:25:36 +0000 (16:25 +0200)]
tracker: Seperate class of "All" container
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 13:34:03 +0000 (15:34 +0200)]
tracker: CategoryContainer creates "All" container
Since "All" child is created/added by all category containers, why not
create/add it in the base CategoryContainer class?
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 12:30:00 +0000 (14:30 +0200)]
core: Refactor two new methods of ContentDirectory
Refactor get_transfer_progress_cb & stop_transfer_resource_cb methods of
ContentDirectory.
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 12:17:12 +0000 (14:17 +0200)]
core: Implement StopTransferResource action of CDS
Zeeshan Ali (Khattak) [Fri, 19 Feb 2010 12:16:22 +0000 (14:16 +0200)]
core: ImportResource keeps its own Cancellable object
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 17:41:31 +0000 (19:41 +0200)]
core: Don't forget to signal completion in case of error
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 17:41:08 +0000 (19:41 +0200)]
core: Implement GetTransferProgress action of CDS
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 17:47:03 +0000 (19:47 +0200)]
core: Make transfer statistics public
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 17:38:24 +0000 (19:38 +0200)]
core: Use enum to represent transfer status
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 15:19:40 +0000 (17:19 +0200)]
core: Minor refactoring of ContentDirectory class
Keep private non-callback methods at the end of the class definition.
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 14:57:06 +0000 (16:57 +0200)]
core: Provide "TransferIDs" state variable
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 14:54:58 +0000 (16:54 +0200)]
core: ContentDirectory keeps a list of active imports
Zeeshan Ali (Khattak) [Thu, 18 Feb 2010 13:34:43 +0000 (15:34 +0200)]
core: Implement ImportResource action of CDS
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 11:03:23 +0000 (13:03 +0200)]
tracker: Refactor ItemCreation.run()
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:48:59 +0000 (12:48 +0200)]
tracker: Follow recommended way for item creation
Follow the instructions on the following page to create new item:
http://live.gnome.org/Tracker/Discussion/DirectNotification (Skip to
"Example for a UPnP Server).
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:38:59 +0000 (12:38 +0200)]
tracker: Keep "All" container as the first one in the list
This is to improve the performance of searches. If the items being
searched are all in the same category (e.g give me all songs from
Michael Jackson & Madona), they will all be present in "All" search
container and we can fetch them all using only one D-Bus method.
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:34:04 +0000 (12:34 +0200)]
tracker: Bind Tracker1.Miner.IgnoreNextUpdate method
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:26:53 +0000 (12:26 +0200)]
tracker: Support for search by URI
SearchContainer should be able to handle search requests for URIs.
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:19:39 +0000 (12:19 +0200)]
tracker: Chain-up of async methods now possible
search method can now chain-up since bug#601558 is fixed.
Zeeshan Ali (Khattak) [Wed, 17 Feb 2010 10:04:31 +0000 (12:04 +0200)]
tracker: Use correct Sparql query for insertion
- Use SparqlUpdateBlank rather than SparqlUpdate.
- Provide all necessary tripplets.
- Actual ID (URN) is assigned by Tracker.
Zeeshan Ali (Khattak) [Mon, 15 Feb 2010 13:46:44 +0000 (15:46 +0200)]
tracker: Adapt to Tracker API changes
- URLs are not necessarily the same as item IDs (URN) anymore.
- "nmm:length" has been replaced by "nfo:duration".
Zeeshan Ali (Khattak) [Sun, 14 Feb 2010 17:17:06 +0000 (19:17 +0200)]
media-export: Console message when harvesting is done
Zeeshan Ali (Khattak) [Sun, 14 Feb 2010 16:34:30 +0000 (18:34 +0200)]
media-export: Remove redundant null check
Zeeshan Ali (Khattak) [Sun, 14 Feb 2010 15:30:27 +0000 (17:30 +0200)]
media-export: Initialize fields in constructor only
We shouldn't be doing anything other than instantiation in singleton's
instance getter static method.
Jens Georg [Mon, 8 Feb 2010 10:10:52 +0000 (11:10 +0100)]
media-export: Implement MediaContainer.add_item()
MediaExport now has it's own implementation of MediaContainer that is
specifically meant for adding a complete add_item() implementation to
MediaDBContainer.
Jens Georg [Mon, 8 Feb 2010 10:10:07 +0000 (11:10 +0100)]
media-export: add curstom object factory
Jens Georg [Sun, 31 Jan 2010 15:48:20 +0000 (16:48 +0100)]
media-db: Leverage SQL to update meta-data
Zeeshan Ali (Khattak) [Sat, 6 Feb 2010 13:39:29 +0000 (15:39 +0200)]
tracker: Implement MediaContainer.add_item()
Make sure the new created item goes into the tracker DB and rygel gets
it's actual ID.
Zeeshan Ali (Khattak) [Sat, 6 Feb 2010 12:40:56 +0000 (14:40 +0200)]
tracker: Result of query is kept in the instance
Don't return the result of query from execute() method but keep it in an
instance field since it can be different for differnt types of queries.
Zeeshan Ali (Khattak) [Thu, 4 Feb 2010 16:07:39 +0000 (18:07 +0200)]
tracker: CategoryContainer keeps relavent ItemFactory
CategoryContainer keeps reference to relavent ItemFactory instance.
Zeeshan Ali (Khattak) [Thu, 4 Feb 2010 16:01:29 +0000 (18:01 +0200)]
tracker: ItemFactory provides 'upload_dir'
ItemFactory implementations should provide upload directory path.
Zeeshan Ali (Khattak) [Wed, 3 Feb 2010 15:19:48 +0000 (17:19 +0200)]
tracker: Refined class hierarchy for Tracker queries
Now we have two classes to represent a tracker query: TrackerQuery &
TrackerSelectionQuery.
Zeeshan Ali (Khattak) [Wed, 3 Feb 2010 14:00:29 +0000 (16:00 +0200)]
tracker: Base class for category containers
Zeeshan Ali (Khattak) [Sat, 6 Feb 2010 13:27:07 +0000 (15:27 +0200)]
core: Don't forget to put URI into new MediaItem
MediaContainer.add_item puts URI into newly created MediaItem.
Zeeshan Ali (Khattak) [Sat, 6 Feb 2010 13:05:29 +0000 (15:05 +0200)]
core: Modify error message to avoid potential crash
Zeeshan Ali (Khattak) [Tue, 2 Feb 2010 15:57:29 +0000 (17:57 +0200)]
core: Minor refactor
Zeeshan Ali (Khattak) [Fri, 29 Jan 2010 14:28:31 +0000 (16:28 +0200)]
core: Handle case of no ID during item URI parsing
Zeeshan Ali (Khattak) [Thu, 28 Jan 2010 21:46:24 +0000 (23:46 +0200)]
core: Handle HTTP Post requests
Zeeshan Ali (Khattak) [Thu, 28 Jan 2010 09:41:30 +0000 (11:41 +0200)]
core: Separate class for HTTP GET request
More generalization so that we can easily implement request and request
handler classes for other HTTP methods (e.g POST). This change also
implies renaming of HTTPRequestHander to HTTPGetHandler.
Zeeshan Ali (Khattak) [Mon, 1 Feb 2010 14:55:57 +0000 (16:55 +0200)]
core: Move get_writable method to MediaObject
Move get_writable method from MediaContainer to MediaObject.
Zeeshan Ali (Khattak) [Wed, 27 Jan 2010 17:47:40 +0000 (19:47 +0200)]
core: Micro coding-style fix
Zeeshan Ali (Khattak) [Tue, 26 Jan 2010 15:39:56 +0000 (17:39 +0200)]
core: Implement 'CreateObject' action of CDS
Currently we can only deal with 'no URI provided' case, i-e upload but OTOH
actual uploading isn't implemented yet. :)
Zeeshan Ali (Khattak) [Tue, 26 Jan 2010 15:36:00 +0000 (17:36 +0200)]
core: Add MediaContainer.get_writable()
A new method that fetches a GLib.File object for any writable URI
available for the container.
Zeeshan Ali (Khattak) [Tue, 26 Jan 2010 15:03:15 +0000 (17:03 +0200)]
core: Support for 'place holder' items
Items could be marked as 'place holder'. It means items that do not yet
have any media (empty) available for them.
Zeeshan Ali (Khattak) [Tue, 26 Jan 2010 15:00:57 +0000 (17:00 +0200)]
core: Provide 'importUri' for all items
Zeeshan Ali (Khattak) [Tue, 26 Jan 2010 14:53:24 +0000 (16:53 +0200)]
core: Use 'this' keyword for more readable code
Zeeshan Ali (Khattak) [Mon, 25 Jan 2010 16:57:27 +0000 (18:57 +0200)]
core: HTTItemURI creates the whole URI
Some parts of URI creation was still in HTTPServer.
Zeeshan Ali (Khattak) [Mon, 25 Jan 2010 16:28:00 +0000 (18:28 +0200)]
core: HTTPItemURI gets HTTPServer reference
HTTPItemURI gets reference to associated HTTPServer instance.
Zeeshan Ali (Khattak) [Mon, 25 Jan 2010 16:21:49 +0000 (18:21 +0200)]
core: Micro indentation fix
Zeeshan Ali (Khattak) [Mon, 25 Jan 2010 16:18:58 +0000 (18:18 +0200)]
core: No need to pass around the protocol string
Zeeshan Ali (Khattak) [Wed, 20 Jan 2010 15:44:20 +0000 (17:44 +0200)]
core: Containers without URIs are 'restricted'
Zeeshan Ali (Khattak) [Wed, 20 Jan 2010 15:07:39 +0000 (17:07 +0200)]
tracker: Category containers provide URIs
Category containers (Music, Videos, Pictures) should provides URIs
to user's special directories.
Zeeshan Ali (Khattak) [Wed, 3 Feb 2010 13:37:46 +0000 (15:37 +0200)]
core,mediathek: Adapt to new libxml VAPI
Philip Withnall [Sun, 31 Jan 2010 17:05:13 +0000 (17:05 +0000)]
core: A few fixes to satisfy latest valac (0.7.10)
Zeeshan Ali (Khattak) [Wed, 27 Jan 2010 14:32:52 +0000 (16:32 +0200)]
core: A bunch of coding-style fixes
Zeeshan Ali (Khattak) [Sun, 24 Jan 2010 01:49:36 +0000 (03:49 +0200)]
core: Restart application on SIGHUP
Zeeshan Ali (Khattak) [Sat, 23 Jan 2010 22:44:34 +0000 (00:44 +0200)]
core: Simplify HTTPRequest.handle_item_request()
Zeeshan Ali (Khattak) [Sat, 23 Jan 2010 22:13:58 +0000 (00:13 +0200)]
core: Micro coding-style fix
Zeeshan Ali (Khattak) [Sat, 23 Jan 2010 22:11:33 +0000 (00:11 +0200)]
core: Fix cancellation of SeekableResponse
We kept on waiting for libsoup to signal us that bytes sent have been
received by the client even after the client has already closed the
connection and libsoup had informed us about that.
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 17:39:20 +0000 (19:39 +0200)]
core: Clean-up MediaDBContainer code
Mostly minor coding-style fixes.
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 17:17:09 +0000 (19:17 +0200)]
core: Remove unneeded newline
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 17:16:29 +0000 (19:16 +0200)]
core: Better error message from SearchCriteriaParser
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 17:15:20 +0000 (19:15 +0200)]
core: Add string property to get current parser context
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 16:54:58 +0000 (18:54 +0200)]
core: Rename SearchCriteriaParser parsing methods
More descriptive name for SearchCriteriaParser parsing methods.
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 16:29:15 +0000 (18:29 +0200)]
core: Major refactoring of SearchCriteriaParser
- Rename Symbol to SearchCriteriaSymbol.
- Rename SearchCriteriaSymbol to SearchCriteriaToken.
- Add private prop to fetch current parser token as SearchCriteriaSymbol.
- No need to convert enum values to int everywhere.
- SearchCriteriaSymbol should also include symbols that are already covered by
GUPnP.SearchCriteriaOp but the common symbols must contain the same values.
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 14:46:57 +0000 (16:46 +0200)]
core: SearchCriteriaSymbol should be private
Zeeshan Ali (Khattak) [Thu, 7 Jan 2010 14:34:46 +0000 (16:34 +0200)]
core: No need for 'construct'
Jens Georg [Thu, 31 Dec 2009 01:39:49 +0000 (02:39 +0100)]
media-db: Use correct SQL function for "!="
Jens Georg [Sat, 21 Nov 2009 13:47:37 +0000 (14:47 +0100)]
media-db: Refactor search translator
Jens Georg [Sat, 21 Nov 2009 00:21:52 +0000 (01:21 +0100)]
media-db: Rename get_children_with_filter
The function is not fetching children but arbitrary objects.
Jens Georg [Sat, 21 Nov 2009 00:21:04 +0000 (01:21 +0100)]
media-db: Return empty result on unknown criteria
Jens Georg [Fri, 20 Nov 2009 23:54:04 +0000 (00:54 +0100)]
media-db: No need to reparent
Jens Georg [Fri, 20 Nov 2009 21:26:30 +0000 (22:26 +0100)]
media-db: Implement search on MediaDBContainer
This features a first draft of translation from SearchExpression to an SQL
where clause.
Jens Georg [Sat, 2 Jan 2010 18:53:41 +0000 (19:53 +0100)]
core: Rewrite SearchCriteriaParser
This is a rewrite of SearchCriteriaParser to use GScanner directly
Zeeshan Ali (Khattak) [Tue, 19 Jan 2010 15:00:37 +0000 (17:00 +0200)]
core: Correct condition for byte-seeking
We were trying to byte-seek even in case of transcoding.