mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-14 18:32:29 +00:00
55 lines
943 B
C++
55 lines
943 B
C++
//
|
|
// QueryRequest.cpp
|
|
//
|
|
// Library: MongoDB
|
|
// Package: MongoDB
|
|
// Module: QueryRequest
|
|
//
|
|
// Copyright (c) 2012, Applied Informatics Software Engineering GmbH.
|
|
// and Contributors.
|
|
//
|
|
// SPDX-License-Identifier: BSL-1.0
|
|
//
|
|
|
|
|
|
#include "Poco/MongoDB/QueryRequest.h"
|
|
|
|
|
|
namespace Poco {
|
|
namespace MongoDB {
|
|
|
|
|
|
QueryRequest::QueryRequest(const std::string& collectionName, QueryRequest::Flags flags):
|
|
RequestMessage(MessageHeader::OP_QUERY),
|
|
_flags(flags),
|
|
_fullCollectionName(collectionName),
|
|
_numberToSkip(0),
|
|
_numberToReturn(100),
|
|
_selector(),
|
|
_returnFieldSelector()
|
|
{
|
|
}
|
|
|
|
|
|
QueryRequest::~QueryRequest()
|
|
{
|
|
}
|
|
|
|
|
|
void QueryRequest::buildRequest(BinaryWriter& writer)
|
|
{
|
|
writer << _flags;
|
|
BSONWriter(writer).writeCString(_fullCollectionName);
|
|
writer << _numberToSkip;
|
|
writer << _numberToReturn;
|
|
_selector.write(writer);
|
|
|
|
if (!_returnFieldSelector.empty())
|
|
{
|
|
_returnFieldSelector.write(writer);
|
|
}
|
|
}
|
|
|
|
|
|
} } // namespace Poco::MongoDB
|