Zeeshan Ali (Khattak) [Mon, 11 Jan 2010 16:57:57 +0000 (18:57 +0200)]
core: Handle message abortion in HTTPServer
Handle message abortion in HTTPServer rather than HTTPResponse so that
requests could be aborted even early in their life-cycle and to simplify
the code by maximizing the use of GIO.Cancellable. This also fixes the
strange critical when aborting LiveResponse.
Zeeshan Ali (Khattak) [Mon, 11 Jan 2010 16:55:33 +0000 (18:55 +0200)]
core: HTTPRequest now uses it's own Cancellable
HTTPRequest now uses it's own Cancellable rather than that of HTTPServer.
Zeeshan Ali (Khattak) [Mon, 11 Jan 2010 16:54:47 +0000 (18:54 +0200)]
core: HTTPServer keeps a list of active requests
Zeeshan Ali (Khattak) [Tue, 5 Jan 2010 18:10:07 +0000 (20:10 +0200)]
Enable check for Vala if any stamp file is absent
Enable check for Vala even if not asked to do so if any of the stamp files
are absent.
Zeeshan Ali (Khattak) [Tue, 5 Jan 2010 17:50:46 +0000 (19:50 +0200)]
core: Fix condition for partial content transfer
Zeeshan Ali (Khattak) [Tue, 29 Dec 2009 15:58:03 +0000 (17:58 +0200)]
build: Correct linker argument order
This should fix the build issue on Gentoo.
Zeeshan Ali (Khattak) [Mon, 4 Jan 2010 00:28:15 +0000 (02:28 +0200)]
core,ui,plugins: Work-around for automake bug
According to Nathan: It scrapes VALAFLAGS looking for options which
specify files, like -H or, significantly, --gir. Unfortunately, rather
than actually checking correctly, it does it in a weird "why did anybody
ever think that was the right thing to do?" kind of way. It has a list of
flags which specify files, and then if a flag is a substring of any of
those flags, it is considered to actually be one. So it mistakes "-g" for
"--gir" and assumes the following argument should be included when you
make dist. Until automake is fixed, you can fool it by putting -g at the
end of VALAFLAGS.
Jens Georg [Sat, 2 Jan 2010 20:25:24 +0000 (21:25 +0100)]
core: Limit search slice to result size
This prevents a crtitcal on search.
Zeeshan Ali (Khattak) [Sun, 3 Jan 2010 00:19:14 +0000 (02:19 +0200)]
core: Fix a spelling mistake in error message
Zeeshan Ali (Khattak) [Mon, 28 Dec 2009 16:12:32 +0000 (18:12 +0200)]
core: Throw error on invalid URI
Zeeshan Ali (Khattak) [Mon, 28 Dec 2009 16:07:28 +0000 (18:07 +0200)]
core: Clean-up & indent recently added code
Zeeshan Ali (Khattak) [Mon, 28 Dec 2009 16:03:46 +0000 (18:03 +0200)]
core: Rename ItemUri to HTTPItemURI
Jens Georg [Mon, 7 Dec 2009 14:31:53 +0000 (15:31 +0100)]
core: encode itemID base64
We need to encode the itemID base64 since it might contain slashes but the
context's HTTP server is created without SOUP_SERVER_RAW_PATHS enabled which
translates the URI encoded slashes to real slashes before handing the request
to us.
Jens Georg [Sat, 5 Dec 2009 02:49:09 +0000 (03:49 +0100)]
core: Fix uri creation and parsing
Jens Georg [Sat, 5 Dec 2009 02:30:16 +0000 (03:30 +0100)]
core: Minor formatting fix
Jens Georg [Wed, 25 Nov 2009 10:38:03 +0000 (11:38 +0100)]
core: Move uri generating and parsing to own class
Jens Georg [Wed, 4 Nov 2009 11:52:48 +0000 (12:52 +0100)]
core: Modify URI generation scheme
Some UPnP devices cannot cope with urls containing GET parameters and just
skip everything after the "?". This commit modifies the uris to use different
paths instead of GET parameters.
Zeeshan Ali (Khattak) [Mon, 28 Dec 2009 15:41:57 +0000 (17:41 +0200)]
core,ui,plugins: Vala debugging symbols
Tell valac to put debugging symbols to generated code so gdb can refer to
lines in the Vala source code.
Yakup Akbay [Mon, 7 Dec 2009 09:18:21 +0000 (11:18 +0200)]
Fix typo in GetCurrentConnectionInfo action response.
This fixes failures for DLNA CTT test cases 7.2.14.2 and 7.2.14.3.
Zeeshan Ali (Khattak) [Tue, 22 Dec 2009 13:59:59 +0000 (15:59 +0200)]
build: Require latest vala release (0.7.10)
Zeeshan Ali (Khattak) [Wed, 23 Dec 2009 15:13:17 +0000 (17:13 +0200)]
tracker: Act on new config options
Now user can actually choose which kind of media she wants to share.
Zeeshan Ali (Khattak) [Wed, 23 Dec 2009 14:12:28 +0000 (16:12 +0200)]
tracker: Minor refactoring of SearchContainer
Group-up private and public methods.
Zeeshan Ali (Khattak) [Wed, 23 Dec 2009 14:05:26 +0000 (16:05 +0200)]
tracker: Update containers on changes to subjects
For the moment we are only doing this in MetadataValues but since all
top-level containers are instances of MetadataValues (or subclass), we
are safe.
Zeeshan Ali (Khattak) [Wed, 23 Dec 2009 13:51:38 +0000 (15:51 +0200)]
tracker: Bind Resources.Class D-Bus interface
Zeeshan Ali (Khattak) [Wed, 23 Dec 2009 13:49:37 +0000 (15:49 +0200)]
core: Add SimpleContainer.clear()
API for clearing the SimpleContainer.
Zeeshan Ali (Khattak) [Tue, 22 Dec 2009 15:34:32 +0000 (17:34 +0200)]
tracker: No need to create keychains on demand
This should give us some speed boost.
Zeeshan Ali (Khattak) [Mon, 21 Dec 2009 18:17:55 +0000 (20:17 +0200)]
tracker: Simplified handling of nested properties
Simplified handling of nested properties using new chainable triplets and
recursion.
Zeeshan Ali (Khattak) [Mon, 21 Dec 2009 18:09:01 +0000 (20:09 +0200)]
tracker: Allow triplets to be chainable
Allow a triplet to have another triplet as it's object.
Zeeshan Ali (Khattak) [Mon, 21 Dec 2009 13:22:12 +0000 (15:22 +0200)]
tracker: Avoid duplicate triplets
Zeeshan Ali (Khattak) [Fri, 11 Dec 2009 14:36:15 +0000 (16:36 +0200)]
tracker: Correct keychain for album and artist
Zeeshan Ali (Khattak) [Fri, 11 Dec 2009 14:23:10 +0000 (16:23 +0200)]
tracker: Item factory provides key chains, not keys
This is to allow item factories to provide complex (chained) properties.
Zeeshan Ali (Khattak) [Fri, 11 Dec 2009 13:10:05 +0000 (15:10 +0200)]
tracker: Remove unneeded 'using' statements
Zeeshan Ali (Khattak) [Fri, 11 Dec 2009 13:08:41 +0000 (15:08 +0200)]
tracker: Prefer ArrayList over vala arrays
Zeeshan Ali (Khattak) [Thu, 10 Dec 2009 18:16:27 +0000 (20:16 +0200)]
tracker: Correct a typo
Zeeshan Ali (Khattak) [Thu, 10 Dec 2009 18:04:08 +0000 (20:04 +0200)]
core: Use printf for creating TimeSeekRange string
Zeeshan Ali (Khattak) [Thu, 10 Dec 2009 16:10:51 +0000 (18:10 +0200)]
core: Always time-seek if not byte-seeking
Always time-seek if duration is known and byte-seek is not feasable.
Zeeshan Ali (Khattak) [Thu, 10 Dec 2009 16:08:30 +0000 (18:08 +0200)]
core: Duration needs conversion to nano-seconds
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 15:45:22 +0000 (17:45 +0200)]
core: Remove some uneeded checks
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 14:33:26 +0000 (16:33 +0200)]
core: No need for HTTPSeek.format anymore
Now that we have separate classes for both formats, this field is not
needed anymore.
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 13:35:19 +0000 (15:35 +0200)]
core: Rename a local variable for clarity
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 01:14:35 +0000 (03:14 +0200)]
core: Rename HTTPRequest.request_handler to handler
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 01:10:25 +0000 (03:10 +0200)]
core: Correct logic for decision to seek or not
Zeeshan Ali (Khattak) [Wed, 9 Dec 2009 01:08:20 +0000 (03:08 +0200)]
core: HTTPRequest.request_handler now public
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 23:34:36 +0000 (01:34 +0200)]
core: Move seeking decision to Seek classes
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 23:20:09 +0000 (01:20 +0200)]
core: Special seek classes for each format
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 17:20:58 +0000 (19:20 +0200)]
core: Always seek in case of byte seekable media
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 17:15:13 +0000 (19:15 +0200)]
core: HTTPRequest keeps only 1 instance of HTTPSeek
No need to keep two instances of seek when in reality we will only have
one of them for each HTTP request.
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 15:42:48 +0000 (17:42 +0200)]
core: HTTPSeek sets all related headers
HTTPSeek should be setting all headers related to seeking.
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 15:30:15 +0000 (17:30 +0200)]
core: Micro coding style fix
Zeeshan Ali (Khattak) [Tue, 8 Dec 2009 15:21:38 +0000 (17:21 +0200)]
core: More power to HTTPSeek
Now HTTPSeek is given HTTPRequest object and it extracts all needed info
from there at construction time and therefore there is no need to pass the
length and other args to it's add_response_headers method.
Zeeshan Ali (Khattak) [Mon, 7 Dec 2009 14:33:37 +0000 (16:33 +0200)]
core: Rename an HTTPSeek method
Rename HTTPSeek.add_response_header to add_response_headers.
Zeeshan Ali (Khattak) [Fri, 4 Dec 2009 18:44:16 +0000 (20:44 +0200)]
tracker: Provide "All" container for each category
Zeeshan Ali (Khattak) [Fri, 4 Dec 2009 18:05:22 +0000 (20:05 +0200)]
tracker: Provide 'Years' hierarchy
Enable user to browse pictures and videos by year of creation.
Zeeshan Ali (Khattak) [Fri, 4 Dec 2009 17:02:11 +0000 (19:02 +0200)]
tracker: Make sure ID's of children are unique
Make sure children of MetadataValues have unique IDs.
Zeeshan Ali (Khattak) [Fri, 4 Dec 2009 15:57:31 +0000 (17:57 +0200)]
tracker: Means to create ID from value
Provide API for users of MetadataValues to be able to create ID
from values.
Zeeshan Ali (Khattak) [Thu, 3 Dec 2009 17:34:26 +0000 (19:34 +0200)]
tracker: Means to create filter from variable & value
Provide API for users of MetadataValues to be able to create filter
given variable and value.
Zeeshan Ali (Khattak) [Thu, 3 Dec 2009 17:07:56 +0000 (19:07 +0200)]
tracker: Use filters to make search query specific
Zeeshan Ali (Khattak) [Thu, 3 Dec 2009 16:14:09 +0000 (18:14 +0200)]
tracker: Means to create title from value
Provide API for users of MetadataValues to be able to create title
from values.
Zeeshan Ali (Khattak) [Thu, 3 Dec 2009 14:57:14 +0000 (16:57 +0200)]
tracker: Correct filter syntax
Zeeshan Ali (Khattak) [Thu, 3 Dec 2009 13:43:35 +0000 (15:43 +0200)]
Revert "tracker: Get rid of SearchContainer().filter"
This reverts commit
626ba91d3bd570007bdb3dd54ed11d593b4a1f09.
Conflicts:
src/plugins/tracker/rygel-tracker-search-container.vala
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 18:19:20 +0000 (20:19 +0200)]
tracker: Tags is not specific to Photos any more
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 18:15:13 +0000 (20:15 +0200)]
tracker: Add 'Tags' hierarchy under Music
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 17:55:03 +0000 (19:55 +0200)]
tracker: Special container class for Videos
Currently we only provide a tags container inside videos but we should
at least be able to provide 'years' hierarchy under it.
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 14:55:00 +0000 (16:55 +0200)]
tracker: Move 'Tags' container into Pictures
This also implies 'Pictures' gets its own container class.
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 14:45:09 +0000 (16:45 +0200)]
tracker: Use term "picture" rather than "image"
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 14:31:48 +0000 (16:31 +0200)]
tracker: Correct search (for @id) logic
If a child item is being search for, the sparql query generated for it
must contain a filter to make the query specific for the requested item.
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 14:10:25 +0000 (16:10 +0200)]
tracker: Special hierarchy for Music
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 01:01:38 +0000 (03:01 +0200)]
tracker: Query executes itself
Zeeshan Ali (Khattak) [Wed, 2 Dec 2009 00:10:17 +0000 (02:10 +0200)]
tracker: Get rid of SearchContainer().filter
Zeeshan Ali (Khattak) [Tue, 1 Dec 2009 23:55:34 +0000 (01:55 +0200)]
tracker: Move TrackerQueryTriplet* to separate files
Move TrackerQueryTriplet and TrackerQueryTriplets to separate files.
Zeeshan Ali (Khattak) [Tue, 1 Dec 2009 23:49:45 +0000 (01:49 +0200)]
tracker: Rename TrackerKeywords to TrackerTags
Zeeshan Ali (Khattak) [Tue, 1 Dec 2009 23:31:03 +0000 (01:31 +0200)]
tracker: Sort query results by "fileLastModified"
Ask tracker to sort query results by "nfo:fileLastModified" since it's
much faster than sorting by URIs.
Zeeshan Ali (Khattak) [Tue, 1 Dec 2009 16:06:27 +0000 (18:06 +0200)]
tracker: No need to convert dates to ISO8601 anymore
Zeeshan Ali (Khattak) [Tue, 1 Dec 2009 00:00:09 +0000 (02:00 +0200)]
tracker: Tracker now deals in URIs not paths
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 23:46:51 +0000 (01:46 +0200)]
tracker: Privatize ItemFactory.seconds_to_iso8601()
This method is no longer useful to subclasses.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 23:43:58 +0000 (01:43 +0200)]
tracker: Only ask for relavent metadata
This is not just smart thing to do anyways as it will decrease D-Bus
traffic but is also necessary due to a bug in tracker.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 18:09:35 +0000 (20:09 +0200)]
tracker: Get rid of two redundant methods
- SearchContainer.create_item()
- ItemFactory.get_num_metadata_keys()
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 18:06:19 +0000 (20:06 +0200)]
tracker: 'upnp_class' now an item factory field
No need to pass 'upnp_class' to TrackerItemFactory.create() each time it's
called, just keep it in an instance field.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 17:52:33 +0000 (19:52 +0200)]
tracker: Container classes deal with item factories
Container classes should deal with item factories instead of categories.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 17:49:22 +0000 (19:49 +0200)]
tracker: Item factory should know it's category
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 16:34:47 +0000 (18:34 +0200)]
tracker: Implement factories rather than items
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 15:32:19 +0000 (17:32 +0200)]
tracker: Set title in base TrackerItem class
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 14:46:31 +0000 (16:46 +0200)]
tracker: Avoid copying of triplets when possible
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 14:44:21 +0000 (16:44 +0200)]
tracker: Pass triplets' clone to child container
Clone the triplets before passing it to child SearchContainer.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 14:20:35 +0000 (16:20 +0200)]
tracker: TrackerQuery.from_template -> clone
Replace contructor to create TrackerQuery from a template by a constructor
that makes the new instance a clone of the query provided as parameter.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 14:18:42 +0000 (16:18 +0200)]
tracker: Cloneable TrackerQueryTriplet*
Add ability to clone TrackerQueryTriplet and TrackerQueryTriplets.
Zeeshan Ali (Khattak) [Mon, 30 Nov 2009 13:48:45 +0000 (15:48 +0200)]
tracker: Separate class for list of triplets
Zeeshan Ali (Khattak) [Fri, 20 Nov 2009 23:31:59 +0000 (01:31 +0200)]
tracker: Initial port to 0.7 APIs
Zeeshan Ali (Khattak) [Thu, 19 Nov 2009 14:54:22 +0000 (16:54 +0200)]
core: Prepare NEWS file for release 0.4.6
Zeeshan Ali (Khattak) [Thu, 19 Nov 2009 14:39:58 +0000 (16:39 +0200)]
build: Require vala >= 0.7.9 (current git master)
Zeeshan Ali (Khattak) [Thu, 19 Nov 2009 12:54:46 +0000 (14:54 +0200)]
external: Safer slicing of get_children() results
Reported child count could be wrong and therefore it is not safe to
use that number when slicing the list of children.
Zeeshan Ali (Khattak) [Wed, 18 Nov 2009 16:14:05 +0000 (18:14 +0200)]
core: Make sure autostart dir exists
Make sure autostart dir exists before attempting to write to it.
Zeeshan Ali (Khattak) [Mon, 16 Nov 2009 23:15:42 +0000 (01:15 +0200)]
core: Sort MediaContainer methods by their visibility
Zeeshan Ali (Khattak) [Mon, 16 Nov 2009 17:15:31 +0000 (19:15 +0200)]
core: MediaContainer.find_object now internal
Plugins no longer need to provide implementation of this method. They
could override/implement search() instead if they need to.
Zeeshan Ali (Khattak) [Mon, 16 Nov 2009 15:25:32 +0000 (17:25 +0200)]
external: Handle search of particular direct child
If the search is for a particular direct child, better handle it in
the implementation as it will be more efficient. All other searches
are handled by base MediaContainer class.
Zeeshan Ali (Khattak) [Mon, 16 Nov 2009 18:15:39 +0000 (20:15 +0200)]
tracker: get_children() now based on search()
TrackerSearchContainer.get_children() now based on search() and therefore
much simpler.
Zeeshan Ali (Khattak) [Thu, 12 Nov 2009 16:35:18 +0000 (18:35 +0200)]
tracker: Remove now redundant metadata proxy
Zeeshan Ali (Khattak) [Thu, 12 Nov 2009 16:31:06 +0000 (18:31 +0200)]
tracker: Refactor create_query_from_expression()
Zeeshan Ali (Khattak) [Thu, 12 Nov 2009 16:16:39 +0000 (18:16 +0200)]
tracker: Make two method private
'create_item' and 'get_item_info' are now private methods.
Zeeshan Ali (Khattak) [Thu, 12 Nov 2009 15:43:30 +0000 (17:43 +0200)]
tracker: RDF op based on SearchExpression op
Create RDF query operator from SearchExpression operator.