Skip to content

Commit 5a36522

Browse files
Refactor JSONAdapter parse methods to remove adapter parameter
1 parent 5c70617 commit 5a36522

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

src/request_body_processor/json_adapter.cc

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,11 @@ JsonParseResult normalizeResult(JsonParseResult result) {
5353
return result;
5454
}
5555

56-
template <typename StringType>
57-
JsonParseResult parseImpl(StringType &input,
56+
} // namespace
57+
58+
JsonParseResult JSONAdapter::parseImpl(const std::string &input,
5859
JsonEventSink *sink,
59-
const JsonBackendParseOptions &options [[maybe_unused]],
60-
const JSONAdapter *adapter) {
60+
const JsonBackendParseOptions &options [[maybe_unused]]) const {
6161
if (sink == nullptr) {
6262
return makeResult(JsonParseStatus::InternalError,
6363
JsonSinkStatus::InternalError, "JSON event sink is null.");
@@ -68,28 +68,26 @@ JsonParseResult parseImpl(StringType &input,
6868
}
6969

7070
#if defined(MSC_JSON_BACKEND_SIMDJSON)
71-
return normalizeResult(adapter->parseDocumentWithSimdjson(input, sink, options));
71+
return normalizeResult(parseDocumentWithSimdjson(input, sink, options));
7272
#elif defined(MSC_JSON_BACKEND_JSONCONS)
73-
return normalizeResult(adapter->parseDocumentWithJsoncons(input, sink, options));
73+
return normalizeResult(parseDocumentWithJsoncons(input, sink, options));
7474
#else
7575
return makeResult(JsonParseStatus::InternalError,
7676
JsonSinkStatus::InternalError,
7777
"ModSecurity was built without a selected JSON backend.");
7878
#endif
7979
}
8080

81-
} // namespace
82-
8381
JsonParseResult JSONAdapter::parse(std::string &input,
8482
JsonEventSink *sink,
85-
const JsonBackendParseOptions &options [[maybe_unused]]) const {
86-
return parseImpl(input, sink, options, this);
83+
const JsonBackendParseOptions &options) const {
84+
return parseImpl(input, sink, options);
8785
}
8886

8987
JsonParseResult JSONAdapter::parse(const std::string &input,
9088
JsonEventSink *sink,
91-
const JsonBackendParseOptions &options [[maybe_unused]]) const {
92-
return parseImpl(input, sink, options, this);
89+
const JsonBackendParseOptions &options) const {
90+
return parseImpl(input, sink, options);
9391
}
9492

9593
} // namespace modsecurity::RequestBodyProcessor

0 commit comments

Comments
 (0)