IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Surcharger m�thode async qui n'a pas besoin de "await"


Sujet :

Python

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    134
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 134
    Par d�faut Surcharger m�thode async qui n'a pas besoin de "await"
    Bonjour, j'ai le probl�me suivant.

    Je suis en train de faire un site web qui se base sur aioHttp, et j'utilise notamment le module aioHttp_security qui permet de g�rer l'authentification et les authorisation des users. Pour cr�er la politique d'authorisation de mes user, je dois h�riter de la classe AbstractAuthorizationPolicy et surcharger les 2 m�thodes suivante :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
        async def authorized_userid(self, identity):
            pass
     
     
        async def permits(self, identity, permission, context=None):
            pass
    En regardant le code source de aioHttp_security on voit bien qu'il appelle ces coroutines avec des "yeld from"... mon probl�me � moi c'est que je n'ai pas besoin de faire d'appel � une base de donn�e ou autre, et donc je n'ai pas de "await" ou "yeld from" � faire quand je surcharge la methode permits... et donc il n'aime pas... :/

    Comment faire pour surcharger une methode asynch sans appeler � l'int�rieur de await ?

  2. #2
    Expert �minent
    Homme Profil pro
    Architecte technique retrait�
    Inscrit en
    Juin 2008
    Messages
    21 775
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : Architecte technique retrait�
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 775
    Par d�faut
    Citation Envoy� par Ikit Voir le message
    Comment faire pour surcharger une methode asynch sans appeler � l'int�rieur de await ?
    Je ne vois pas le probl�me:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    import abc
    import asyncio
     
    class A(metaclass=abc.ABCMeta):
        @asyncio.coroutine
        @abc.abstractmethod
        def test(self, n):
            pass
     
    class B(A):
        async def test(self, n):
            for _ in range(n):
                print("Hello World!")
     
    loop = asyncio.get_event_loop()
    loop.run_until_complete(B().test(3))
    loop.close()
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. M�thode getSignalStrength() qui ne fonctionne pas
    Par mira- dans le forum Android
    R�ponses: 1
    Dernier message: 31/05/2012, 15h18
  2. [paramiko] m�thode close qui ne fonctionne pas
    Par Balbuzard dans le forum R�seau/Web
    R�ponses: 4
    Dernier message: 13/03/2011, 19h59
  3. M�thode ondblclick qui ne marche pas oO
    Par kelaan dans le forum G�n�ral JavaScript
    R�ponses: 18
    Dernier message: 18/02/2011, 12h30
  4. Un programme qui n'a pas besoin d'un OS ? (Boot Loader)
    Par kedare dans le forum Langages de programmation
    R�ponses: 2
    Dernier message: 04/09/2008, 13h52
  5. M�thode getSize() qui ne marche pas
    Par mush_H dans le forum Agents de placement/Fen�tres
    R�ponses: 15
    Dernier message: 20/03/2005, 01h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo