sipxtacklib  Version 3.3
ProvisioningAgent.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2004-2006 SIPfoundry Inc.
3 // Licensed by SIPfoundry under the LGPL license.
4 //
5 // Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
6 // Licensed to SIPfoundry under a Contributor Agreement.
7 //
8 // $$
10 
11 #ifndef _ProvisioningAgent_h_
12 #define _ProvisioningAgent_h_
13 
14 // SYSTEM INCLUDES
15 // APPLICATION INCLUDES
16 #include <os/OsFS.h>
17 #include <os/OsStatus.h>
18 #include <utl/UtlString.h>
19 #include <utl/UtlHashMap.h>
21 
22 // DEFINES
23 // MACROS
24 // EXTERNAL FUNCTIONS
25 // EXTERNAL VARIABLES
26 // CONSTANTS
27 // STRUCTS
28 // TYPEDEFS
29 // FORWARD DECLARATIONS
30 class TiXmlDocument;
31 class ProvisioningClass;
32 
37 public:
38 /* //////////////////////////// PUBLIC //////////////////////////////////// */
39  enum ReturnCodes {
40  UNDEFINED = 0,
41  SUCCESS = 1,
42  FAILURE = 2,
43  READONLY = 3,
48  DUPLICATE = 8,
50  };
51 
52 /* ============================ CREATORS ================================== */
53 
57  ProvisioningAgent(const char* pServerClass = NULL, bool persistentStore = FALSE);
58 
63 
64 /* ============================ MANIPULATORS ============================== */
65  OsStatus registerClass(ProvisioningClass* pProvisioningClass);
66  OsStatus unregisterClass(ProvisioningClass* pProvisioningClass);
67 
68  ProvisioningAttrList* Create(ProvisioningAttrList& rRequestAttributes);
69  ProvisioningAttrList* Delete(ProvisioningAttrList& rRequestAttributes);
70  ProvisioningAttrList* Set(ProvisioningAttrList& rRequestAttributes);
71  ProvisioningAttrList* Get(ProvisioningAttrList& rRequestAttributes);
72  ProvisioningAttrList* Action(ProvisioningAttrList& rRequestAttributes);
73 
74 
75 /* ============================ ACCESSORS ================================= */
76 
77 /* ============================ INQUIRY =================================== */
78 
79 /* //////////////////////////// PROTECTED ///////////////////////////////// */
80 protected:
82 
83 /* //////////////////////////// PRIVATE /////////////////////////////////// */
84 private:
85  UtlString mServerClass; /* The name of the server class that
86  * this agent is provisioning. */
87  OsPath* mpConfigFile; /* The path and name of the xml config
88  * file for this Provisioning Agent. */
89  TiXmlDocument* mpXmlConfigDoc; /* The TinyXml persistant store for
90  * this Provisioning Agent. */
91  UtlHashMap mRegisteredClasses; /* Provisioning Classes that are retistered
92  * with this Provisioning Agent. */
93 };
94 
95 #endif // _ProvisioningAgent_h_
96 
Definition: ProvisioningAgent.h:48
Definition: ProvisioningAttrList.h:33
OsStatus unregisterClass(ProvisioningClass *pProvisioningClass)
Definition: ProvisioningAgent.cpp:201
ProvisioningAttrList * Create(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:230
OsStatus registerClass(ProvisioningClass *pProvisioningClass)
Definition: ProvisioningAgent.cpp:162
ProvisioningAttrList * Set(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:292
ReturnCodes
Definition: ProvisioningAgent.h:39
Definition: ProvisioningAgent.h:49
ProvisioningAttrList * Delete(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:261
ProvisioningAgent(const char *pServerClass=NULL, bool persistentStore=FALSE)
Default constructor.
Definition: ProvisioningAgent.cpp:48
ProvisioningAttrList * Get(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:323
ProvisioningAttrList * Action(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:354
Definition: ProvisioningAgent.h:47
Definition: ProvisioningClass.h:33
Definition: ProvisioningAgent.h:43
Definition: ProvisioningAgent.h:40
Definition: ProvisioningAgent.h:42
ProvisioningClass * lookupProvisioningClass(ProvisioningAttrList &rRequestAttributes)
Definition: ProvisioningAgent.cpp:391
Definition: ProvisioningAgent.h:46
Definition: ProvisioningAgent.h:45
Definition: ProvisioningAgent.h:36
Definition: ProvisioningAgent.h:41
~ProvisioningAgent()
Destructor.
Definition: ProvisioningAgent.cpp:139
Definition: ProvisioningAgent.h:44

sipXtackLib home page