(self, set_slave_ok, is_mongos, use_cmd=False)
return query(flags, ns, self.ntoskip, ntoreturn,
                     spec, self.fields, self.codec_options)
Get a query message, possibly setting the slaveOk bit.
Get a query message, possibly setting the slaveOk bit.
Get a query message possibly setting the slaveOk bit .
def get_message(self, set_slave_ok, is_mongos, use_cmd=False):
        """Get a query message, possibly setting the slaveOk bit."""
        if set_slave_ok:
            # Set the slaveOk bit.
            flags = self.flags | 4
        else:
            flags = self.flags

        ns = _UJOIN % (self.db, self.coll)
        spec = self.spec

        if use_cmd:
            ns = _UJOIN % (self.db, "$cmd")
            spec = self.as_command()[0]
            ntoreturn = -1  # All DB commands return 1 document
        else:
            # OP_QUERY treats ntoreturn of -1 and 1 the same, return
            # one document and close the cursor. We have to use 2 for
            # batch size if 1 is specified.
            ntoreturn = self.batch_size == 1 and 2 or self.batch_size
            if self.limit:
                if ntoreturn:
                    ntoreturn = min(self.limit, ntoreturn)
                else:
                    ntoreturn = self.limit

        if is_mongos:
            spec = _maybe_add_read_preference(spec,
                                              self.read_preference)

        return query(flags, ns, self.ntoskip, ntoreturn,
                     spec, self.fields, self.codec_options)
def get_message ( self , set_slave_ok , is_mongos , use_cmd = False ) : if set_slave_ok : # Set the slaveOk bit. flags = self . flags | 4 else : flags = self . flags ns = _UJOIN % ( self . db , self . coll ) spec = self . spec if use_cmd : ns = _UJOIN % ( self . db , "$cmd" ) spec = self . as_command ( ) [ 0 ] ntoreturn = - 1 # All DB commands return 1 document else : # OP_QUERY treats ntoreturn of -1 and 1 the same, return # one document and close the cursor. We have to use 2 for # batch size if 1 is specified. ntoreturn = self . batch_size == 1 and 2 or self . batch_size if self . limit : if ntoreturn : ntoreturn = min ( self . limit , ntoreturn ) else : ntoreturn = self . limit if is_mongos : spec = _maybe_add_read_preference ( spec , self . read_preference ) return query ( flags , ns , self . ntoskip , ntoreturn , spec , self . fields , self . codec_options )