11 #include "utils/Job.h"    18 class CCriticalSection;
    39   bool PublishService(
const std::string& fcr_identifier,
    40                       const std::string& fcr_type,
    41                       const std::string& fcr_name,
    43                       std::vector<std::pair<std::string, std::string> > txt );
    51   bool ForceReAnnounceService(
const std::string& fcr_identifier);
    58   bool HasService(
const std::string& fcr_identifier) 
const;
    75   static void   ReleaseInstance();
    77   static bool   IsInstantiated() { 
return  smp_instance != 0; }
    79   virtual void  ProcessResults() {}
    81   bool IsStarted() { 
return m_started; }
    86   virtual bool doPublishService(
const std::string& fcr_identifier,
    87                                 const std::string& fcr_type,
    88                                 const std::string& fcr_name,
    90                                 const std::vector<std::pair<std::string, std::string> >& txt) = 0;
    94   virtual bool doForceReAnnounceService(
const std::string& fcr_identifier) = 0;
    97   virtual bool doRemoveService(
const std::string& fcr_ident) = 0;
   100   virtual void doStop() = 0;
   103   virtual bool IsZCdaemonRunning() { 
return  true; }
   116     std::vector<std::pair<std::string, std::string> > txt;
   120   CCriticalSection* mp_crit_sec;
   121   typedef std::map<std::string, PublishInfo> tServiceMap;
   122   tServiceMap m_service_map;
   123   bool m_started = 
false;
   127   class CPublish : 
public CJob   130     CPublish(
const std::string& fcr_identifier, 
const PublishInfo& pubinfo);
   131     explicit CPublish(
const tServiceMap& servmap);
   133     bool DoWork() 
override;
   136     tServiceMap m_servmap;
 bool HasService(const std::string &fcr_identifier) const
returns true if fcr_identifier exists 
Definition: Zeroconf.cpp:107
Base class for jobs that are executed asynchronously. 
Definition: Job.h:109
bool RemoveService(const std::string &fcr_identifier)
removes the specified service returns false if fcr_identifier does not exist 
Definition: Zeroconf.cpp:85
this class provides support for zeroconf while the different zeroconf implementations have asynchrono...
Definition: Zeroconf.h:28