KIO::NetAccess Class Reference

`#include <netaccess.h>`

Inherits QObject.

## Static Public Member Functions

static bool | download (const KURL &src, QString &target, QWidget *window)
static bool | download (const KURL &src, QString &target) KDE_DEPRECATED
static void | removeTempFile (const QString &name)
static bool | upload (const QString &src, const KURL &target, QWidget *window)
static bool | upload (const QString &src, const KURL &target) KDE_DEPRECATED
static bool | copy (const KURL &src, const KURL &target, QWidget *window)
static bool | copy (const KURL &src, const KURL &target) KDE_DEPRECATED
static bool | file_copy (const KURL &src, const KURL &dest, int permissions=-1, bool overwrite=false, bool resume=false, QWidget *window=0L)
static bool | file_move (const KURL &src, const KURL &target, int permissions=-1, bool overwrite=false, bool resume=false, QWidget *window=0L)
static bool | dircopy (const KURL &src, const KURL &target, QWidget *window)
static bool | dircopy (const KURL &src, const KURL &target) KDE_DEPRECATED
static bool | dircopy (const KURL::List &src, const KURL &target, QWidget *window=0L)
static bool | move (const KURL &src, const KURL &target, QWidget *window=0L)
static bool | move (const KURL::List &src, const KURL &target, QWidget *window=0L)
static bool | exists (const KURL &url, bool source, QWidget *window)
static bool | exists (const KURL &url, QWidget *window) KDE_DEPRECATED
static bool | exists (const KURL &url) KDE_DEPRECATED
static bool | exists (const KURL &url, bool source) KDE_DEPRECATED
static bool | stat (const KURL &url, KIO::UDSEntry &entry, QWidget *window)
static bool | stat (const KURL &url, KIO::UDSEntry &entry) KDE_DEPRECATED
static KURL | mostLocalURL (const KURL &url, QWidget *window)
static bool | del (const KURL &url, QWidget *window)
static bool | del (const KURL &url) KDE_DEPRECATED
static bool | mkdir (const KURL &url, QWidget *window, int permissions=-1)
static bool | mkdir (const KURL &url, int permissions=-1) KDE_DEPRECATED
static QString | fish_execute (const KURL &url, const QString command, QWidget *window)
static bool | synchronousRun (Job *job, QWidget *window, QByteArray *data=0, KURL *finalURL=0, QMap< QString, QString > *metaData=0)
static QString | mimetype (const KURL &url, QWidget *window)
static QString | mimetype (const KURL &url) KDE_DEPRECATED
static QString | lastErrorString ()
static int | lastError ()

## Friends

class | I_like_this_class

## Detailed Description

Net Transparency.

NetAccess allows you to do simple file operation (load, save, copy, delete...) without working with KIO::Job directly. Whereas a KIO::Job is asynchronous, meaning that the developer has to connect slots for it, KIO::NetAccess provides synchronous downloads and uploads, as well as temporary file creation and removal. The functions appear to be blocking, but the Qt event loop continues running while the operations are handled. This means that the GUI will not freeze.

This class isn't meant to be used as a class but only as a simple namespace for static functions, though an instance of the class is built for internal purposes.

Port to kio done by David Faure, faure.nosp@m.@kde.nosp@m..org

Provides an easy, synchronous interface to KIO file operations.

Definition at line 59 of file netaccess.h.

## Member Function Documentation

bool NetAccess::copy | ( | const KURL & | src,
|  | const KURL & | target,
|  | QWidget * | window
| ) |  |

static

Alternative to upload for copying over the network.

Overwrite is false, so this will fail if `target` exists.

This one takes two URLs and is a direct equivalent of KIO::file_copy (not KIO::copy!). It will be renamed file_copy in KDE4, so better use file_copy.

Parameters

  src | URL Referencing the file to upload.
  target | URL containing the final location of the file.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if successful, false for failure

Definition at line 117 of file netaccess.cpp.

bool NetAccess::copy | ( | const KURL & | src,
|  | const KURL & | target
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 112 of file netaccess.cpp.

bool NetAccess::del | ( | const KURL & | url,
|  | QWidget * | window
| ) |  |

static

Deletes a file or a directory in a synchronous way.

This is a convenience function for KIO::del (it saves creating a slot and testing for the job result).

Parameters

  url | The file or directory to delete.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true on success, false on failure.

Definition at line 250 of file netaccess.cpp.

bool NetAccess::del | ( | const KURL & | url | ) |

static

Deprecated:
  . Use the function above instead. Passing NULL as the additional argument will give the same behaviour, but you should try to identify a suitable parent widget if at all possible.

Definition at line 245 of file netaccess.cpp.

bool NetAccess::dircopy | ( | const KURL & | src,
|  | const KURL & | target,
|  | QWidget * | window
| ) |  |

static

Alternative method for copying over the network.

Overwrite is false, so this will fail if `target` exists.

This one takes two URLs and is a direct equivalent of KIO::copy!. This means that it can copy files and directories alike (it should have been named copy()).

Parameters

  src | URL Referencing the file to upload.
  target | URL containing the final location of the file.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if successful, false for failure

Definition at line 144 of file netaccess.cpp.

bool NetAccess::dircopy | ( | const KURL & | src,
|  | const KURL & | target
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 139 of file netaccess.cpp.

bool NetAccess::dircopy | ( | const KURL::List & | src,
|  | const KURL & | target,
|  | QWidget * | window = `0L`
| ) |  |

static

Overloaded method, which takes a list of source URLs.

Definition at line 151 of file netaccess.cpp.

bool NetAccess::download | ( | const KURL & | src,
|  | QString & | target,
|  | QWidget * | window
| ) |  |

static

Downloads a file from an arbitrary URL (`src`) to a temporary file on the local filesystem (`target`).

If the argument for `target` is an empty string, download will generate a unique temporary filename in /tmp. Since `target` is a reference to QString you can access this filename easily. Download will return true if the download was successful, otherwise false.

Special case: If the URL is of kind file:, then no downloading is processed but the full filename is returned in `target`. That means you have to take care about the `target` argument. (This is very easy to do, please see the example below.)

Download is synchronous. That means you can use it like this, (assuming `u` is a string which represents a URL and your application has a loadFile() function):

QString tmpFile;
if( KIO::NetAccess::download( u, tmpFile, window ) )
{
loadFile( tmpFile );
KIO::NetAccess::removeTempFile( tmpFile );
} else {
KMessageBox::error(this, KIO::NetAccess::lastErrorString() );
}

Of course, your user interface will still process exposure/repaint events during the download.

If the download fails, lastError() and lastErrorString() will be set.

Parameters

  src | URL Reference to the file to download.
  target | String containing the final local location of the file. If you insert an empty string, it will return a location in a temporary spot. Note: you are responsible for the removal of this file when you are finished reading it using removeTempFile.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if successful, false for failure. Use lastErrorString() to get the reason it failed.

See also
  lastErrorString()

Since
  3.2

Definition at line 57 of file netaccess.cpp.

bool NetAccess::download | ( | const KURL & | src,
|  | QString & | target
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 52 of file netaccess.cpp.

bool NetAccess::exists | ( | const KURL & | url,
|  | bool | source,
|  | QWidget * | window
| ) |  |

static

Tests whether a URL exists.

Parameters

  url | the URL we are testing
  source | if true, we want to read from that URL. If false, we want to write to it. IMPORTANT: see documentation for KIO::stat for more details about this.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if the URL exists and we can do the operation specified by `source`, false otherwise

Since
  3.2

Definition at line 185 of file netaccess.cpp.

bool NetAccess::exists | ( | const KURL & | url,
|  | QWidget * | window
| ) |  |

static

Deprecated:
  . Use the function above instead.
  Since
    3.2

Definition at line 175 of file netaccess.cpp.

bool NetAccess::exists | ( | const KURL & | url | ) |

static

Deprecated:
  . Use the function above instead.

Definition at line 170 of file netaccess.cpp.

bool NetAccess::exists | ( | const KURL & | url,
|  | bool | source
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 180 of file netaccess.cpp.

bool NetAccess::file_copy | ( | const KURL & | src,
|  | const KURL & | dest,
|  | int | permissions = `-1`,
|  | bool | overwrite = `false`,
|  | bool | resume = `false`,
|  | QWidget * | window = `0L`
| ) |  |

static

Full-fledged equivalent of KIO::file_copy.

Definition at line 122 of file netaccess.cpp.

bool NetAccess::file_move | ( | const KURL & | src,
|  | const KURL & | target,
|  | int | permissions = `-1`,
|  | bool | overwrite = `false`,
|  | bool | resume = `false`,
|  | QWidget * | window = `0L`
| ) |  |

static

Full-fledged equivalent of KIO::file_move.

Moves or renames one file.

Since
  3.2

Definition at line 131 of file netaccess.cpp.

QString NetAccess::fish_execute | ( | const KURL & | url,
|  | const QString | command,
|  | QWidget * | window
| ) |  |

static

Executes a remote process via the fish ioslave in a synchronous way.

Parameters

  url | The remote machine where the command should be executed. e.g. fish://someuser@somehost:sshport/ some special cases exist. fish://someuser@localhost/ will use su instead of ssh to connect and execute the command. fish://someuser@localhost:port/ will use ssh to connect and execute the command.
  command | The command to be executed.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  The resulting output of the `command` that is executed.

Definition at line 267 of file netaccess.cpp.

static int KIO::NetAccess::lastError | ( |  | ) |

inline static

Returns the error code for the last job, in case it failed.

Returns
  the last error code

Since
  3.3

Definition at line 475 of file netaccess.h.

static QString KIO::NetAccess::lastErrorString | ( |  | ) |

inline static

Returns the error string for the last job, in case it failed.

Note that this is already translated.

Returns
  the last error string, or QString::null

Definition at line 468 of file netaccess.h.

QString NetAccess::mimetype | ( | const KURL & | url | ) |

static

Deprecated:
  . Use the function above instead. Passing NULL as the additional argument will give the same behaviour, but you should try to identify a suitable parent widget if at all possible.

Definition at line 280 of file netaccess.cpp.

bool NetAccess::mkdir | ( | const KURL & | url,
|  | QWidget * | window,
|  | int | permissions = `-1`
| ) |  |

static

Creates a directory in a synchronous way.

This is a convenience function for `KIO::mkdir` (it saves creating a slot and testing for the job result).

Parameters

  url | The directory to create.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.
  permissions | directory permissions.

Returns
  true on success, false on failure.

Definition at line 261 of file netaccess.cpp.

bool NetAccess::mkdir | ( | const KURL & | url,
|  | int | permissions = `-1`
| ) |  |

static

Deprecated:
  . Use the function above instead. Passing NULL as the additional argument will give the same behaviour, but you should try to identify a suitable parent widget if at all possible.

Definition at line 256 of file netaccess.cpp.

KURL NetAccess::mostLocalURL | ( | const KURL & | url,
|  | QWidget * | window
| ) |  |

static

Tries to map a local URL for the given URL.

This is a convenience function for KIO::stat + parsing the resulting UDSEntry.

Parameters

  url | The URL we are testing.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  a local URL corresponding to the same ressource than the original URL, or the original URL if no local URL can be mapped

Since
  3.5

Definition at line 207 of file netaccess.cpp.

bool NetAccess::move | ( | const KURL & | src,
|  | const KURL & | target,
|  | QWidget * | window = `0L`
| ) |  |

static

Full-fledged equivalent of KIO::move.

Moves or renames one file or directory.

Since
  3.2

Definition at line 157 of file netaccess.cpp.

bool NetAccess::move | ( | const KURL::List & | src,
|  | const KURL & | target,
|  | QWidget * | window = `0L`
| ) |  |

static

Full-fledged equivalent of KIO::move.

Moves or renames a list of files or directories.

Since
  3.2

Definition at line 164 of file netaccess.cpp.

void NetAccess::removeTempFile | ( | const QString & | name | ) |

static

Removes the specified file if and only if it was created by KIO::NetAccess as a temporary file for a former download.

Note: This means that if you created your temporary with KTempFile, use KTempFile::unlink() or KTempFile::setAutoDelete() to have it removed.

Parameters

  name | Path to temporary file to remove. May not be empty.

Definition at line 292 of file netaccess.cpp.

bool NetAccess::stat | ( | const KURL & | url,
|  | KIO::UDSEntry & | entry,
|  | QWidget * | window
| ) |  |

static

Tests whether a URL exists and return information on it.

This is a convenience function for KIO::stat (it saves creating a slot and testing for the job result).

Parameters

  url | The URL we are testing.
  entry | The result of the stat. Iterate over the list of atoms to get hold of name, type, size, etc., or use KFileItem.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if successful, false for failure

Definition at line 198 of file netaccess.cpp.

bool NetAccess::stat | ( | const KURL & | url,
|  | KIO::UDSEntry & | entry
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 193 of file netaccess.cpp.

bool NetAccess::synchronousRun | ( | Job * | job,
|  | QWidget * | window,
|  | QByteArray * | data = `0`,
|  | KURL * | finalURL = `0`,
|  | QMap< QString, QString > * | metaData = `0`
| ) |  |

static

This function executes a job in a synchronous way.

If a job fetches some data, pass a QByteArray pointer as data parameter to this function and after the function returns it will contain all the data fetched by this job.

`KIO::Job *job = KIO::get( url, false, false ); QMap<QString, QString> metaData; metaData.insert( "PropagateHttpHeader", "true" ); if ( NetAccess::synchronousRun( job, 0, &data, &url, &metaData ) ) { QString responseHeaders = metaData[ "HTTP-Headers" ]; kdDebug()<<"Response header = "<< responseHeaders << endl; }`

Parameters

  job | job which the function will run. Note that after this function finishes running, job is deleted and you can't access it anymore!
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.
  data | if passed and relevant to this job then it will contain the data that was fetched by the job
  finalURL | if passed will contain the final url of this job (it might differ from the one it was created with if there was a redirection)
  metaData | you can pass a pointer to the map with meta data you wish to set on the job. After the job finishes this map will hold all the meta data from the job.

Returns
  true on success, false on failure.

Since
  3.4

Definition at line 273 of file netaccess.cpp.

bool NetAccess::upload | ( | const QString & | src,
|  | const KURL & | target,
|  | QWidget * | window
| ) |  |

static

Uploads file `src` to URL `target`.

Both must be specified, unlike download. Note that this is assumed to be used for saving a file over the network, so overwriting is set to true. This is not the case with copy.

Parameters

  src | URL Referencing the file to upload.
  target | URL containing the final location of the file.
  window | main window associated with this job. This is used to automatically cache and discard authentication information as needed. If NULL, authentication information will be cached only for a short duration after which the user will again be prompted for passwords as needed.

Returns
  true if successful, false for failure

Since
  3.2

Definition at line 94 of file netaccess.cpp.

bool NetAccess::upload | ( | const QString & | src,
|  | const KURL & | target
| ) |  |

static

Deprecated:
  . Use the function above instead.

Definition at line 89 of file netaccess.cpp.

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

- netaccess.h
- netaccess.cpp

KDE Home | KDE Accessibility Home | Description of Access Keys