fintp_base
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Base64Filter.h
Go to the documentation of this file.
1 /*
2 * FinTP - Financial Transactions Processing Application
3 * Copyright (C) 2013 Business Information Systems (Allevo) S.R.L.
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>
17 * or contact Allevo at : 031281 Bucuresti, 23C Calea Vitan, Romania,
18 * phone +40212554577, office@allevo.ro <mailto:office@allevo.ro>, www.allevo.ro.
19 */
20 
25 #ifndef BASE64FILTER_H
26 #define BASE64FILTER_H
27 
28 #include "AbstractFilter.h"
29 #include "AppSettings.h"
30 #include <xercesc/util/PlatformUtils.hpp>
31 #include <xercesc/framework/StdOutFormatTarget.hpp>
32 
33 namespace FinTP
34 {
41  {
42  public:
43 
45  static const string XPATH;
47  static const string KEEP_ORIGINAL;
49  static const string ENCODED_NODE_NAME;
50 
52  Base64Filter();
54  ~Base64Filter();
55 
57  string m_XPath;
62 
69  bool canLogPayload();
76  bool isMethodSupported( FilterMethod method, bool asClient );
77 
85  AbstractFilter::FilterResult ProcessMessage( XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* inputOutputData, NameValueCollection& transportHeaders, bool asClient );
94  AbstractFilter::FilterResult ProcessMessage( const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* inputData, AbstractFilter::buffer_type outputData, NameValueCollection& transportHeaders, bool asClient );
103  AbstractFilter::FilterResult ProcessMessage( AbstractFilter::buffer_type inputData, XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* outputData, NameValueCollection& transportHeaders, bool asClient );
105  AbstractFilter::FilterResult ProcessMessage( AbstractFilter::buffer_type inputData, AbstractFilter::buffer_type outputData, NameValueCollection& transportHeaders, bool asClient )
106  {
108  }
109 
111  AbstractFilter::FilterResult ProcessMessage( const XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument* inputData, unsigned char** outputData, NameValueCollection& transportHeaders, bool asClient )
112  {
114  }
115 
117  AbstractFilter::FilterResult ProcessMessage( AbstractFilter::buffer_type inputData, unsigned char** outputData, NameValueCollection& transportHeaders, bool asClient )
118  {
120  }
121 
122  /*FilterResult ProcessMessage( unsigned char* inputData, unsigned char* outputData,
123  NameValueCollection& transportHeaders, bool asClient );*/
124 
125  private :
127  void ValidateProperties();
128  };
129 }
130 #endif //BASE64FILTER_H