reSIProcate/repro  9694
PrivateKeyPublicationHandler.hxx
Go to the documentation of this file.
00001 #if !defined(Repro_PrivateKeyPublicationHandler_hxx)
00002 #define Repro_PrivateKeyPublicationHandler_hxx
00003 
00004 #include "resip/dum/PublicationHandler.hxx"
00005 
00006 namespace resip
00007 {
00008 class Security;
00009 class SipMessage;
00010 class SecurityAttributes;
00011 class Data;
00012 class Contents;
00013 
00014 }
00015 
00016 namespace repro
00017 {
00018 
00019 class PrivateKeyPublicationHandler : public resip::ServerPublicationHandler
00020 {
00021    public:
00022       PrivateKeyPublicationHandler(resip::Security& security);
00023       virtual void onInitial(resip::ServerPublicationHandle h, 
00024                              const resip::Data& etag, 
00025                              const resip::SipMessage& pub, 
00026                              const resip::Contents* contents,
00027                              const resip::SecurityAttributes* attrs, 
00028                              UInt32 expires);
00029       virtual void onExpired(resip::ServerPublicationHandle h, const resip::Data& etag);
00030       virtual void onRefresh(resip::ServerPublicationHandle, 
00031                              const resip::Data& etag, 
00032                              const resip::SipMessage& pub, 
00033                              const resip::Contents* contents,
00034                              const resip::SecurityAttributes* attrs,
00035                              UInt32 expires);
00036       virtual void onUpdate(resip::ServerPublicationHandle h, 
00037                             const resip::Data& etag, 
00038                             const resip::SipMessage& pub, 
00039                             const resip::Contents* contents,
00040                             const resip::SecurityAttributes* attrs,
00041                             UInt32 expires);
00042       virtual void onRemoved(resip::ServerPublicationHandle h, 
00043                              const resip::Data& etag, 
00044                              const resip::SipMessage& pub, 
00045                              UInt32 expires);
00046 
00047    private:
00048       void add(resip::ServerPublicationHandle h, const resip::Contents* contents);
00049       
00050       resip::Security& mSecurity;
00051 };
00052  
00053 }
00054 
00055 #endif