Created
November 18, 2015 07:15
-
-
Save cod3beat/84dc71116c99c59338d6 to your computer and use it in GitHub Desktop.
News Feed Service Provider
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
class NewsFeedServiceProvider extends ServiceProvider | |
{ | |
public function register() | |
{ | |
// Ketika seluruh event dari Domain Challenge dibangkitkan, maka kita jalankan ChallengeFeedListener | |
// untuk menangani event tersebut. | |
\Event::listen('Dicoding.Domain.Challenge.*', 'Dicoding\Infrastructure\Feeds\Challenges\ChallengeFeedListener'); | |
} | |
} | |
// Contoh wujud dari ChallengeFeedListener | |
class ChallengeFeedListener extends EventListener | |
{ | |
public function whenUnpublishedChallengeWasPublished($job, $data) | |
{ | |
try { | |
// tambahkan challenge ke feed | |
$challenge = $this->challengeRepository->findById($data); | |
$challengeFeed = new ChallengeFeed($challenge); | |
$this->feedRepository->add($challengeFeed); | |
$job->delete(); | |
} catch (\Exception $e) { | |
\Log::error($e); | |
throw $e; | |
} | |
} | |
public function whenUnpublishedChallengeWasCreated($job, $data) | |
{ | |
} | |
// dsb | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment