/**
  * Get all feed entries as a parser instance
  *
  * @param \Newscoop\IngestPluginBundle\Entity\Feed $feedEntity Feed entity
  *
  * @return array Array should contain feed entries
  */
 public static function getStories(Feed $feedEntity)
 {
     $entries = array();
     $data = array();
     $clientConfig = array('base_uri' => $feedEntity->getUrl(), 'options' => '');
     $client = new GuzzleClient($clientConfig);
     $sdk = new ContentApiSdk($client);
     $parameters = array('start_date' => date('Y-m-d', strtotime('-3 days')));
     try {
         $data = $sdk->getPackages($parameters, true);
     } catch (ContentApiException $e) {
         throw new NewscoopException($e->getMessage(), $e->getCode(), $e);
     }
     // Convert all $data into entries
     foreach ($data as $package) {
         $entryPackage = new SuperdeskContentApiParser($package);
         $images = $entryPackage->getImages();
         if (property_exists($package->associations, 'main') && empty($images)) {
             continue;
         }
         $entries[] = $entryPackage;
     }
     return $entries;
 }
コード例 #2
0
        if ($items->hasNextPage()) {
            $items->setCurrentPage($i + 1);
        }
        echo "\n";
    }
} else {
    echo "Current page: {$items->getCurrentPage()}\n";
    $data = $items->getCurrentPageResults();
    foreach ($data as $item) {
        echo "Item headline: {$item->headline}\n";
    }
}
echo "\n\n.:  Getting packages  :.\n\n";
// Reset parameters
$parameters->setPage(1)->setMaxResults(1);
$packages = $contentApi->getPackages($parameters, true);
$packages->setMaxPerPage($parameters->getMaxResults());
$packages->setCurrentPage($parameters->getPage());
echo "Total packages: {$packages->getNbResults()}\n";
echo "Packages per page: {$packages->getMaxPerPage()}\n";
echo "Total pages: {$packages->getNbPages()}\n\n";
// Some limit, so we dont accicentally get every package
$maxPages = $packages->getNbPages() < 10 ? $packages->getNbPages() : 10;
if ($packages->haveToPaginate()) {
    for ($i = 1; $i <= $maxPages; $i++) {
        echo "Current page: {$packages->getCurrentPage()}\n";
        $data = $packages->getCurrentPageResults();
        foreach ($data as $package) {
            echo "Package headline: {$package->headline}\n";
        }
        if ($packages->hasNextPage()) {