00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 00002 /* ***** BEGIN LICENSE BLOCK ***** 00003 * Version: GPL 2.0 00004 * 00005 * K-10 Distributed Processing - Lium, Le Mans 00006 * Copyright (C) 2006 Cedric CHANTEPIE 00007 * 00008 * This program is free software; you can redistribute it and/or 00009 * modify it under the terms of the GNU General Public License 00010 * as published by the Free Software Foundation; either version 2 00011 * of the License, or (at your option) any later version. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU General Public License 00019 * along with this program; if not, write to the Free Software 00020 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00021 * 00022 * ***** END LICENSE BLOCK ***** */ 00023 00024 #ifndef SERVICECHANGELISTENER_H 00025 #define SERVICECHANGELISTENER_H 00026 00027 #include <string> 00028 #include <map> 00029 00030 namespace dnssd { 00031 00032 class Service; // forward declaration 00033 00039 class ServiceChangeListener 00040 { 00041 public: 00042 ~ServiceChangeListener() { }; 00043 00047 virtual bool operator ==(const ServiceChangeListener& other) = 0; 00048 00057 virtual void propertyChanged(Service* aService, 00058 const std::string& aPropertyName, 00059 const std::string& aOldValue, 00060 const std::string& aNewValue) = 0; 00061 00069 virtual void propertiesChanged(Service* aService, 00070 const std::map<std::string,std::string> aOldResources, 00071 const std::map<std::string,std::string> aNewResources) = 0; 00072 00078 //virtual void destroyed(const Service* aService) = 0; 00079 00080 }; 00081 } 00082 #endif