agent.h
00001 /* 00002 This file is part of libkabc. 00003 Copyright (c) 2002 Tobias Koenig <tokoe@kde.org> 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License as published by the Free Software Foundation; either 00008 version 2 of the License, or (at your option) any later version. 00009 00010 This library is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 Library General Public License for more details. 00014 00015 You should have received a copy of the GNU Library General Public License 00016 along with this library; see the file COPYING.LIB. If not, write to 00017 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00018 Boston, MA 02111-1307, USA. 00019 */ 00020 00021 #ifndef KABC_AGENT_H 00022 #define KABC_AGENT_H 00023 00024 namespace KABC { 00025 00026 class Addressee; 00027 00034 class Agent 00035 { 00036 friend QDataStream &operator<<( QDataStream &, const Agent & ); 00037 friend QDataStream &operator>>( QDataStream &, Agent & ); 00038 00039 public: 00040 00044 Agent(); 00045 00051 Agent( const QString &url ); 00052 00058 Agent( Addressee *addressee ); 00059 00063 ~Agent(); 00064 00065 00066 bool operator==( const Agent & ) const; 00067 bool operator!=( const Agent & ) const; 00068 00076 void setUrl( const QString &url ); 00077 00084 void setAddressee( Addressee *addressee ); 00085 00093 bool isIntern() const; 00094 00098 QString url() const; 00099 00103 Addressee* addressee() const; 00104 00108 QString asString() const; 00109 00110 private: 00111 Addressee *mAddressee; 00112 QString mUrl; 00113 00114 int mIntern; 00115 }; 00116 00117 QDataStream &operator<<( QDataStream &, const Agent & ); 00118 QDataStream &operator>>( QDataStream &, Agent & ); 00119 00120 } 00121 #endif