• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdeio/tdeio
 

tdeio/tdeio

  • tdeio
  • tdeio
forwardingslavebase.h
1/* This file is part of the KDE project
2 Copyright (c) 2004 Kevin Ottens <ervin ipsquad net>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA.
18*/
19
20#ifndef _FORWARDING_SLAVE_BASE_H_
21#define _FORWARDING_SLAVE_BASE_H_
22
23#include <tdeio/slavebase.h>
24#include <tdeio/jobclasses.h>
25
26#include <tqobject.h>
27
28namespace TDEIO
29{
30
31class ForwardingSlaveBasePrivate;
32
88class TDEIO_EXPORT ForwardingSlaveBase : public TQObject, public SlaveBase
89{
90TQ_OBJECT
91public:
92 ForwardingSlaveBase(const TQCString &protocol,
93 const TQCString &poolSocket,
94 const TQCString &appSocket);
95 virtual ~ForwardingSlaveBase();
96
97 virtual void get(const KURL &url);
98
99 virtual void put(const KURL &url, int permissions,
100 bool overwrite, bool resume);
101
102 virtual void stat(const KURL &url);
103
104 virtual void mimetype(const KURL &url);
105
106 virtual void listDir(const KURL &url);
107
108 virtual void mkdir(const KURL &url, int permissions);
109
110 virtual void rename(const KURL &src, const KURL &dest, bool overwrite);
111
112 virtual void symlink(const TQString &target, const KURL &dest,
113 bool overwrite);
114
115 virtual void chmod(const KURL &url, int permissions);
116
117 virtual void copy(const KURL &src, const KURL &dest,
118 int permissions, bool overwrite);
119
120 virtual void del(const KURL &url, bool isfile);
121
122 virtual void localURL(const KURL& remoteURL);
123
124protected:
137 virtual bool rewriteURL(const KURL &url, KURL &newURL)=0;
138
149 virtual void prepareUDSEntry(TDEIO::UDSEntry &entry,
150 bool listing=false) const;
151
156 KURL processedURL() const { return m_processedURL; }
157
162 KURL requestedURL() const { return m_requestedURL; }
163
164private:
165 KURL m_processedURL;
166 KURL m_requestedURL;
167 ForwardingSlaveBasePrivate *d;
168
169 bool internalRewriteURL(const KURL &url, KURL &newURL);
170
171 void connectJob(Job *job);
172 void connectSimpleJob(SimpleJob *job);
173 void connectListJob(ListJob *job);
174 void connectTransferJob(TransferJob *job);
175 void connectLocalURLJob(LocalURLJob *job);
176
177private slots:
178 // TDEIO::Job
179 void slotResult(TDEIO::Job *job);
180 void slotWarning(TDEIO::Job *job, const TQString &msg);
181 void slotInfoMessage(TDEIO::Job *job, const TQString &msg);
182 void slotTotalSize(TDEIO::Job *job, TDEIO::filesize_t size);
183 void slotProcessedSize(TDEIO::Job *job, TDEIO::filesize_t size);
184 void slotSpeed(TDEIO::Job *job, unsigned long bytesPerSecond);
185
186 // TDEIO::SimpleJob subclasses
187 void slotRedirection(TDEIO::Job *job, const KURL &url);
188
189 // TDEIO::ListJob
190 void slotEntries(TDEIO::Job *job, const TDEIO::UDSEntryList &entries);
191
192 // TDEIO::TransferJob
193 void slotData(TDEIO::Job *job, const TQByteArray &data);
194 void slotDataReq(TDEIO::Job *job, TQByteArray &data);
195 void slotMimetype (TDEIO::Job *job, const TQString &type);
196 void slotCanResume (TDEIO::Job *job, TDEIO::filesize_t offset);
197
198 // TDEIO::LocalURLJob
199 void slotLocalURL(TDEIO::LocalURLJob *, const KURL&, bool);
200};
201
202}
203
204#endif
TDEIO::ForwardingSlaveBase::symlink
virtual void symlink(const TQString &target, const KURL &dest, bool overwrite)
Creates a symbolic link named dest, pointing to target, which may be a relative or an absolute path.
Definition forwardingslavebase.cpp:218
TDEIO::ForwardingSlaveBase::prepareUDSEntry
virtual void prepareUDSEntry(TDEIO::UDSEntry &entry, bool listing=false) const
Allow to modify a UDSEntry before it's sent to the ioslave enpoint.
Definition forwardingslavebase.cpp:66
TDEIO::ForwardingSlaveBase::rename
virtual void rename(const KURL &src, const KURL &dest, bool overwrite)
Rename oldname into newname.
Definition forwardingslavebase.cpp:203
TDEIO::ForwardingSlaveBase::rewriteURL
virtual bool rewriteURL(const KURL &url, KURL &newURL)=0
Rewrite an url to it's forwarded counterpart.
TDEIO::ForwardingSlaveBase::processedURL
KURL processedURL() const
Return the URL being processed by the ioslave Only access it inside prepareUDSEntry().
Definition forwardingslavebase.h:156
TDEIO::ForwardingSlaveBase::stat
virtual void stat(const KURL &url)
Finds all details for one file or directory.
Definition forwardingslavebase.cpp:147
TDEIO::ForwardingSlaveBase::chmod
virtual void chmod(const KURL &url, int permissions)
Change permissions on path The slave emits ERR_DOES_NOT_EXIST or ERR_CANNOT_CHMOD.
Definition forwardingslavebase.cpp:233
TDEIO::ForwardingSlaveBase::requestedURL
KURL requestedURL() const
Return the URL asked to the ioslave Only access it inside prepareUDSEntry().
Definition forwardingslavebase.h:162
TDEIO::ForwardingSlaveBase::del
virtual void del(const KURL &url, bool isfile)
Delete a file or directory.
Definition forwardingslavebase.cpp:263
TDEIO::ForwardingSlaveBase::mimetype
virtual void mimetype(const KURL &url)
Finds mimetype for one file or directory.
Definition forwardingslavebase.cpp:161
TDEIO::ForwardingSlaveBase::get
virtual void get(const KURL &url)
get, aka read.
Definition forwardingslavebase.cpp:117
TDEIO::ForwardingSlaveBase::localURL
virtual void localURL(const KURL &remoteURL)
For use with for ForwardingSlaveBase Returns the local URL of the given remote URL if possible.
Definition forwardingslavebase.cpp:285
TDEIO::ForwardingSlaveBase::put
virtual void put(const KURL &url, int permissions, bool overwrite, bool resume)
put, i.e.
Definition forwardingslavebase.cpp:131
TDEIO::ForwardingSlaveBase::mkdir
virtual void mkdir(const KURL &url, int permissions)
Create a directory.
Definition forwardingslavebase.cpp:189
TDEIO::ForwardingSlaveBase::listDir
virtual void listDir(const KURL &url)
Lists the contents of url.
Definition forwardingslavebase.cpp:175
TDEIO::ForwardingSlaveBase::copy
virtual void copy(const KURL &src, const KURL &dest, int permissions, bool overwrite)
Copy src into dest.
Definition forwardingslavebase.cpp:247
TDEIO::Job
The base class for all jobs.
Definition jobclasses.h:67
TDEIO::ListJob
A ListJob is allows you to get the get the content of a directory.
Definition jobclasses.h:1391
TDEIO::LocalURLJob
A TDEIO job that finds a local URL.
Definition jobclasses.h:1865
TDEIO::SimpleJob
A simple job (one url and one command).
Definition jobclasses.h:527
TDEIO::TransferJob
The transfer job pumps data into and/or out of a Slave.
Definition jobclasses.h:874
TDEIO
A namespace for TDEIO globals.
Definition authinfo.h:29
TDEIO::UDSEntry
TQValueList< UDSAtom > UDSEntry
An entry is the list of atoms containing all the information for a file or URL.
Definition global.h:507
TDEIO::filesize_t
TQ_ULLONG filesize_t
64-bit file size
Definition global.h:39

tdeio/tdeio

Skip menu "tdeio/tdeio"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

tdeio/tdeio

Skip menu "tdeio/tdeio"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdeio/tdeio by doxygen 1.15.0
This website is maintained by Timothy Pearson.