@@ -22,36 +22,31 @@ limitations under the License.
2222#include < libsinsp/sinsp_filter_transformers/sinsp_filter_transformer_tolower.h>
2323#include < libsinsp/sinsp_filter_transformers/sinsp_filter_transformer_toupper.h>
2424
25- class sinsp_filter_transformer_factory {
26- public:
27- sinsp_filter_transformer_factory () = delete ;
28- ~sinsp_filter_transformer_factory () = delete ;
29- sinsp_filter_transformer_factory operator =(const sinsp_filter_transformer_factory&) = delete ;
30-
31- static std::unique_ptr<sinsp_filter_transformer> create_transformer (
32- filter_transformer_type trtype) {
33- switch (trtype) {
34- case FTR_TOUPPER: {
35- return std::make_unique<sinsp_filter_transformer_toupper>();
36- }
37- case FTR_TOLOWER: {
38- return std::make_unique<sinsp_filter_transformer_tolower>();
39- }
40- case FTR_BASE64: {
41- return std::make_unique<sinsp_filter_transformer_base64>();
42- }
43- case FTR_STORAGE: {
44- return std::make_unique<sinsp_filter_transformer_storage>();
45- }
46- case FTR_BASENAME: {
47- return std::make_unique<sinsp_filter_transformer_basename>();
48- }
49- case FTR_LEN: {
50- return std::make_unique<sinsp_filter_transformer_len>();
51- }
52- default :
53- throw sinsp_exception (" transformer '" + std::to_string (trtype) + " ' is not supported" );
54- return nullptr ;
55- }
25+ namespace sinsp_filter_transformer_factory {
26+ inline std::unique_ptr<sinsp_filter_transformer> create_transformer (
27+ filter_transformer_type trtype) {
28+ switch (trtype) {
29+ case FTR_TOUPPER: {
30+ return std::make_unique<sinsp_filter_transformer_toupper>();
31+ }
32+ case FTR_TOLOWER: {
33+ return std::make_unique<sinsp_filter_transformer_tolower>();
34+ }
35+ case FTR_BASE64: {
36+ return std::make_unique<sinsp_filter_transformer_base64>();
37+ }
38+ case FTR_STORAGE: {
39+ return std::make_unique<sinsp_filter_transformer_storage>();
40+ }
41+ case FTR_BASENAME: {
42+ return std::make_unique<sinsp_filter_transformer_basename>();
43+ }
44+ case FTR_LEN: {
45+ return std::make_unique<sinsp_filter_transformer_len>();
46+ }
47+ default :
48+ throw sinsp_exception (" transformer '" + std::to_string (trtype) + " ' is not supported" );
49+ return nullptr ;
5650 }
57- };
51+ }
52+ }; // namespace sinsp_filter_transformer_factory
0 commit comments