kitchensync

unknownsyncee.cpp

00001 /*
00002     This file is part of KitchenSync.
00003 
00004     Copyright (c) 2002 Holger Freyther <zecke@handhelds.org>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #include "unknownsyncee.h"
00023 
00024 using namespace KSync;
00025 
00026 UnknownSyncEntry::UnknownSyncEntry( Syncee *parent )
00027   : SyncEntry( parent )
00028 {
00029   setType( QString::fromLatin1("UnknownSyncEntry") );
00030 }
00031 
00032 UnknownSyncEntry::UnknownSyncEntry( const QByteArray &array,
00033                                     const QString &path, Syncee *parent )
00034     : SyncEntry( parent ), mArray( array ), mPath( path )
00035 {
00036     setType( QString::fromLatin1("UnknownSyncEntry") );
00037     mHasAccess = false;
00038     mMode = ByteArray;
00039     mTime = QDateTime::currentDateTime();
00040 }
00041 
00042 UnknownSyncEntry::UnknownSyncEntry( const QString &fileName,
00043                                     const QString &path, Syncee *parent )
00044     : SyncEntry( parent ), mPath( path ), mFileName( fileName )
00045 {
00046     setType( QString::fromLatin1("UnknownSyncEntry") );
00047     mHasAccess = false;
00048     mMode = Tempfile;
00049     mTime = QDateTime::currentDateTime();
00050 }
00051 
00052 UnknownSyncEntry::UnknownSyncEntry( const UnknownSyncEntry& entry)
00053     : SyncEntry( entry )
00054 {
00055     //  type is copied by the SyncEntry c'tor
00056     mMode = entry.mMode;
00057     mHasAccess = entry.mHasAccess;
00058     mPath = entry.mPath;
00059     mArray = entry.mArray;
00060     mTime = entry.mTime;
00061 }
00062 
00063 UnknownSyncEntry::~UnknownSyncEntry()
00064 {
00065 }
00066 
00067 QByteArray UnknownSyncEntry::array() const
00068 {
00069     return mArray;
00070 }
00071 
00072 QString UnknownSyncEntry::path() const
00073 {
00074     return mPath;
00075 }
00076 
00077 QString UnknownSyncEntry::fileName() const
00078 {
00079     return mFileName;
00080 }
00081 
00082 int UnknownSyncEntry::mode() const
00083 {
00084     return mMode;
00085 }
00086 
00087 QDateTime UnknownSyncEntry::lastAccess() const
00088 {
00089     return mTime;
00090 }
00091 
00092 void UnknownSyncEntry::setLastAccess( const QDateTime& time )
00093 {
00094     mHasAccess = true;
00095     mTime = time;
00096 }
00097 
00098 QString UnknownSyncEntry::name()
00099 {
00100     return mPath;
00101 }
00102 
00103 QString UnknownSyncEntry::id()
00104 {
00105     QString ids;
00106     ids = mPath;
00107 
00108     return ids;
00109 }
00110 
00111 QString UnknownSyncEntry::timestamp()
00112 {
00113     if (mHasAccess )
00114         return mTime.toString();
00115     else
00116         return id();
00117 }
00118 
00119 bool UnknownSyncEntry::equals( SyncEntry* entry )
00120 {
00121     UnknownSyncEntry* unEntry = dynamic_cast<UnknownSyncEntry*> ( entry );
00122     if ( !unEntry )
00123         return false;
00124 
00125     if (mHasAccess == unEntry->mHasAccess &&
00126         mMode == unEntry->mMode &&
00127         mFileName == unEntry->mFileName &&
00128         mPath == unEntry->mPath &&
00129         mArray == unEntry->mArray) {
00130 
00131         if (mHasAccess )
00132             return (mTime == unEntry->mTime );
00133         else
00134             return true;
00135     }
00136     else
00137         return false;
00138 }
00139 
00140 SyncEntry* UnknownSyncEntry::clone()
00141 {
00142     return new UnknownSyncEntry( *this );
00143 }
00144 
00145 
00146 UnknownSyncee::UnknownSyncee( Merger* merger) : Syncee(merger)
00147 {
00148     setType( QString::fromLatin1("UnknownSyncee") );
00149     mList.setAutoDelete( true );
00150 }
00151 
00152 UnknownSyncee::~UnknownSyncee()
00153 {
00154 }
00155 
00156 UnknownSyncEntry *UnknownSyncee::firstEntry()
00157 {
00158     return mList.first();
00159 }
00160 
00161 UnknownSyncEntry *UnknownSyncee::nextEntry()
00162 {
00163     return mList.next();
00164 }
00165 
00166 
00167 void UnknownSyncee::addEntry( SyncEntry *entry )
00168 {
00169     UnknownSyncEntry *unEntry;
00170     unEntry = dynamic_cast<UnknownSyncEntry *> (entry);
00171     if (unEntry == 0 )
00172         return;
00173     unEntry->setSyncee( this );
00174     mList.append( unEntry );
00175 }
00176 
00177 void UnknownSyncee::removeEntry( SyncEntry *entry )
00178 {
00179     UnknownSyncEntry *unEntry;
00180     unEntry = dynamic_cast<UnknownSyncEntry *> (entry);
00181     if (unEntry == 0 )
00182         return;
00183 
00184     unEntry->setSyncee( 0 );
00185     mList.remove( unEntry );
00186 }
00187 
00188 bool UnknownSyncee::writeBackup( const QString&  ) {
00189     return false;
00190 }
00191 
00192 bool UnknownSyncee::restoreBackup( const QString&  ) {
00193     return false;
00194 }
KDE Home | KDE Accessibility Home | Description of Access Keys