code: def queryEx(self, viewcls, *args, **kwargs):
          
  
          kwargs['itercls'] = viewcls
          o = super(AsyncBucket, self).query(*args, **kwargs)
          if not self.connected:
              self.connect().addCallback(lambda x: o.start())
          else:
              o.start()
  
          return o
docs: Query a view, with the ``viewcls`` instance receiving events
          of the query as they arrive.
  
          :param type viewcls: A class (derived from :class:`AsyncViewBase`)
            to instantiate
  
          Other arguments are passed to the standard `query` method.
  
          This functions exactly like the :meth:`~couchbase.asynchronous.AsyncBucket.query`
          method, except it automatically schedules operations if the connection
          has not yet been negotiated.