1 ## This file is a template. The comment below is emitted 2 ## into the rendered file; feel free to edit this file. 3 // This file was auto generated. Do not edit. 4 <% 5 def interface_type(interface): 6 lst = interface.split('.') 7 lst.insert(-1, 'server') 8 return '::'.join(lst) 9 %> 10 #include "manager.hpp" 11 #include "utils.hpp" 12 % for i in interfaces: 13 #include <${'/'.join(i.split('.') + ['server.hpp'])}> 14 % endfor 15 16 namespace phosphor 17 { 18 namespace inventory 19 { 20 namespace manager 21 { 22 23 const Manager::Makers Manager::_makers{ 24 % for i in interfaces: 25 { 26 "${i}", 27 details::MakeInterface< 28 details::ServerObject< 29 sdbusplus::${interface_type(i)}>>::make, 30 }, 31 % endfor 32 }; 33 34 const Manager::Events Manager::_events{ 35 % for e in events: 36 { 37 % if e.get('description'): 38 // ${e['description']} 39 % endif 40 std::make_tuple( 41 std::vector<details::EventBasePtr>({ 42 std::make_shared<details::DbusSignal>( 43 % for i, s in enumerate(e['signature'].items()): 44 % if i + 1 == len(e['signature']): 45 ${'"{0}=\'{1}\'"'.format(*s)}, 46 % else: 47 ${'"{0}=\'{1}\',"'.format(*s)} 48 % endif 49 % endfor 50 % if e['filter'].get('args'): 51 details::make_filter(filters::${e['filter']['type']}( 52 % for i, a in enumerate(e['filter']['args']): 53 % if i + 1 == len(e['filter']['args']): 54 "${a['value']}")))}), 55 % else: 56 "${a['value']}", 57 % endif 58 % endfor 59 % else: 60 details::make_filter(filters::${e['filter']['type']}))}), 61 % endif 62 % if e['action'].get('args'): 63 std::vector<details::ActionBasePtr>({details::make_action(actions::${e['action']['type']}( 64 % for i, a in enumerate(e['action']['args']): 65 % if i + 1 == len(e['action']['args']): 66 "${a['value']}"))}) 67 % else: 68 "${a['value']}", 69 % endif 70 % endfor 71 % else: 72 std::vector<details::ActionBasePtr>( 73 {details::make_action(actions::${e['action']['type']})}) 74 % endif 75 ), 76 }, 77 % endfor 78 }; 79 80 } // namespace manager 81 } // namespace inventory 82 } // namespace phosphor 83