mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2025-02-07 21:37:14 +01:00
55 lines
946 B
C++
55 lines
946 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
|