11
11
#include < ydb/core/ymq/base/helpers.h>
12
12
#include < ydb/core/ymq/base/limits.h>
13
13
#include < ydb/core/ymq/base/secure_protobuf_printer.h>
14
+ #include < ydb/core/ymq/base/utils.h>
14
15
15
16
#include < ydb/library/actors/core/actorsystem.h>
16
17
#include < ydb/library/actors/core/log.h>
28
29
#include < util/string/split.h>
29
30
#include < library/cpp/string_utils/url/url.h>
30
31
32
+
31
33
namespace NKikimr ::NSQS {
32
34
33
35
using NKikimrClient::TSqsRequest;
@@ -48,8 +50,6 @@ const std::vector<TStringBuf> PRIVATE_TOKENS_HEADERS = {
48
50
49
51
const TString CREDENTIAL_PARAM = " credential" ;
50
52
51
- constexpr TStringBuf PRIVATE_REQUEST_PATH_PREFIX = " /private" ;
52
-
53
53
const TSet<TString> ModifyPermissionsActions = {" GrantPermissions" , " RevokePermissions" , " SetPermissions" };
54
54
55
55
bool IsPrivateTokenHeader (TStringBuf headerName) {
@@ -264,27 +264,6 @@ bool THttpRequest::DoReply(const TReplyParams& p) {
264
264
}
265
265
}
266
266
267
- TString THttpRequest::GetRequestPathPart (TStringBuf path, size_t partIdx) const {
268
- if (IsPrivateRequest_) {
269
- path.SkipPrefix (PRIVATE_REQUEST_PATH_PREFIX);
270
- }
271
-
272
- TVector<TStringBuf> items;
273
- StringSplitter (path).Split (' /' ).AddTo (&items);
274
- if (items.size () > partIdx) {
275
- return TString (items[partIdx]);
276
- }
277
- return TString ();
278
- }
279
-
280
- TString THttpRequest::ExtractQueueNameFromPath (const TStringBuf path) {
281
- return GetRequestPathPart (path, 2 );
282
- }
283
-
284
- TString THttpRequest::ExtractAccountNameFromPath (const TStringBuf path) {
285
- return GetRequestPathPart (path, 1 );
286
- }
287
-
288
267
void THttpRequest::ExtractQueueAndAccountNames (const TStringBuf path) {
289
268
if (Action_ == EAction::ModifyPermissions)
290
269
return ;
@@ -296,9 +275,11 @@ void THttpRequest::ExtractQueueAndAccountNames(const TStringBuf path) {
296
275
297
276
QueueName_ = *QueryParams_.QueueName ;
298
277
} else {
299
- const auto pathAndQuery = QueryParams_.QueueUrl ? GetPathAndQuery (*QueryParams_.QueueUrl ) : GetPathAndQuery (path);
300
- QueueName_ = ExtractQueueNameFromPath (pathAndQuery);
301
- AccountName_ = ExtractAccountNameFromPath (pathAndQuery);
278
+ const auto pathAndQuery = QueryParams_.QueueUrl
279
+ ? GetPathAndQuery (*QueryParams_.QueueUrl )
280
+ : GetPathAndQuery (path);
281
+ QueueName_ = NKikimr::NSQS::ExtractQueueNameFromPath (pathAndQuery, IsPrivateRequest_);
282
+ AccountName_ = NKikimr::NSQS::ExtractAccountNameFromPath (pathAndQuery, IsPrivateRequest_);
302
283
303
284
if (IsProxyAction (Action_)) {
304
285
if (QueryParams_.QueueUrl && *QueryParams_.QueueUrl ) {
@@ -381,9 +362,7 @@ void THttpRequest::ParseCgiParameters(const TCgiParameters& params) {
381
362
}
382
363
383
364
void THttpRequest::ParsePrivateRequestPathPrefix (const TStringBuf& path) {
384
- if (path.StartsWith (PRIVATE_REQUEST_PATH_PREFIX)) {
385
- IsPrivateRequest_ = true ;
386
- }
365
+ IsPrivateRequest_ = NKikimr::NSQS::IsPrivateRequest (path);
387
366
}
388
367
389
368
ui64 THttpRequest::CalculateRequestSizeInBytes (const THttpInput& input, const ui64 contentLength) const {
0 commit comments