def read(self, input_buffer, kmip_version=enums.KMIPVersion.KMIP_1_0):
super(QueryRequestPayload, self).read(<EOL>input_buffer,<EOL>kmip_version=kmip_version<EOL>)<EOL>local_buffer = utils.BytearrayStream(input_buffer.read(self.length))<EOL>query_functions = []<EOL>while(self.is_tag_next(enums.Tags.QUERY_FUNCTION, local_buffer)):<EOL><INDENT>query_function = primitives.Enumeration(<EOL>enums.QueryFunction,<EOL>tag=enums.Tags.QUERY_FUNCTION<EOL>)<EOL>query_function.read(local_buffer, kmip_version=kmip_version)<EOL>query_functions.append(query_function)<EOL><DEDENT>if query_functions:<EOL><INDENT>self._query_functions = query_functions<EOL><DEDENT>else:<EOL><INDENT>raise exceptions.InvalidKmipEncoding(<EOL>"<STR_LIT>"<EOL>"<STR_LIT>"<EOL>)<EOL><DEDENT>self.is_oversized(local_buffer)<EOL>
Read the data encoding the QueryRequestPayload object and decode it
into its constituent parts.

Args:
    input_buffer (Stream): A data stream containing encoded object
        data, supporting a read method; usually a BytearrayStream
        object.
    kmip_version (KMIPVersion): An enumeration defining the KMIP
        version with which the object will be decoded. Optional,
        defaults to KMIP 1.0.

Raises:
    InvalidKmipEncoding: Raised if the query functions are missing
        from the encoded payload.