/*---------------------------------------------------------------------- | PLT_MediaBrowser::OnActionResponse +---------------------------------------------------------------------*/ NPT_Result PLT_MediaBrowser::OnActionResponse(NPT_Result res, PLT_ActionReference& action, void* userdata) { NPT_String actionName = action->GetActionDesc().GetName(); // look for device in our list first PLT_DeviceDataReference device; NPT_String uuid = action->GetActionDesc().GetService()->GetDevice()->GetUUID(); if (NPT_FAILED(FindServer(uuid, device))) res = NPT_FAILURE; // Browse action response if (actionName.Compare("Browse", true) == 0) { return OnBrowseResponse(res, device, action, userdata); } else if (actionName.Compare("Search", true) == 0) { return OnSearchResponse(res, device, action, userdata); } return NPT_SUCCESS; }
/*---------------------------------------------------------------------- | PLT_MediaBrowser::OnActionResponse +---------------------------------------------------------------------*/ NPT_Result PLT_MediaBrowser::OnActionResponse(NPT_Result res, PLT_ActionReference& action, void* userdata) { PLT_DeviceDataReference device; { NPT_AutoLock lock(m_MediaServers); NPT_String uuid = action->GetActionDesc()->GetService()->GetDevice()->GetUUID(); if (NPT_FAILED(NPT_ContainerFind(m_MediaServers, PLT_DeviceDataFinder(uuid), device))) { NPT_LOG_WARNING_1("Device (%s) not found in our list of servers", (const char*)uuid); return NPT_FAILURE; } } NPT_String actionName = action->GetActionDesc()->GetName(); // Browse action response if (actionName.Compare("Browse", true) == 0) { return OnBrowseResponse(res, device, action, userdata); } return NPT_SUCCESS; }