# kio Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# 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:

[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
KURIFilterData & | operator= (const KURL &url)
KURIFilterData & | operator= (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 78 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 99 of file kurifilter.h.

## Constructor & Destructor Documentation

KURIFilterData::KURIFilterData | ( |  | ) | `[inline]`

| Default constructor. Creates a URIFilterData object. Definition at line 106 of file kurifilter.h.

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 113 of file kurifilter.h.

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 120 of file kurifilter.h.

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 60 of file kurifilter.cpp.

KURIFilterData::~KURIFilterData | ( |  | ) |

| Destructor. Definition at line 74 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 144 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 156 of file kurifilter.h.

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

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 168 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 177 of file kurifilter.h.

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 188 of file kurifilter.h.

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 199 of file kurifilter.h.

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 124 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 136 of file kurifilter.cpp.

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 119 of file kurifilter.cpp.

References QString::isEmpty().

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 141 of file kurifilter.cpp.

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 114 of file kurifilter.cpp.

References QString::isEmpty().

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 146 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 109 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 277 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 104 of file kurifilter.cpp.

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 293 of file kurifilter.h.

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 303 of file kurifilter.h.

void KURIFilterData::init | ( | const KURL & | url | ) | `[protected]`

Initializes the KURIFilterData on construction.

Parameters:

  | url | the URL to initialize the object with

Definition at line 80 of file kurifilter.cpp.

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 92 of file kurifilter.cpp.

The documentation for this class was generated from the following files:

- kurifilter.h
- kurifilter.cpp

This file is part of the documentation for kio Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:25:32 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003