Strigi Desktop integration Flavio Castelli. Strigi desktop integration Flavio Castelli FOSDEM 2007 Why choose Strigi Strigi's main features ● fast and.

Slides:



Advertisements
Similar presentations
WOCE Global Data V3 WOCE-DPC Report Nathan Bindoff and David M. Legler Co-Chairs, WOCE DPC WOCE Conference November 2002 All of it.
Advertisements

Global Contact International Publishing Corporation
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Access 2007 Product Review. With its improved interface and interactive design capabilities that do not require deep database knowledge, Microsoft Office.
Threads Clients Servers Code Migration Software Agents Summary
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
SESSION 9 THE INTERNET AND THE NEW INFORMATION NEW INFORMATIONTECHNOLOGYINFRASTRUCTURE.
Internet Information Server (IIS)
RSS RSS is a method that uses XML to distribute web content on one web site, to many other web sites. RSS allows fast browsing for news and updates.
WebQuilt and Mobile Devices: A Web Usability Testing and Analysis Tool for the Mobile Internet Tara Matthews Seattle University April 5, 2001 Faculty Mentor:
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Linux Operations and Administration
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Basics of Web Databases With the advent of Web database technology, Web pages are no longer static, but dynamic with connection to a back-end database.
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
The GeoConnections Discovery Portal Michael Robson MacDonald Dettwiler and Associates Brian McLeod, Michael Adair Natural Resources Canada.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
An program As a simple example of socket programming we can implement a program that sends to a remote site As a simple example of socket.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Web Indexing and Searching By Florin Zidaru. Outline Web Indexing and Searching Overview Swish-e: overview and features Swish-e: set-up Swish-e: demo.
Here you are at your computer, but you don’t have internet connections. Your ISP becomes your link to the internet. In order to get access you need to.
SharePoint 2010 Search Architecture The Connector Framework Enhancing the Search User Interface Creating Custom Ranking Models.
10 Reasons to Choose the Yii Framework. The development of Yii framework began on January 1, 2008.Yii framework It is an open source application that.
SUSE Linux Enterprise Desktop Administration Chapter 6 Manage Software.
Design of a Search Engine for Metadata Search Based on Metalogy Ing-Xiang Chen, Che-Min Chen,and Cheng-Zen Yang Dept. of Computer Engineering and Science.
Copenhagen, 7 June 2006 Toolkit update and maintenance Anton Cupcea Finsiel Romania.
UNCERTML - DESCRIBING AND COMMUNICATING UNCERTAINTY WITHIN THE (SEMANTIC) WEB Matthew Williams
Securely Synchronize and Share Enterprise Files across Desktops, Web, and Mobile with EasiShare on the Powerful Microsoft Azure Cloud Platform MICROSOFT.
Digital Libraries1 David Rashty. Digital Libraries2 “A library is an arsenal of liberty” Anonymous.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
WebDAV Working across the Internet: Peter Pierrou, Excosoft.
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
K. Harrison CERN, 22nd September 2004 GANGA: ADA USER INTERFACE - Ganga release status - Job-Options Editor - Python support for AJDL - Job Builder - Python.
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
CSU Extension Webpage Template Session 4 February 2010.
Apache Solr Dima Ionut Daniel. Contents What is Apache Solr? Architecture Features Core Solr Concepts Configuration Conclusions Bibliography.
Trimantra Software Solution Offshore Software Development Outsourcing Company Visit :
Cross desktop Application Scripting Ideas for an implementation Desktop Developer Conference 2006, Ottawa, Canada Tuesday July 18 th 2006 Hubert Figuière.
Strigi Searching files in KDE4 Jos van den Oever.
Strigi Internals Fast libraries for text and metadata Jos van den Oever.
12. DISTRIBUTED WEB-BASED SYSTEMS Nov SUSMITHA KOTA KRANTHI KOYA LIANG YI.
Sebastian Kügler, FrOSCon 2006 Lydia Pintscher KDE4 the start of something amazing KDE4.
Sebastian Kügler, FrOSCon 2006 Inge Wallin KDE4 The Dawn of a new Desktop KDE4.
KDE Plasma Mobile workspaces Marco Martin. What is Plasma?
Desktop search Interpreting files with Strigi Jos van den Oever.
1FOSDEM 2009 | | Brussels Tomeu Vizoso Developer Sugar Labs Foundation The Sugar platform Why GNOME may care?
Environment & Education & More Dan Bothell. Overview Data Teaching Materials Environment Other ACT-R 5.0 and RPM issues.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
Java Web Services Orca Knowledge Center – Web Service key concepts.
Build and Test system for FairRoot
Python Programming Unit -1.
Introduction to Operating Systems
Self-service enrollment for Windows desktops
E-Commerce Lecture 8.
ClamXav Antivirus Scanner: A Free Tool for Your Mac OS X
Microsoft Dynamics.
PHP / MySQL Introduction
Lecture 13 RPM and its advantages.
Printer Admin Print Job Manager
Chapter 2: Operating-System Structures
System And Application Software
Media365 Portal by Ctrl365 is Powered by Azure and Enables Easy and Seamless Dissemination of Video for Enhanced B2C and B2B Communication MICROSOFT AZURE.
REAL-TIME, INTERACTIVE DOCUMENT AUTOMATION
Unit# 5: Internet and Worldwide Web
Haystack: an Adaptive Personalized Information Retrieval System
Lab 2: Information Retrieval
Is a Content Management System in Your Future?
Web Application Development Using PHP
Presentation transcript:

Strigi Desktop integration Flavio Castelli

Strigi desktop integration Flavio Castelli FOSDEM 2007 Why choose Strigi Strigi's main features ● fast and lightweight ● portable ● extensible ● next KDE4 desktop searching engine ● can be easily accessed from external programs

Strigi desktop integration Flavio Castelli FOSDEM 2007 What can be done by Strigi Strigi's capabilities ● perform fast searches across heterogeneous data collections ● extract metadata informations from files ● index compressed archives contents ● create/recreate/discover relations between different data

Strigi desktop integration Flavio Castelli FOSDEM 2007 How to interact with Strigi Strigi communication interfaces socketDBus

Strigi desktop integration Flavio Castelli 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 isn't fully tested

Strigi desktop integration Flavio Castelli 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

Strigi desktop integration Flavio Castelli 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 ;)

Strigi desktop integration Flavio Castelli 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

Strigi desktop integration Flavio Castelli 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

Strigi desktop integration Flavio Castelli FOSDEM 2007 Strigi Clients Strigi's Gnome DeskBar handler

Strigi desktop integration Flavio Castelli FOSDEM 2007 Strigi Clients Strigi's Gnome DeskBar handler Features: ● written in python ● communicate using DBus interface ● only 95 lines of code Strigi integration is easy

Strigi desktop integration Flavio Castelli 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); }

Strigi desktop integration Flavio Castelli 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

Strigi desktop integration Flavio Castelli FOSDEM 2007 JStreams JStreams actual status More relevant file types: ● compressed archives: tar, gzip, bz2, ar,... ● linux distribution packages: deb, rpm,... ● pdf files ● ●...

Strigi desktop integration Flavio Castelli FOSDEM 2007 Use JStreams A simple example

Strigi desktop integration Flavio Castelli FOSDEM 2007 Use JStreams QClient Simple Qt4 program that uses JStreams: ● navigate through archive files ● can open archive file contents How can be done ?

Strigi desktop integration Flavio Castelli FOSDEM 2007 Use JStreams QArchiveEngine Class QAbstracFileEngine ArchiveEngineBase ArchiveEngine Access archive files as directories

Strigi desktop integration Flavio Castelli 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 it's possible

Strigi desktop integration Flavio Castelli 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

Strigi desktop integration Flavio Castelli FOSDEM 2007 Use JStreams into KDE JStream KIOSLAVE

Strigi desktop integration Flavio Castelli FOSDEM 2007 Conclusions Interact with Strigi ● use Strigi's 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

Strigi desktop integration Flavio Castelli FOSDEM 2007 Conclusions Strigi's integration Actually we cover a good set of possibilities: ● StrigiClient: generic window manager ● StrigiApplet: kde client ● Gnome DeskBar handler: self-explaining In the near future: ● a KDE4 Plasmoid client

Strigi desktop integration Flavio Castelli FOSDEM 2007 Conclusions Strigi's 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

Strigi desktop integration Flavio Castelli FOSDEM 2007 Help needed! Contacts Mail addresses: ● Castelli Flavio: ● Jos Van den Oever: Web site: ●