In my test extension I try create plugin for Magento\Directory\Helper\Data::isRegionRequired method. My frontend/di.xml contain:
<type name="Magento\Directory\Helper\Data">
<plugin name="Sample_Test::isRegionRequired" type="Sample\Test\Plugin\Country\DirectoryHelperAfter" sortOrder="1" disabled="false"/>
</type>
And class Sample\Test\Plugin\Country\DirectoryHelperAfter contain
public function afterIsRegionRequired($subject, $result)
{
exit('test');
$myResult = true;
return $myResult;
}
On the front I get next error on generating my plugin (before call plugin method):
Source class "\DirectoryHelperData" for "DirectoryHelperDataProxy" generation does not exist.
In /app/code/Magento/Directory/etc/di.xml I found:
<virtualType name="DirectoryHelperDataProxy" type="Magento\Directory\Helper\Data\Proxy">
<arguments>
<argument name="instanceName" xsi:type="string">Magento\Directory\Helper\Data</argument>
</arguments>
</virtualType>
<type name="Magento\Directory\Model\ResourceModel\Country\Collection" shared="false">
<arguments>
<argument name="helperData" xsi:type="object">DirectoryHelperDataProxy</argument>
</arguments>
</type>
My question is "How I can use plugin for class if it used in proxy"?