ariba::utility::MulticastDns Class Reference

#include <source/ariba/utility/bootstrap/modules/multicastdns/MulticastDns.h>

Inherits ariba::utility::BootstrapModule.

Collaboration diagram for ariba::utility::MulticastDns:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MulticastDns (BootstrapInformationCallback *_callback, string info)
virtual ~MulticastDns ()
virtual void start ()
virtual void stop ()
virtual string getName ()
virtual string getInformation ()
virtual bool isFunctional ()
virtual void publishService (string name, string info1, string info2, string info3)
virtual void revokeService (string name)

Private Types

typedef map< string,
AvahiEntryGroup * > 
AvahiGroupMap

Private Member Functions

 use_logging_h (MulticastDns)

Static Private Member Functions

static void client_callback (AvahiClient *client, AvahiClientState state, void *userdata)
static void entry_group_callback (AvahiEntryGroup *group, AvahiEntryGroupState state, void *userdata)
static void browse_callback (AvahiServiceBrowser *browser, AvahiIfIndex interface, AvahiProtocol protocol, AvahiBrowserEvent event, const char *name, const char *type, const char *domain, AvahiLookupResultFlags flags, void *userdata)
static void resolve_callback (AvahiServiceResolver *resolver, AvahiIfIndex interface, AvahiProtocol protocol, AvahiResolverEvent event, const char *name, const char *type, const char *domain, const char *host_name, const AvahiAddress *address, uint16_t port, AvahiStringList *txt, AvahiLookupResultFlags flags, void *userdata)

Private Attributes

AvahiClient * avahiclient
AvahiThreadedPoll * avahipoll
AvahiServiceBrowser * avahibrowser
AvahiGroupMap avahigroups

Static Private Attributes

static const string serviceType = "_spovnet._tcp"

Detailed Description

Definition at line 70 of file MulticastDns.h.


Member Typedef Documentation

typedef map<string, AvahiEntryGroup*> ariba::utility::MulticastDns::AvahiGroupMap [private]

Definition at line 94 of file MulticastDns.h.


Constructor & Destructor Documentation

ariba::utility::MulticastDns::MulticastDns ( BootstrapInformationCallback _callback,
string  info 
)

Definition at line 48 of file MulticastDns.cpp.

References avahibrowser, avahiclient, and avahipoll.

ariba::utility::MulticastDns::~MulticastDns (  )  [virtual]

Definition at line 57 of file MulticastDns.cpp.


Member Function Documentation

void ariba::utility::MulticastDns::browse_callback ( AvahiServiceBrowser *  browser,
AvahiIfIndex  interface,
AvahiProtocol  protocol,
AvahiBrowserEvent  event,
const char *  name,
const char *  type,
const char *  domain,
AvahiLookupResultFlags  flags,
void *  userdata 
) [static, private]

Definition at line 343 of file MulticastDns.cpp.

References avahipoll, logging_debug, logging_warn, and resolve_callback().

Referenced by start().

void ariba::utility::MulticastDns::client_callback ( AvahiClient *  client,
AvahiClientState  state,
void *  userdata 
) [static, private]

Definition at line 261 of file MulticastDns.cpp.

References avahipoll, logging_debug, and logging_warn.

Referenced by start().

void ariba::utility::MulticastDns::entry_group_callback ( AvahiEntryGroup *  group,
AvahiEntryGroupState  state,
void *  userdata 
) [static, private]

Definition at line 300 of file MulticastDns.cpp.

References avahipoll, logging_debug, and logging_warn.

Referenced by publishService().

string ariba::utility::MulticastDns::getInformation (  )  [virtual]

Implements ariba::utility::BootstrapModule.

Definition at line 64 of file MulticastDns.cpp.

string ariba::utility::MulticastDns::getName (  )  [virtual]

Implements ariba::utility::BootstrapModule.

Definition at line 60 of file MulticastDns.cpp.

bool ariba::utility::MulticastDns::isFunctional (  )  [virtual]

Implements ariba::utility::BootstrapModule.

Definition at line 68 of file MulticastDns.cpp.

void ariba::utility::MulticastDns::publishService ( string  name,
string  info1,
string  info2,
string  info3 
) [virtual]
void ariba::utility::MulticastDns::resolve_callback ( AvahiServiceResolver *  resolver,
AvahiIfIndex  interface,
AvahiProtocol  protocol,
AvahiResolverEvent  event,
const char *  name,
const char *  type,
const char *  domain,
const char *  host_name,
const AvahiAddress *  address,
uint16_t  port,
AvahiStringList *  txt,
AvahiLookupResultFlags  flags,
void *  userdata 
) [static, private]
void ariba::utility::MulticastDns::revokeService ( string  name  )  [virtual]

Implements ariba::utility::BootstrapModule.

Definition at line 239 of file MulticastDns.cpp.

References avahigroups, avahipoll, logging_debug, and logging_warn.

void ariba::utility::MulticastDns::start (  )  [virtual]
void ariba::utility::MulticastDns::stop (  )  [virtual]

Implements ariba::utility::BootstrapModule.

Definition at line 124 of file MulticastDns.cpp.

References avahibrowser, avahiclient, avahigroups, and avahipoll.

ariba::utility::MulticastDns::use_logging_h ( MulticastDns   )  [private]

Member Data Documentation

AvahiServiceBrowser* ariba::utility::MulticastDns::avahibrowser [private]

Definition at line 92 of file MulticastDns.h.

Referenced by MulticastDns(), start(), and stop().

Definition at line 90 of file MulticastDns.h.

Referenced by MulticastDns(), publishService(), start(), and stop().

Definition at line 95 of file MulticastDns.h.

Referenced by publishService(), revokeService(), and stop().

AvahiThreadedPoll* ariba::utility::MulticastDns::avahipoll [private]
const string ariba::utility::MulticastDns::serviceType = "_spovnet._tcp" [static, private]

Definition at line 86 of file MulticastDns.h.

Referenced by publishService(), and start().


The documentation for this class was generated from the following files:

Generated on Fri Dec 10 11:09:25 2010 for Ariba by  doxygen 1.6.1