1 #include "src/associations.hpp" 2 #include "src/processing.hpp" 3 4 const std::string defaultSourcePath = "/logging/entry/1"; 5 const std::string defaultDbusSvc = "xyz.openbmc_project.New.Interface"; 6 const std::string defaultFwdPath = {defaultSourcePath + "/" + "inventory"}; 7 const std::string defaultEndpoint = 8 "/xyz/openbmc_project/inventory/system/chassis"; 9 const std::string defaultRevPath = {defaultEndpoint + "/" + "error"}; 10 const std::string extraEndpoint = "/xyz/openbmc_project/differnt/endpoint"; 11 12 // Create a default AssociationOwnersType object 13 AssociationOwnersType createDefaultOwnerAssociation() 14 { 15 AssociationPaths assocPathMap = {{defaultFwdPath, {defaultEndpoint}}, 16 {defaultRevPath, {defaultSourcePath}}}; 17 boost::container::flat_map<std::string, AssociationPaths> serviceMap = { 18 {defaultDbusSvc, assocPathMap}}; 19 AssociationOwnersType ownerAssoc = {{defaultSourcePath, serviceMap}}; 20 return ownerAssoc; 21 } 22 23 // Create a default AssociationInterfaces object 24 AssociationInterfaces 25 createDefaultInterfaceAssociation(sdbusplus::asio::object_server* server) 26 { 27 AssociationInterfaces interfaceAssoc; 28 29 auto& iface = interfaceAssoc[defaultFwdPath]; 30 auto& endpoints = std::get<endpointsPos>(iface); 31 endpoints.push_back(defaultEndpoint); 32 server->add_interface(defaultFwdPath, defaultDbusSvc); 33 34 auto& iface2 = interfaceAssoc[defaultRevPath]; 35 auto& endpoints2 = std::get<endpointsPos>(iface2); 36 endpoints2.push_back(defaultSourcePath); 37 server->add_interface(defaultRevPath, defaultDbusSvc); 38 39 return interfaceAssoc; 40 } 41 42 // Just add an extra endpoint to the first association 43 void addEndpointToInterfaceAssociation(AssociationInterfaces& interfaceAssoc) 44 { 45 auto iface = interfaceAssoc[defaultFwdPath]; 46 auto endpoints = std::get<endpointsPos>(iface); 47 endpoints.push_back(extraEndpoint); 48 } 49 50 // Create a default interfaceMapType with input values 51 InterfaceMapType createInterfaceMap(const std::string& path, 52 const std::string& connectionName, 53 const InterfaceNames& interfaceNames) 54 { 55 ConnectionNames connectionMap{{connectionName, interfaceNames}}; 56 InterfaceMapType interfaceMap{{path, connectionMap}}; 57 58 return interfaceMap; 59 } 60 61 // Create a default interfaceMapType with 2 entries with the same 62 // owner. 63 InterfaceMapType createDefaultInterfaceMap() 64 { 65 InterfaceMapType interfaceMap = { 66 {defaultSourcePath, {{defaultDbusSvc, {"a"}}}}, 67 {defaultEndpoint, {{defaultDbusSvc, {"b"}}}}}; 68 69 return interfaceMap; 70 } 71