/**
  * {@inheritdoc}
  */
 public function load(ObjectManager $manager)
 {
     $statuses = $manager->getRepository('OroB2BRFPBundle:RequestStatus')->findAll();
     $organization = $manager->getRepository('OroOrganizationBundle:Organization')->getFirst();
     $locator = $this->container->get('file_locator');
     $filePath = $locator->locate('@OroB2BRFPBundle/Migrations/Data/Demo/ORM/data/requests.csv');
     if (is_array($filePath)) {
         $filePath = current($filePath);
     }
     $handler = fopen($filePath, 'r');
     $headers = fgetcsv($handler, 5000, ',');
     while (($data = fgetcsv($handler, 5000, ',')) !== false) {
         $row = array_combine($headers, array_values($data));
         $request = new Request();
         $request->setFirstName($row['first_name']);
         $request->setLastName($row['last_name']);
         $request->setEmail($row['email']);
         $request->setPhone($row['phone']);
         $request->setCompany($row['company']);
         $request->setRole($row['role']);
         $request->setBody($row['body']);
         $status = $statuses[rand(0, count($statuses) - 1)];
         $request->setStatus($status);
         $request->setOrganization($organization);
         $this->processRequestProducts($request, $manager);
         $manager->persist($request);
     }
     fclose($handler);
     $manager->flush();
 }