def _search_complete_callback(sp_search, handle): logger.debug('search_complete_callback called') if handle == ffi.NULL: logger.warning('search_complete_callback called without userdata') return (session, search_result, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) search_result.loaded_event.set() if callback is not None: callback(search_result)
def _inboxpost_complete_callback(sp_inbox, handle): logger.debug('inboxpost_complete_callback called') if handle == ffi.NULL: logger.warning('inboxpost_complete_callback called without userdata') return (callback, inbox_post_result) = ffi.from_handle(handle) inbox_post_result._callback_handles.remove(handle) inbox_post_result.complete_event.set() if callback is not None: callback(inbox_post_result)
def _albumbrowse_complete_callback(sp_albumbrowse, handle): logger.debug('albumbrowse_complete_callback called') if handle == ffi.NULL: logger.warning( 'pyspotify albumbrowse_complete_callback called without userdata') return (session, album_browser, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) album_browser.loaded_event.set() if callback is not None: callback(album_browser)
def _toplistbrowse_complete_callback(sp_toplistbrowse, handle): logger.debug('toplistbrowse_complete_callback called') if handle == ffi.NULL: logger.warning('pyspotify toplistbrowse_complete_callback ' 'called without userdata') return (session, toplist, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) toplist.loaded_event.set() if callback is not None: callback(toplist)
def _artistbrowse_complete_callback(sp_artistbrowse, handle): logger.debug('artistbrowse_complete_callback called') if handle == ffi.NULL: logger.warning( 'pyspotify artistbrowse_complete_callback called without userdata') return (session, artist_browser, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) artist_browser.loaded_event.set() if callback is not None: callback(artist_browser)
def _albumbrowse_complete_callback(sp_albumbrowse, handle): logger.debug('albumbrowse_complete_callback called') if handle == ffi.NULL: logger.warning( 'albumbrowse_complete_callback called without userdata') return (callback, album_browser) = ffi.from_handle(handle) album_browser._callback_handles.remove(handle) album_browser.complete_event.set() if callback is not None: callback(album_browser)
def _inboxpost_complete_callback(sp_inbox, handle): logger.debug('inboxpost_complete_callback called') if handle == ffi.NULL: logger.warning( 'pyspotify inboxpost_complete_callback called without userdata') return (session, inbox_post_result, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) inbox_post_result.loaded_event.set() if callback is not None: callback(inbox_post_result)
def _toplistbrowse_complete_callback(sp_toplistbrowse, handle): logger.debug('toplistbrowse_complete_callback called') if handle == ffi.NULL: logger.warning( 'toplistbrowse_complete_callback called without userdata') return (callback, toplist) = ffi.from_handle(handle) toplist._callback_handles.remove(handle) toplist.complete_event.set() if callback is not None: callback(toplist)
def _toplistbrowse_complete_callback(sp_toplistbrowse, handle): logger.debug('toplistbrowse_complete_callback called') if handle == ffi.NULL: logger.warning( 'toplistbrowse_complete_callback called without userdata') return (session, toplist, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) toplist.loaded_event.set() if callback is not None: callback(toplist)
def _image_load_callback(sp_image, handle): logger.debug('image_load_callback called') if handle == ffi.NULL: logger.warning('image_load_callback called without userdata') return (session, image, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) image.loaded_event.set() if callback is not None: callback(image) # Load callbacks are by nature only called once per image, so we clean up # and remove the load callback the first time it is called. lib.sp_image_remove_load_callback(sp_image, _image_load_callback, handle)
def _image_load_callback(sp_image, handle): logger.debug("image_load_callback called") if handle == ffi.NULL: logger.warning("image_load_callback called without userdata") return (session, image, callback) = ffi.from_handle(handle) session._callback_handles.remove(handle) image.loaded_event.set() if callback is not None: callback(image) # Load callbacks are by nature only called once per image, so we clean up # and remove the load callback the first time it is called. lib.sp_image_remove_load_callback(sp_image, _image_load_callback, handle)