Retrieve walkthrough

Aram Zucker-Scharff edited this page Nov 23, 2013 · 8 revisions

Function order:

  • Call import-cron.php
  • Call PF_Feed_Item::assemble_feed_for_pull()
  • Call PF_Feed_Item::get_the_feed_object() (feed-items.php:ln321)
  • Call PF_Feed_Retrieve::step_through_feedlist()
  • Retrieve feedlist using pf_feedlist (ln316)
  • Get feeds_iteration option to determine position.
  • Check if option indicates we are go to retrieve feeds_go_switch
  • Check what the last iteration was from option prev_iteration
  • Insure current iteration count is one greater than the last count.
  • Check that we are past the last feed.
  • Get the feed data from the feedlist by taking what is stored in the feeds_iteration as the position of the array. (slurp.php:ln190)
  • Check that the system has properly notified other actors that we have inside the overall iteration with the iterate_going_switch
  • Check if we are on the last key.
  • If we are, we'll need to reset the retrieval process and set the iterate_going_switch to zero, so no further iteration occurs. We'll also be setting the feed position back to zero.
  • If we are not then iterate the feeds_iteration variable in order to send the next iteration to the correct location.
  • If neither case is true than ... huh? We're going to log it. (slurp.php:ln235)
  • Update the feeds_iteration option with the new value so the next iteration works.
  • If the feed is empty or an error and it isn't the last key, re-call this function to get the next feed.
  • If the feed is empty and this is the last feed, set all states ready to reset and return false.
  • Take the feed object and transform it into an object containing items we can understand by calling feed_handler() (slurp.php:ln265)
  • Set up the feed CPT
  • Check if the feed type is on the Feed CPT by calling PF_Feeds_Schema::get_pf_feed_type($id). (slurp.php:ln394)
  • Get post meta by id to check for feed type. (feeds.php:ln416)
  • IF an error is returned or a false is returned pass-through the fail data.
  • ELSE return the type.
  • Check if the feed's type exists with PF_Feed_Retrieve::does_type_exist($type)
  • Use get_the_feed_object() to get the object using the correct module function.
  • Unlock the process so that the system knows it can go ahead and retrieve another feed.
  • Return the translated set of items.
  • Attempt to retrieve the feed (ln266)
  • If it fails, log it.
  • Check for failure states and log
  • Check for bad process states and log.
  • If all is well, return the Feed as an object.
  • Begin the loop to move through each feed item and send it to the database. (feed-items.php:ln321)
  • Create each post and add the meta data to post_meta
  • Advance Feeds using advance_feeds()
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.