subscription = $subscription; $this->client = $client; } /** * Get address book name. * * @return string */ public function addressBookName(): string { return $this->subscription->addressbook->name; } /** * Get carddav backend. * * @return CardDAVBackend */ public function backend(): CardDAVBackend { return app(CardDAVBackend::class)->init($this->subscription->user); } /** * Execute a method against a new dav client instance. * * @param string $method * @param array $parameters * @return mixed */ public function __call($method, $parameters) { if (static::hasMacro($method)) { return $this->macroCall($method, $parameters); } return $this->subscription->getClient() ->{$method}(...$parameters); } }