acsiomatic / device-detector-bundle

Symfony Bundle for https://github.com/matomo-org/device-detector
https://packagist.org/packages/acsiomatic/device-detector-bundle
MIT License
10 stars 1 forks source link

Call DeviceDetector::parser() whenever it's required #7

Closed renedelima closed 2 years ago

renedelima commented 3 years ago

Make DeviceDetector::parser() be called automatically whenever someone asks for DeviceDetector parsed data.

Current semantic

class SomeService
{
    public function doSomething(DeviceDetector $device)
    {
        $device->parse();
        $device->isSmartphone();
    }
}

Proposed semantic

class SomeService
{
    public function doSomething(DeviceDetector $device)
    {
        $device->isSmartphone(); // implicit call $device->parse()
    }
}
renanbr commented 2 years ago

We could try proxy approach: