tractorcow / silverstripe-proxy-db
Installs: 405 430
Dependents: 9
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 4
Open Issues: 1
Type:silverstripe-vendormodule
Requires
This package is auto-updated.
Last update: 2024-10-19 02:31:58 UTC
README
Ok, so you want to proxy the database.
Install this module, and decorate the factory with code you want to extend
--- Name: myproxydb After: '#proxydb' --- TractorCow\SilverStripeProxyDB\ProxyDBFactory: extensions: - ProxyDBExtension
Then in your code you can do this
<?php use SilverStripe\Core\Extension; use TractorCow\ClassProxy\Generators\ProxyGenerator; class ProxyDBExtension extends Extension { public function updateProxy(ProxyGenerator &$proxy) { $proxy = $proxy->addMethod('manipulate', function ($args, $next) { SearchManipulator::manipulate($args[0]); return $next(...$args); }); } }
You can chain methods; All addMethod() calls on the same method name will form a set of middleware. First methods registered are executed first.