/**
  * @param Command|GetTrackCommand $command
  *
  * @return mixed
  * @throws TrackNotFoundException
  */
 public function handle(Command $command)
 {
     $track = $this->trackRepository->find($command->trackId());
     if (!$track) {
         throw new TrackNotFoundException($command->trackId());
     }
     return $this->getTrackCommandResultDataTransformer->transform(GetTrackCommandResult::instance($track));
 }
 /**
  * @param GetTrackCommandResult $getTrackCommandResult
  *
  * @return TrackResource
  */
 public function transform(GetTrackCommandResult $getTrackCommandResult)
 {
     return $this->trackToResourceDataTransformer->transform($getTrackCommandResult->track());
 }