kio Library API Documentation

KURIFilterData Class Reference

A basic message object used for exchanging filtering information between the filter plugins and the application requesting the filtering service. A message object for exchanging filtering URI info. More...

#include <kurifilter.h>

Collaboration diagram for KURIFilterData:

Collaboration graph
[legend]
List of all members.

Public Types

enum  URITypes {
  NET_PROTOCOL = 0, LOCAL_FILE, LOCAL_DIR, EXECUTABLE,
  HELP, SHELL, BLOCKED, ERROR,
  UNKNOWN
}

Public Member Functions

 KURIFilterData ()
 KURIFilterData (const KURL &url)
 KURIFilterData (const QString &url)
 KURIFilterData (const KURIFilterData &data)
 ~KURIFilterData ()
KDE_DEPRECATED bool hasBeenFiltered () const
KURL uri () const
QString errorMsg () const
URITypes uriType () const
void setData (const QString &url)
void setData (const KURL &url)
bool setAbsolutePath (const QString &abs_path)
QString absolutePath () const
bool hasAbsolutePath () const
QString argsAndOptions () const
bool hasArgsAndOptions () const
QString iconName ()
void setCheckForExecutables (bool check)
bool checkForExecutables () const
QString typedString () const
KURIFilterDataoperator= (const KURL &url)
KURIFilterDataoperator= (const QString &url)

Protected Member Functions

void init (const KURL &url)
void init (const QString &url=QString::null)

Friends

class KURIFilterPlugin

Detailed Description

A basic message object used for exchanging filtering information between the filter plugins and the application requesting the filtering service. A message object for exchanging filtering URI info.

Use this object if you require a more detailed information about the URI you want to filter. Any application can create an instance of this class and send it to KURIFilter to have the plugins fill out all possible information about the URI.

Example

   QString text = "kde.org";
   KURIFilterData d = text;
   bool filtered = KURIFilter::self()->filter( d );
   cout << "URL: " << text.latin1() << endl
        << "Filtered URL: " << d.uri().url().latin1() << endl
        << "URI Type: " << d.uriType() << endl
        << "Was Filtered: " << filtered << endl;

The above code should yield the following output:

   URI: kde.org
   Filtered URI: http://kde.org
   URI Type: 0            <== means NET_PROTOCOL
   Was Filtered: 1        <== means the URL was successfully filtered

Author:
Dawit Alemayehu <adawit at kde.org>

Definition at line 75 of file kurifilter.h.


Member Enumeration Documentation

enum KURIFilterData::URITypes
 

Describes the type of the URI that was filtered.

Here is a brief description of the types:

  • NET_PROTOCOL - Any network protocol: http, ftp, nttp, pop3, etc...
  • LOCAL_FILE - A local file whose executable flag is not set
  • LOCAL_DIR - A local directory
  • EXECUTABLE - A local file whose executable flag is set
  • HELP - A man or info page
  • SHELL - A shell executable (ex: echo "Test..." >> ~/testfile)
  • BLOCKED - A URI that should be blocked/filtered (ex: ad filtering)
  • ERROR - An incorrect URI (ex: "~johndoe" when user johndoe does not exist in that system )
  • UNKNOWN - A URI that is not identified. Default value when a KURIFilterData is first created.

Definition at line 96 of file kurifilter.h.

Referenced by uriType().


Constructor & Destructor Documentation

KURIFilterData::KURIFilterData  )  [inline]
 

Default constructor.

Creates a URIFilterData object.

Definition at line 103 of file kurifilter.h.

References init().

KURIFilterData::KURIFilterData const KURL url  )  [inline]
 

Creates a URIFilterData object from the given URL.

Parameters:
url is the URL to be filtered.

Definition at line 110 of file kurifilter.h.

References init().

KURIFilterData::KURIFilterData const QString url  )  [inline]
 

Creates a URIFilterData object from the given string.

Parameters:
url is the string to be filtered.

Definition at line 117 of file kurifilter.h.

References init().

KURIFilterData::KURIFilterData const KURIFilterData data  ) 
 

Copy constructor.

Creates a URIFilterData object from another URI filter data object.

Parameters:
data the uri filter data to be copied.

Definition at line 59 of file kurifilter.cpp.

References absolutePath(), argsAndOptions(), m_bChanged, m_bCheckForExecutables, m_iType, m_pURI, m_strErrMsg, m_strIconName, and typedString().

KURIFilterData::~KURIFilterData  ) 
 

Destructor.

Definition at line 73 of file kurifilter.cpp.


Member Function Documentation

KDE_DEPRECATED bool KURIFilterData::hasBeenFiltered  )  const [inline]
 

This method has been deprecated and will always return true.

You should instead use the result from the KURIFilter::filterURI() calls.

Deprecated:

Definition at line 141 of file kurifilter.h.

KURL KURIFilterData::uri  )  const [inline]
 

Returns the filtered or the original URL.

This function returns the filtered url if one of the plugins successfully filtered the original URL. Otherwise, it returns the original URL. See hasBeenFiltered() and

Returns:
the filtered or original url.

Definition at line 153 of file kurifilter.h.

Referenced by KURIFilter::filteredURI(), KURIFilter::filterURI(), and KURIFilterPlugin::setFilteredURI().

QString KURIFilterData::errorMsg  )  const [inline]
 

Returns an error message.

This functions returns the error message set by the plugin whenever the uri type is set to KURIFilterData::ERROR. Otherwise, it returns a QString::null.

Returns:
the error message or a NULL when there is none.

Definition at line 165 of file kurifilter.h.

URITypes KURIFilterData::uriType  )  const [inline]
 

Returns the URI type.

This method always returns KURIFilterData::UNKNOWN if the given URL was not filtered.

Returns:
the type of the URI

Definition at line 174 of file kurifilter.h.

References URITypes.

void KURIFilterData::setData const QString url  )  [inline]
 

Sets the URL to be filtered.

Use this function to set the string to be filtered when you construct an empty filter object.

Parameters:
url the string to be filtered.

Definition at line 185 of file kurifilter.h.

References init().

void KURIFilterData::setData const KURL url  )  [inline]
 

Same as above except the argument is a URL.

Use this function to set the string to be filtered when you construct an empty filter object.

Parameters:
url the URL to be filtered.

Definition at line 196 of file kurifilter.h.

References init().

bool KURIFilterData::setAbsolutePath const QString abs_path  ) 
 

Sets the absolute path to be used whenever the supplied data is a relative local URL.

NOTE: This function should only be used for local resources, i.e. the "file:/" protocol. It is useful for specifying the absolute path in cases where the actual URL might be relative. meta object. If deriving the path from a KURL, make sure you set the argument for this function to the result of calling path () instead of url ().

Parameters:
abs_path the abolute path to the local resource.
Returns:
true if absolute path is successfully set. Otherwise, false.

Definition at line 123 of file kurifilter.cpp.

References KURL::isLocalFile(), and KURL::isValid().

QString KURIFilterData::absolutePath  )  const
 

Returns the absolute path if one has already been set.

Returns:
the absolute path, or QString::null
See also:
hasAbsolutePath()

Definition at line 135 of file kurifilter.cpp.

Referenced by KURIFilterData().

bool KURIFilterData::hasAbsolutePath  )  const
 

Checks whether the supplied data had an absolute path.

Returns:
true if the supplied data has an absolute path
See also:
absolutePath()

Definition at line 118 of file kurifilter.cpp.

QString KURIFilterData::argsAndOptions  )  const
 

Returns the command line options and arguments for a local resource when present.

Returns:
options and arguments when present, otherwise QString::null

Definition at line 140 of file kurifilter.cpp.

Referenced by KURIFilterData().

bool KURIFilterData::hasArgsAndOptions  )  const
 

Checks whether the current data is a local resource with command line options and arguments.

Returns:
true if the current data has command line options and arguments

Definition at line 113 of file kurifilter.cpp.

QString KURIFilterData::iconName  ) 
 

Returns the name of the icon that matches the current filtered URL.

NOTE that this function will return a NULL string by default and when no associated icon is found.

Returns:
the name of the icon associated with the resource, or QString::null if not found

Definition at line 145 of file kurifilter.cpp.

References QString::findRev(), QString::fromLatin1(), KMimeType::iconForURL(), QString::mid(), KService::serviceByDesktopName(), and KURL::url().

void KURIFilterData::setCheckForExecutables bool  check  ) 
 

Check whether the provided uri is executable or not.

Setting this to false ensures that typing the name of an executable does not start that application. This is useful in the location bar of a browser. The default value is true.

Since:
3.2

Definition at line 108 of file kurifilter.cpp.

bool KURIFilterData::checkForExecutables  )  const [inline]
 

Returns:
true if the filters should attempt to check whether the supplied uri is an executable. False otherwise.
Since:
3.2

Definition at line 274 of file kurifilter.h.

QString KURIFilterData::typedString  )  const
 

Returns:
the string as typed by the user, before any URL processing is done
Since:
3.2

Definition at line 103 of file kurifilter.cpp.

Referenced by KURIFilterData().

KURIFilterData& KURIFilterData::operator= const KURL url  )  [inline]
 

Overloaded assigenment operator.

This function allows you to easily assign a KURL to a KURIFilterData object.

Returns:
an instance of a KURIFilterData object.

Definition at line 290 of file kurifilter.h.

References init().

KURIFilterData& KURIFilterData::operator= const QString url  )  [inline]
 

Overloaded assigenment operator.

This function allows you to easily assign a QString to a KURIFilterData object.

Returns:
an instance of a KURIFilterData object.

Definition at line 300 of file kurifilter.h.

References init().

void KURIFilterData::init const KURL url  )  [protected]
 

Initializes the KURIFilterData on construction.

Parameters:
url the URL to initialize the object with

Definition at line 79 of file kurifilter.cpp.

Referenced by KURIFilterData(), operator=(), and setData().

void KURIFilterData::init const QString url = QString::null  )  [protected]
 

Initializes the KURIFilterData on construction.

Parameters:
url the URL to initialize the object with

Definition at line 91 of file kurifilter.cpp.


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kio Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu Sep 30 05:19:13 2004 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2003