2013-06-12 2 views

答えて

0

バンドルは、バンドルを直接編集することなくカスタムリソース所有者をサポートしていないようです(これは一見しただけですが、実際にこのバンドルを使用したことはありません)。

oauth.xmlファイル(https://github.com/hwi/HWIOAuthBundle/blob/master/Resources/config/oauth.xml)は、それぞれの既存のリソース所有者にリンクしていますので、ここにリンクされているものを参考にしてください。

0

bundle documentationによれば、これを行うことができます。

GenericOauth2ResourceOwnerクラスは、ベンダーバンドルディレクトリHWI \ Bundle \ OAuthBundle \ OAuth \ ResourceOwnerにあります。

4

私は接続の例外を処理する必要があったため、HWIOAuthBundle linkedinリソースの所有者をオーバーロードしました。あなたのバンドルに続いて

namespace UserAccountBundle\DependencyInjection\Compiler; 

use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; 
use Symfony\Component\DependencyInjection\ContainerBuilder; 

class OverrideServiceCompilerPass implements CompilerPassInterface 
{ 
    public function process(ContainerBuilder $container) 
    { 
     $definition = $container->getDefinition('hwi_oauth.resource_owner.linkedin'); 
     $definition->setClass('UserAccountBundle\OAuth\MyLinkedInResourceOwner'); 
    } 
} 

: これを行うには、コンパイラのパスを使用することができます

バンドルオーバーライドの
namespace UserAccountBundle; 

use Symfony\Component\HttpKernel\Bundle\Bundle; 
use UserAccountBundle\DependencyInjection\Compiler\OverrideServiceCompilerPass; 
use Symfony\Component\DependencyInjection\ContainerBuilder; 

class UserAccountBundle extends Bundle 
{ 

    public function build(ContainerBuilder $container) 
    { 
     parent::build($container); 

     $container->addCompilerPass(new OverrideServiceCompilerPass()); 
    } 
} 

より: http://symfony.com/doc/current/cookbook/bundles/override.html

+0

私はそれは素晴らしいこのように動作することを確認します! – Bruno

関連する問題