Line data Source code
1 : /* 2 : * Copyright (c) 2016 Juniper Networks, Inc. All rights reserved. 3 : * Copyright Contributors to the OpenSDN project 4 : */ 5 : 6 : #include <boost/uuid/uuid_io.hpp> 7 : #include <cmn/agent_cmn.h> 8 : #include <cmn/agent.h> 9 : #include <resource_manager/resource_cmn.h> 10 : #include <resource_manager/resource_table.h> 11 : #include <resource_manager/resource_manager.h> 12 : 13 : //Include various data types and derivatives 14 : #include <resource_manager/index_resource.h> 15 : #include <resource_manager/mpls_index.h> 16 : 17 12 : ResourceTable *Resource::Create(Type type, ResourceManager *rm) { 18 12 : switch (type) { 19 12 : case MPLS_INDEX: 20 : case INTERFACE_INDEX: 21 : case VRF_INDEX: 22 : case QOS_INDEX: 23 : case BGP_AS_SERVICE_INDEX: 24 : case MIRROR_INDEX: 25 12 : return new IndexResourceTable(rm); 26 0 : default: { 27 0 : assert(0); 28 : } 29 : }; 30 : return NULL; 31 : }