00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef kfileshare_h
00021
#define kfileshare_h
00022
#include <qobject.h>
00023
00024
#include <kdelibs_export.h>
00025
00026
class KDirWatch;
00027
00032
class KFileSharePrivate :
public QObject
00033 {
00034 Q_OBJECT
00035
00036
public:
00037 KFileSharePrivate();
00038 ~KFileSharePrivate();
00039
KDirWatch* m_watchFile;
00040
static KFileSharePrivate *
self();
00041
static KFileSharePrivate *_self;
00042
protected slots:
00043
void slotFileChange(
const QString &);
00044 };
00045
00051 class KIO_EXPORT KFileShare
00052 {
00053
00054
00055
public:
00059
static void readConfig();
00060
00064
static void readShareList();
00065
00066
00070
static bool isDirectoryShared(
const QString& path );
00071
00072
enum Authorization { NotInitialized, ErrorNotFound, Authorized, UserNotAllowed };
00076
static Authorization authorization();
00077
00078
static QString findExe(
const char* exeName );
00079
00087
static bool setShared(
const QString& path,
bool shared );
00088
00096 enum ShareMode { Simple, Advanced };
00097
00103
static bool sharingEnabled();
00104
00111
static bool isRestricted();
00112
00118
static QString fileShareGroup();
00119
00123
static ShareMode shareMode();
00124
00128
static bool sambaEnabled();
00129
00133
static bool nfsEnabled();
00134
00135
private:
00136
static Authorization s_authorization;
00137
static QStringList* s_shareList;
00138
static ShareMode s_shareMode;
00139
static bool s_sambaEnabled;
00140
static bool s_nfsEnabled;
00141
static bool s_restricted;
00142
static QString s_fileShareGroup;
00143
static bool s_sharingEnabled;
00144
00145 };
00146
00147
#endif