Kea  1.9.9-git
config_backend_pool_dhcp4.cc
Go to the documentation of this file.
1 // Copyright (C) 2018-2020 Internet Systems Consortium, Inc. ("ISC")
2 //
3 // This Source Code Form is subject to the terms of the Mozilla Public
4 // License, v. 2.0. If a copy of the MPL was not distributed with this
5 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
6 
7 #include <config.h>
9 
10 using namespace isc::asiolink;
11 using namespace isc::data;
12 using namespace isc::db;
13 
14 namespace isc {
15 namespace dhcp {
16 
18 ConfigBackendPoolDHCPv4::getSubnet4(const BackendSelector& backend_selector,
19  const ServerSelector& server_selector,
20  const std::string& subnet_prefix) const {
21  Subnet4Ptr subnet;
22  getPropertyPtrConst<Subnet4Ptr, const std::string&>
23  (&ConfigBackendDHCPv4::getSubnet4, backend_selector, server_selector,
24  subnet, subnet_prefix);
25  return (subnet);
26 }
27 
29 ConfigBackendPoolDHCPv4::getSubnet4(const BackendSelector& backend_selector,
30  const ServerSelector& server_selector,
31  const SubnetID& subnet_id) const {
32  Subnet4Ptr subnet;
33  getPropertyPtrConst<Subnet4Ptr, const SubnetID&>
34  (&ConfigBackendDHCPv4::getSubnet4, backend_selector, server_selector,
35  subnet, subnet_id);
36  return (subnet);
37 }
38 
40 ConfigBackendPoolDHCPv4::getAllSubnets4(const BackendSelector& backend_selector,
41  const ServerSelector& server_selector) const {
42  Subnet4Collection subnets;
43  getAllPropertiesConst<Subnet4Collection>
44  (&ConfigBackendDHCPv4::getAllSubnets4, backend_selector, server_selector,
45  subnets);
46  return (subnets);
47 }
48 
50 ConfigBackendPoolDHCPv4::getModifiedSubnets4(const BackendSelector& backend_selector,
51  const ServerSelector& server_selector,
52  const boost::posix_time::ptime& modification_time) const {
53  Subnet4Collection subnets;
54  getMultiplePropertiesConst<Subnet4Collection, const boost::posix_time::ptime&>
55  (&ConfigBackendDHCPv4::getModifiedSubnets4, backend_selector, server_selector,
56  subnets, modification_time);
57  return (subnets);
58 }
59 
61 ConfigBackendPoolDHCPv4::getSharedNetworkSubnets4(const db::BackendSelector& backend_selector,
62  const db::ServerSelector& server_selector,
63  const std::string& shared_network_name) const {
64  Subnet4Collection subnets;
65  getMultiplePropertiesConst<Subnet4Collection, const std::string&>
66  (&ConfigBackendDHCPv4::getSharedNetworkSubnets4, backend_selector, server_selector,
67  subnets, shared_network_name);
68  return (subnets);
69 }
70 
72 ConfigBackendPoolDHCPv4::getSharedNetwork4(const BackendSelector& backend_selector,
73  const ServerSelector& server_selector,
74  const std::string& name) const {
75  SharedNetwork4Ptr shared_network;
76  getPropertyPtrConst<SharedNetwork4Ptr, const std::string&>
77  (&ConfigBackendDHCPv4::getSharedNetwork4, backend_selector, server_selector,
78  shared_network, name);
79  return (shared_network);
80 }
81 
83 ConfigBackendPoolDHCPv4::getAllSharedNetworks4(const BackendSelector& backend_selector,
84  const ServerSelector& server_selector) const {
85  SharedNetwork4Collection shared_networks;
86  getAllPropertiesConst<SharedNetwork4Collection>
87  (&ConfigBackendDHCPv4::getAllSharedNetworks4, backend_selector, server_selector,
88  shared_networks);
89  return (shared_networks);
90 }
91 
93 ConfigBackendPoolDHCPv4::
94 getModifiedSharedNetworks4(const BackendSelector& backend_selector,
95  const ServerSelector& server_selector,
96  const boost::posix_time::ptime& modification_time) const {
97  SharedNetwork4Collection shared_networks;
98  getMultiplePropertiesConst<SharedNetwork4Collection, const boost::posix_time::ptime&>
99  (&ConfigBackendDHCPv4::getModifiedSharedNetworks4, backend_selector, server_selector,
100  shared_networks, modification_time);
101  return (shared_networks);
102 }
103 
105 ConfigBackendPoolDHCPv4::getOptionDef4(const BackendSelector& backend_selector,
106  const ServerSelector& server_selector,
107  const uint16_t code,
108  const std::string& space) const {
109  OptionDefinitionPtr option_def;
110  getPropertyPtrConst<OptionDefinitionPtr, uint16_t, const std::string&>
111  (&ConfigBackendDHCPv4::getOptionDef4, backend_selector, server_selector,
112  option_def, code, space);
113  return (option_def);
114 }
115 
117 ConfigBackendPoolDHCPv4::getAllOptionDefs4(const BackendSelector& backend_selector,
118  const ServerSelector& server_selector) const {
119  OptionDefContainer option_defs;
120  getAllPropertiesConst<OptionDefContainer>
121  (&ConfigBackendDHCPv4::getAllOptionDefs4, backend_selector, server_selector,
122  option_defs);
123  return (option_defs);
124 }
125 
127 ConfigBackendPoolDHCPv4::getModifiedOptionDefs4(const BackendSelector& backend_selector,
128  const ServerSelector& server_selector,
129  const boost::posix_time::ptime& modification_time) const {
130  OptionDefContainer option_defs;
131  getMultiplePropertiesConst<OptionDefContainer, const boost::posix_time::ptime&>
132  (&ConfigBackendDHCPv4::getModifiedOptionDefs4, backend_selector, server_selector,
133  option_defs, modification_time);
134  return (option_defs);
135 }
136 
138 ConfigBackendPoolDHCPv4::getOption4(const BackendSelector& backend_selector,
139  const ServerSelector& server_selector,
140  const uint16_t code,
141  const std::string& space) const {
142  OptionDescriptorPtr option;
143  getPropertyPtrConst<OptionDescriptorPtr, uint16_t, const std::string&>
144  (&ConfigBackendDHCPv4::getOption4, backend_selector, server_selector,
145  option, code, space);
146  return (option);
147 }
148 
150 ConfigBackendPoolDHCPv4::getAllOptions4(const BackendSelector& backend_selector,
151  const ServerSelector& server_selector) const {
152  OptionContainer options;
153  getAllPropertiesConst<OptionContainer>
154  (&ConfigBackendDHCPv4::getAllOptions4, backend_selector, server_selector,
155  options);
156  return (options);
157 }
158 
160 ConfigBackendPoolDHCPv4::getModifiedOptions4(const BackendSelector& backend_selector,
161  const ServerSelector& server_selector,
162  const boost::posix_time::ptime& modification_time) const {
163  OptionContainer options;
164  getMultiplePropertiesConst<OptionContainer, const boost::posix_time::ptime&>
165  (&ConfigBackendDHCPv4::getModifiedOptions4, backend_selector, server_selector,
166  options, modification_time);
167  return (options);
168 }
169 
171 ConfigBackendPoolDHCPv4::getGlobalParameter4(const BackendSelector& backend_selector,
172  const ServerSelector& server_selector,
173  const std::string& name) const {
174  StampedValuePtr parameter;
175  getPropertyPtrConst<StampedValuePtr, const std::string&>
176  (&ConfigBackendDHCPv4::getGlobalParameter4, backend_selector,
177  server_selector, parameter, name);
178  return (parameter);
179 }
180 
182 ConfigBackendPoolDHCPv4::getAllGlobalParameters4(const BackendSelector& backend_selector,
183  const ServerSelector& server_selector) const {
184  StampedValueCollection parameters;
185  getAllPropertiesConst<StampedValueCollection>
186  (&ConfigBackendDHCPv4::getAllGlobalParameters4, backend_selector,
187  server_selector, parameters);
188  return (parameters);
189 }
190 
192 ConfigBackendPoolDHCPv4::
193 getModifiedGlobalParameters4(const db::BackendSelector& backend_selector,
194  const db::ServerSelector& server_selector,
195  const boost::posix_time::ptime& modification_time) const {
196  StampedValueCollection parameters;
197  getMultiplePropertiesConst<StampedValueCollection, const boost::posix_time::ptime&>
198  (&ConfigBackendDHCPv4::getModifiedGlobalParameters4, backend_selector,
199  server_selector, parameters, modification_time);
200  return (parameters);
201 }
202 
204 ConfigBackendPoolDHCPv4::
205 getRecentAuditEntries(const db::BackendSelector& backend_selector,
206  const db::ServerSelector& server_selector,
207  const boost::posix_time::ptime& modification_time,
208  const uint64_t& modification_id) const {
209  AuditEntryCollection audit_entries;
210  getMultiplePropertiesConst<AuditEntryCollection, const boost::posix_time::ptime&>
211  (&ConfigBackendDHCPv4::getRecentAuditEntries, backend_selector,
212  server_selector, audit_entries, modification_time, modification_id);
213  return (audit_entries);
214 }
215 
217 ConfigBackendPoolDHCPv4::getAllServers4(const BackendSelector& backend_selector) const {
218  ServerCollection servers;
219  getAllBackendPropertiesConst<ServerCollection>
220  (&ConfigBackendDHCPv4::getAllServers4, backend_selector, servers);
221  return (servers);
222 }
223 
224 ServerPtr
225 ConfigBackendPoolDHCPv4::getServer4(const BackendSelector& backend_selector,
226  const ServerTag& server_tag) const {
227  ServerPtr server;
228  getBackendPropertyPtrConst<ServerPtr, const ServerTag&>
229  (&ConfigBackendDHCPv4::getServer4, backend_selector, server,
230  server_tag);
231  return (server);
232 }
233 
234 void
235 ConfigBackendPoolDHCPv4::createUpdateSubnet4(const BackendSelector& backend_selector,
236  const ServerSelector& server_selector,
237  const Subnet4Ptr& subnet) {
238  createUpdateDeleteProperty<void, const Subnet4Ptr&>
239  (&ConfigBackendDHCPv4::createUpdateSubnet4, backend_selector,
240  server_selector, subnet);
241 }
242 
243 void
244 ConfigBackendPoolDHCPv4::createUpdateSharedNetwork4(const BackendSelector& backend_selector,
245  const ServerSelector& server_selector,
246  const SharedNetwork4Ptr& shared_network) {
247  createUpdateDeleteProperty<void, const SharedNetwork4Ptr&>
248  (&ConfigBackendDHCPv4::createUpdateSharedNetwork4, backend_selector,
249  server_selector, shared_network);
250 }
251 
252 void
253 ConfigBackendPoolDHCPv4::createUpdateOptionDef4(const BackendSelector& backend_selector,
254  const ServerSelector& server_selector,
255  const OptionDefinitionPtr& option_def) {
256  createUpdateDeleteProperty<void, const OptionDefinitionPtr&>
257  (&ConfigBackendDHCPv4::createUpdateOptionDef4, backend_selector,
258  server_selector, option_def);
259 }
260 
261 void
262 ConfigBackendPoolDHCPv4::createUpdateOption4(const BackendSelector& backend_selector,
263  const ServerSelector& server_selector,
264  const OptionDescriptorPtr& option) {
265  createUpdateDeleteProperty<void, const OptionDescriptorPtr&>
266  (&ConfigBackendDHCPv4::createUpdateOption4, backend_selector,
267  server_selector, option);
268 }
269 
270 void
271 ConfigBackendPoolDHCPv4::createUpdateOption4(const BackendSelector& backend_selector,
272  const ServerSelector& server_selector,
273  const std::string& shared_network_name,
274  const OptionDescriptorPtr& option) {
275  createUpdateDeleteProperty<void, const std::string&, const OptionDescriptorPtr&>
276  (&ConfigBackendDHCPv4::createUpdateOption4, backend_selector,
277  server_selector, shared_network_name, option);
278 }
279 
280 
281 void
282 ConfigBackendPoolDHCPv4::createUpdateOption4(const BackendSelector& backend_selector,
283  const ServerSelector& server_selector,
284  const SubnetID& subnet_id,
285  const OptionDescriptorPtr& option) {
286  createUpdateDeleteProperty<void, const SubnetID&, const OptionDescriptorPtr&>
287  (&ConfigBackendDHCPv4::createUpdateOption4, backend_selector,
288  server_selector, subnet_id, option);
289 }
290 
291 void
292 ConfigBackendPoolDHCPv4::createUpdateOption4(const BackendSelector& backend_selector,
293  const ServerSelector& server_selector,
294  const IOAddress& pool_start_address,
295  const IOAddress& pool_end_address,
296  const OptionDescriptorPtr& option) {
297  createUpdateDeleteProperty<void, const IOAddress&, const IOAddress&,
298  const OptionDescriptorPtr&>
299  (&ConfigBackendDHCPv4::createUpdateOption4, backend_selector,
300  server_selector, pool_start_address, pool_end_address, option);
301 }
302 
303 void
304 ConfigBackendPoolDHCPv4::createUpdateGlobalParameter4(const BackendSelector& backend_selector,
305  const ServerSelector& server_selector,
306  const StampedValuePtr& value) {
307  createUpdateDeleteProperty<void, const StampedValuePtr&>
308  (&ConfigBackendDHCPv4::createUpdateGlobalParameter4, backend_selector,
309  server_selector, value);
310 }
311 
312 void
313 ConfigBackendPoolDHCPv4::createUpdateServer4(const BackendSelector& backend_selector,
314  const ServerPtr& server) {
315  createUpdateDeleteBackendProperty<void, const ServerPtr&>
316  (&ConfigBackendDHCPv4::createUpdateServer4, backend_selector,
317  server);
318 }
319 
320 uint64_t
321 ConfigBackendPoolDHCPv4::deleteSubnet4(const BackendSelector& backend_selector,
322  const ServerSelector& server_selector,
323  const std::string& subnet_prefix) {
324  return (createUpdateDeleteProperty<uint64_t, const std::string&>
325  (&ConfigBackendDHCPv4::deleteSubnet4, backend_selector, server_selector,
326  subnet_prefix));
327 }
328 
329 uint64_t
330 ConfigBackendPoolDHCPv4::deleteSubnet4(const BackendSelector& backend_selector,
331  const ServerSelector& server_selector,
332  const SubnetID& subnet_id) {
333  return (createUpdateDeleteProperty<uint64_t, const SubnetID&>
334  (&ConfigBackendDHCPv4::deleteSubnet4, backend_selector, server_selector,
335  subnet_id));
336 }
337 
338 uint64_t
339 ConfigBackendPoolDHCPv4::deleteAllSubnets4(const BackendSelector& backend_selector,
340  const ServerSelector& server_selector) {
341  return (createUpdateDeleteProperty<uint64_t>
342  (&ConfigBackendDHCPv4::deleteAllSubnets4, backend_selector, server_selector));
343 }
344 
345 uint64_t
346 ConfigBackendPoolDHCPv4::deleteSharedNetworkSubnets4(const db::BackendSelector& backend_selector,
347  const db::ServerSelector& server_selector,
348  const std::string& shared_network_name) {
349  return (createUpdateDeleteProperty<uint64_t, const std::string&>
350  (&ConfigBackendDHCPv4::deleteSharedNetworkSubnets4, backend_selector, server_selector,
351  shared_network_name));
352 }
353 
354 uint64_t
355 ConfigBackendPoolDHCPv4::deleteSharedNetwork4(const BackendSelector& backend_selector,
356  const ServerSelector& server_selector,
357  const std::string& name) {
358  return (createUpdateDeleteProperty<uint64_t, const std::string&>
359  (&ConfigBackendDHCPv4::deleteSharedNetwork4, backend_selector,
360  server_selector, name));
361 }
362 
363 uint64_t
364 ConfigBackendPoolDHCPv4::deleteAllSharedNetworks4(const BackendSelector& backend_selector,
365  const ServerSelector& server_selector) {
366  return (createUpdateDeleteProperty<uint64_t>
367  (&ConfigBackendDHCPv4::deleteAllSharedNetworks4, backend_selector, server_selector));
368 }
369 
370 uint64_t
371 ConfigBackendPoolDHCPv4::deleteOptionDef4(const BackendSelector& backend_selector,
372  const ServerSelector& server_selector,
373  const uint16_t code,
374  const std::string& space) {
375  return (createUpdateDeleteProperty<uint64_t, uint16_t, const std::string&>
376  (&ConfigBackendDHCPv4::deleteOptionDef4, backend_selector,
377  server_selector, code, space));
378 }
379 
380 uint64_t
381 ConfigBackendPoolDHCPv4::deleteAllOptionDefs4(const BackendSelector& backend_selector,
382  const ServerSelector& server_selector) {
383  return (createUpdateDeleteProperty<uint64_t>
384  (&ConfigBackendDHCPv4::deleteAllOptionDefs4, backend_selector, server_selector));
385 }
386 
387 uint64_t
388 ConfigBackendPoolDHCPv4::deleteOption4(const BackendSelector& backend_selector,
389  const ServerSelector& server_selector,
390  const uint16_t code,
391  const std::string& space) {
392  return (createUpdateDeleteProperty<uint64_t, uint16_t, const std::string&>
393  (&ConfigBackendDHCPv4::deleteOption4, backend_selector, server_selector,
394  code, space));
395 }
396 
397 uint64_t
398 ConfigBackendPoolDHCPv4::deleteOption4(const BackendSelector& backend_selector,
399  const ServerSelector& server_selector,
400  const std::string& shared_network_name,
401  const uint16_t code,
402  const std::string& space) {
403  return (createUpdateDeleteProperty<uint64_t, const std::string&, uint16_t,
404  const std::string&>
405  (&ConfigBackendDHCPv4::deleteOption4, backend_selector, server_selector,
406  shared_network_name, code, space));
407 }
408 
409 uint64_t
410 ConfigBackendPoolDHCPv4::deleteOption4(const BackendSelector& backend_selector,
411  const ServerSelector& server_selector,
412  const SubnetID& subnet_id,
413  const uint16_t code,
414  const std::string& space) {
415  return (createUpdateDeleteProperty<uint64_t, const SubnetID&, uint16_t, const std::string&>
416  (&ConfigBackendDHCPv4::deleteOption4, backend_selector, server_selector,
417  subnet_id, code, space));
418 }
419 
420 uint64_t
421 ConfigBackendPoolDHCPv4::deleteOption4(const BackendSelector& backend_selector,
422  const ServerSelector& server_selector,
423  const asiolink::IOAddress& pool_start_address,
424  const asiolink::IOAddress& pool_end_address,
425  const uint16_t code,
426  const std::string& space) {
427  return (createUpdateDeleteProperty<uint64_t, const IOAddress&, const IOAddress&,
428  uint16_t, const std::string&>
429  (&ConfigBackendDHCPv4::deleteOption4, backend_selector, server_selector,
430  pool_start_address, pool_end_address, code, space));
431 }
432 
433 uint64_t
434 ConfigBackendPoolDHCPv4::deleteGlobalParameter4(const BackendSelector& backend_selector,
435  const ServerSelector& server_selector,
436  const std::string& name) {
437  return (createUpdateDeleteProperty<uint64_t, const std::string&>
438  (&ConfigBackendDHCPv4::deleteGlobalParameter4, backend_selector,
439  server_selector, name));
440 }
441 
442 uint64_t
443 ConfigBackendPoolDHCPv4::deleteAllGlobalParameters4(const BackendSelector& backend_selector,
444  const ServerSelector& server_selector) {
445  return (createUpdateDeleteProperty<uint64_t>
446  (&ConfigBackendDHCPv4::deleteAllGlobalParameters4, backend_selector,
447  server_selector));
448 }
449 
450 uint64_t
451 ConfigBackendPoolDHCPv4::deleteServer4(const BackendSelector& backend_selector,
452  const ServerTag& server_tag) {
453  return (createUpdateDeleteBackendProperty<uint64_t>
454  (&ConfigBackendDHCPv4::deleteServer4, backend_selector,
455  server_tag));
456 }
457 
458 uint64_t
459 ConfigBackendPoolDHCPv4::deleteAllServers4(const BackendSelector& backend_selector) {
460  return (createUpdateDeleteBackendProperty<uint64_t>
461  (&ConfigBackendDHCPv4::deleteAllServers4, backend_selector));
462 }
463 
464 } // end of namespace isc::dhcp
465 } // end of namespace isc
boost::shared_ptr< OptionDescriptor > OptionDescriptorPtr
A pointer to option descriptor.
Definition: cfg_option.h:31
boost::shared_ptr< StampedValue > StampedValuePtr
Pointer to the stamped value.
Definition: stamped_value.h:23
boost::shared_ptr< Server > ServerPtr
Shared pointer to the Server class.
Definition: server.h:19
boost::multi_index_container< ServerPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< ServerTagIndexTag >, boost::multi_index::const_mem_fun< Server, std::string,&Server::getServerTagAsText > > >> ServerCollection
Multi index container for Server.
boost::shared_ptr< Subnet4 > Subnet4Ptr
A pointer to a Subnet4 object.
Definition: subnet.h:522
boost::multi_index_container< OptionDefinitionPtr, boost::multi_index::indexed_by< boost::multi_index::sequenced<>, boost::multi_index::hashed_non_unique< boost::multi_index::const_mem_fun< OptionDefinition, uint16_t,&OptionDefinition::getCode > >, boost::multi_index::hashed_non_unique< boost::multi_index::const_mem_fun< OptionDefinition, std::string,&OptionDefinition::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime,&data::StampedElement::getModificationTime > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< OptionIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t,&data::BaseStampedElement::getId > > >> OptionDefContainer
Multi index container for DHCP option definitions.
boost::multi_index_container< Subnet4Ptr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< SubnetSubnetIdIndexTag >, boost::multi_index::const_mem_fun< Subnet, SubnetID,&Subnet::getID > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SubnetPrefixIndexTag >, boost::multi_index::const_mem_fun< Subnet, std::string,&Subnet::toText > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetServerIdIndexTag >, boost::multi_index::const_mem_fun< Network4, asiolink::IOAddress,&Network4::getServerId > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetModificationTimeIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime,&data::BaseStampedElement::getModificationTime > > >> Subnet4Collection
A collection of Subnet4 objects.
Definition: subnet.h:867
Represents a server tag.
Definition: server_tag.h:25
Server selector for associating objects in a database with specific servers.
boost::shared_ptr< SharedNetwork4 > SharedNetwork4Ptr
Pointer to SharedNetwork4 object.
Defines the logger used by the top-level component of kea-dhcp-ddns.
boost::multi_index_container< StampedValuePtr, boost::multi_index::indexed_by< boost::multi_index::hashed_non_unique< boost::multi_index::tag< StampedValueNameIndexTag >, boost::multi_index::const_mem_fun< StampedValue, std::string,&StampedValue::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< StampedValueModificationTimeIndexTag >, boost::multi_index::const_mem_fun< BaseStampedElement, boost::posix_time::ptime,&BaseStampedElement::getModificationTime > > >> StampedValueCollection
Multi index container for StampedValue.
boost::multi_index_container< SharedNetwork4Ptr, boost::multi_index::indexed_by< boost::multi_index::random_access< boost::multi_index::tag< SharedNetworkRandomAccessIndexTag > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< SharedNetworkIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t,&data::BaseStampedElement::getId > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SharedNetworkNameIndexTag >, boost::multi_index::const_mem_fun< SharedNetwork4, std::string,&SharedNetwork4::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SharedNetworkServerIdIndexTag >, boost::multi_index::const_mem_fun< Network4, asiolink::IOAddress,&Network4::getServerId > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SharedNetworkModificationTimeIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime,&data::BaseStampedElement::getModificationTime > > >> SharedNetwork4Collection
Multi index container holding shared networks.
Config Backend selector.
boost::multi_index_container< OptionDescriptor, boost::multi_index::indexed_by< boost::multi_index::sequenced<>, boost::multi_index::hashed_non_unique< KeyFromKeyExtractor< boost::multi_index::const_mem_fun< Option, uint16_t,&Option::getType >, boost::multi_index::member< OptionDescriptor, OptionPtr,&OptionDescriptor::option_ > > >, boost::multi_index::hashed_non_unique< boost::multi_index::member< OptionDescriptor, bool,&OptionDescriptor::persistent_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime,&data::BaseStampedElement::getModificationTime > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< OptionIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t,&data::BaseStampedElement::getId > > >> OptionContainer
Multi index container for DHCP option descriptors.
Definition: cfg_option.h:269
boost::shared_ptr< OptionDefinition > OptionDefinitionPtr
Pointer to option definition object.
boost::multi_index_container< AuditEntryPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_non_unique< boost::multi_index::tag< AuditEntryObjectTypeTag >, boost::multi_index::composite_key< AuditEntry, boost::multi_index::const_mem_fun< AuditEntry, std::string,&AuditEntry::getObjectType >, boost::multi_index::const_mem_fun< AuditEntry, AuditEntry::ModificationType,&AuditEntry::getModificationType > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< AuditEntryModificationTimeIdTag >, boost::multi_index::composite_key< AuditEntry, boost::multi_index::const_mem_fun< AuditEntry, boost::posix_time::ptime,&AuditEntry::getModificationTime >, boost::multi_index::const_mem_fun< AuditEntry, uint64_t,&AuditEntry::getRevisionId > > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< AuditEntryObjectIdTag >, boost::multi_index::const_mem_fun< AuditEntry, uint64_t,&AuditEntry::getObjectId > > >> AuditEntryCollection
Multi index container holding AuditEntry instances.
Definition: audit_entry.h:291
uint32_t SubnetID
Unique identifier for a subnet (both v4 and v6)
Definition: lease.h:24