app->singleton(BuildAnalyticsReport::class, function () { if (config('common.site.demo')) { return new BuildDemoAnalyticsReport(); } else { return $this->getGoogleAnalyticsData(); } }); } private function getGoogleAnalyticsData() { try { return new BuildGoogleAnalyticsReport(); } catch (\Exception $e) { return new BuildNullAnalyticsReport(); } } }