beagle r3869 - in trunk/beagle: BeagleClient beagled beagled/FileSystemQueryable beagled/KonversationQueryable beagled/KopeteQueryable beagled/PidginQueryable



Author: dbera
Date: 2007-08-20 13:45:27 +0100 (Mon, 20 Aug 2007)
New Revision: 3869
ViewCVS link: http://svn.gnome.org/viewcvs/beagle?rev=3869&view=rev

Modified:
   trunk/beagle/BeagleClient/Snippet.cs
   trunk/beagle/beagled/ExternalMetadataQueryable.cs
   trunk/beagle/beagled/FileSystemQueryable/FileSystemQueryable.cs
   trunk/beagle/beagled/IQueryable.cs
   trunk/beagle/beagled/KonversationQueryable/KonversationQueryable.cs
   trunk/beagle/beagled/KopeteQueryable/KopeteQueryable.cs
   trunk/beagle/beagled/LuceneQueryable.cs
   trunk/beagle/beagled/PidginQueryable/PidginQueryable.cs
   trunk/beagle/beagled/Queryable.cs
   trunk/beagle/beagled/SnippetExecutor.cs
   trunk/beagle/beagled/SnippetFu.cs
   trunk/beagle/beagled/SnippetTest.cs
   trunk/beagle/beagled/StaticQueryable.cs
Log:
Rework snippeting.
* Instead of sending a formatted string, break a snippet into logical components and send them without any formatting. See BeagleClient/Snippet.c:SnippetList for the new structure. No formatting done at beagled's end, but enough hint left in the snippet structure for clients to be able to do their own formatting. Also, return a line number for each line that produced a snippet. Pretty much all thte information beagled could have about snippets are sent back.
* Provide a 'string snippet' property that returns a formatted string for backward compatibility. Existing clients should work ok.
* Partly rewrite snippet extraction, minimizing rescanning the same string more than once. As a side effect, the actual extraction of the snippets is delayed till the serialization of snippet_response. GetSnippet simply returns a SnippetReader, which when serialized, extracts the string on-the-fly.
* Add a "FullText" option to SnippetRequest, which if set, returns the entire (cached) text of the Hit. For performance reason, marking of query terms in the full text is disabled (for now, maybe forever). Surprisingly, a largest possible textcache file takes almost no extra time to reach the client.




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