Strigi Desktop integration        Flavio Castelli
Strigi desktop integration                            FOSDEM 2007           Why choose Strigi                             ...
Strigi desktop integration                             FOSDEM 2007           What can be done by Strigi                   ...
Strigi desktop integration                        FOSDEM 2007           How to interact with Strigi                Strigi ...
Strigi desktop integration                                  FOSDEM 2007           How to interact with Strigi             ...
Strigi desktop integration                      FOSDEM 2007           How to interact with Strigi                         ...
Strigi desktop integration                            FOSDEM 2007           How to interact with Strigi                   ...
Strigi desktop integration                              FOSDEM 2007           How to interact with Strigi          Availab...
Strigi desktop integration                    FOSDEM 2007           Strigi Clients                             “main” clie...
Strigi desktop integration                       FOSDEM 2007           Strigi Clients                Strigis Gnome DeskBar...
Strigi desktop integration                                FOSDEM 2007           Strigi Clients                Strigis Gnom...
Strigi desktop integration                               FOSDEM 2007           JStreams                             Really...
Strigi desktop integration                           FOSDEM 2007           JStreams                             The power ...
Strigi desktop integration                              FOSDEM 2007           JStreams                             JStream...
Strigi desktop integration                      FOSDEM 2007           Use JStreams                             A simple ex...
Strigi desktop integration                       FOSDEM 2007           Use JStreams                                  QClie...
Strigi desktop integration                          FOSDEM 2007           Use JStreams                             QArchiv...
Strigi desktop integration                           FOSDEM 2007           Use JStreams                             QArchi...
Strigi desktop integration                                  FOSDEM 2007           Use JStreams into KDE                   ...
Strigi desktop integration                      FOSDEM 2007           Use JStreams into KDE                             JS...
Strigi desktop integration                           FOSDEM 2007           Conclusions                             Interac...
Strigi desktop integration                          FOSDEM 2007           Conclusions                             Strigis ...
Strigi desktop integration                             FOSDEM 2007           Conclusions                 Strigis integrati...
Upcoming SlideShare
Loading in...5
×

Strigi desktop-integration

902

Published on

Talk about strigi integration with KDE desktop.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
902
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Strigi desktop-integration

  1. 1. Strigi Desktop integration Flavio Castelli
  2. 2. Strigi desktop integration FOSDEM 2007 Why choose Strigi Strigis main features ● fast and lightweight ● portable ● extensible ● next KDE4 desktop searching engine ● can be easily accessed from external programs Flavio Castelli
  3. 3. Strigi desktop integration FOSDEM 2007 What can be done by Strigi Strigis capabilities ● perform fast searches across heterogeneous data collections ● extract metadata informations from files ● index compressed archives contents ● create/recreate/discover relations between different data Flavio Castelli
  4. 4. Strigi desktop integration FOSDEM 2007 How to interact with Strigi Strigi communication interfaces socket DBus Flavio Castelli
  5. 5. Strigi desktop integration FOSDEM 2007 How to interact with Strigi Socket interface Benefits: ● well known mechanism ● can be accessed from different languages / OS Drawbacks: ● actually has less priority --> it isnt fully tested Flavio Castelli
  6. 6. Strigi desktop integration FOSDEM 2007 How to interact with Strigi DBus interface The best way to access Strigi features: ● simple and fast to use ● IPC protocol used by KDE4 and Gnome ● there are lots of DBus bindings ● actively developed Flavio Castelli
  7. 7. Strigi desktop integration FOSDEM 2007 How to interact with Strigi Available functions Everything can be performed through the socket and DBus interfaces: ● start/stop Strigi daemon ● add/remove filters ● force index updates ● index a specific resource ● perform searches (and retrieve results ;) Flavio Castelli
  8. 8. Strigi desktop integration FOSDEM 2007 How to interact with Strigi Available classes for C++ developers Existing C++ classes for playing with Strigi: ● AsyncSocketClient: access socket interface ● DBusClientInterface: access DBus interface Automatically shipped with Strigi installation Flavio Castelli
  9. 9. Strigi desktop integration FOSDEM 2007 Strigi Clients “main” clients Their code can be taken as example: ● StrigiClient: ● written in C++ ● uses Qt4 ● connection through Dbus interface ● StrigiApplet: ● written in C++ ● uses KDE3 libs ● connection through socket interface Flavio Castelli
  10. 10. Strigi desktop integration FOSDEM 2007 Strigi Clients Strigis Gnome DeskBar handler Flavio Castelli
  11. 11. Strigi desktop integration FOSDEM 2007 Strigi Clients Strigis Gnome DeskBar handler Features: ● written in python ● communicate using DBus interface ● only 95 lines of code Strigi integration is easy Flavio Castelli
  12. 12. Strigi desktop integration FOSDEM 2007 JStreams Really short description What are JStreams: ● a C++ “transposition” of Java InputStream childs public StreamDemo(URL url) throws IOException { InputStream filestream = url.openStream(); ZipInputStream zipstream = new ZipInputStream(filestream); ZipEntry entry = zipstream.getNextEntry(); while (entry != null) { handleEntry(zipstream, entry); } } Flavio Castelli
  13. 13. Strigi desktop integration FOSDEM 2007 JStreams The power of JStreams ● flexible: can be extended for supporting new file types ● really fast (especially while accessing compressed archives) ● easy to use ● code reuse: can be used by other programs with ease Flavio Castelli
  14. 14. Strigi desktop integration FOSDEM 2007 JStreams JStreams actual status More relevant file types: ● compressed archives: tar, gzip, bz2, ar,... ● linux distribution packages: deb, rpm,... ● pdf files ● email ● ... Flavio Castelli
  15. 15. Strigi desktop integration FOSDEM 2007 Use JStreams A simple example Flavio Castelli
  16. 16. Strigi desktop integration FOSDEM 2007 Use JStreams QClient Simple Qt4 program that uses JStreams: ● navigate through archive files ● can open archive file contents How can be done ? Flavio Castelli
  17. 17. Strigi desktop integration FOSDEM 2007 Use JStreams QArchiveEngine Class QAbstracFileEngine ArchiveEngineBase Access archive files as directories ArchiveEngine Flavio Castelli
  18. 18. Strigi desktop integration FOSDEM 2007 Use JStreams QArchiveEngine Class For accessing compressed files as directories: ● create a new QAbstractFileEngine child ● use JStreams inside it ● register the new engine All Qt classes that provides file system access will use it whenever its possible Flavio Castelli
  19. 19. Strigi desktop integration FOSDEM 2007 Use JStreams into KDE JStreams and KDE Also KDE programs can use JStreams functionalities: JStreams KIOSlave ● Available for KDE3 ● Already into KDE4 trunk Flavio Castelli
  20. 20. Strigi desktop integration FOSDEM 2007 Use JStreams into KDE JStream KIOSLAVE Flavio Castelli
  21. 21. Strigi desktop integration FOSDEM 2007 Conclusions Interact with Strigi ● use Strigis features is really simple ● it can be done from: ● different programming languages ● different window managers ● different OS ● you can use Strigi for: ● desktop searching tasks ● fast and simple access to a large set of file types Flavio Castelli
  22. 22. Strigi desktop integration FOSDEM 2007 Conclusions Strigis integration Actually we cover a good set of SCENARIO ● StrigiClient: generic window manager ● StrigiApplet: kde client ● Gnome DeskBar handler: self-explaining In the near future: ● a KDE4 Plasmoid client Flavio Castelli
  23. 23. Strigi desktop integration FOSDEM 2007 Conclusions Strigis integration: the future... There is lot of work to be done on the client-side: ● keep improving actual interfaces ● improve usability & integration ● create a better user experience create a better user experience Flavio Castelli
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×