23 #include "lib/INIReader.h" |
23 #include "lib/INIReader.h" |
24 #include "lib/BasicUnescapingProcessor.h" |
24 #include "lib/BasicUnescapingProcessor.h" |
25 #include "lib/BackspaceUnescapingProcessor.h" |
25 #include "lib/BackspaceUnescapingProcessor.h" |
26 #include "lib/JavaPropertiesUnescapingProcessor.h" |
26 #include "lib/JavaPropertiesUnescapingProcessor.h" |
27 #include "lib/JavaPropertiesDialect.h" |
27 #include "lib/JavaPropertiesDialect.h" |
|
28 #include "lib/JavaManifestMFDialect.h" |
28 #include "lib/XMLNameCodec.h" |
29 #include "lib/XMLNameCodec.h" |
29 |
30 |
30 using namespace relpipe::in::ini::lib; |
31 using namespace relpipe::in::ini::lib; |
31 |
32 |
32 namespace relpipe { |
33 namespace relpipe { |
159 reader.reset(INIReader::create(*input)); |
160 reader.reset(INIReader::create(*input)); |
160 reader->addUnescapingProcessor(std::make_shared<BasicUnescapingProcessor>(), unescaping::Basic, true); |
161 reader->addUnescapingProcessor(std::make_shared<BasicUnescapingProcessor>(), unescaping::Basic, true); |
161 reader->addUnescapingProcessor(std::make_shared<JavaPropertiesUnescapingProcessor>(), unescaping::JavaProperties, false); |
162 reader->addUnescapingProcessor(std::make_shared<JavaPropertiesUnescapingProcessor>(), unescaping::JavaProperties, false); |
162 reader->addUnescapingProcessor(std::make_shared<BackspaceUnescapingProcessor>(), unescaping::Backspace, true); |
163 reader->addUnescapingProcessor(std::make_shared<BackspaceUnescapingProcessor>(), unescaping::Backspace, true); |
163 reader->addDialect(std::make_shared<JavaPropertiesDialect>(), dialect::JavaProperties, false); |
164 reader->addDialect(std::make_shared<JavaPropertiesDialect>(), dialect::JavaProperties, false); |
|
165 reader->addDialect(std::make_shared<JavaManifestMFDialect>(), dialect::JavaManifestMF, false); |
164 handler = std::make_shared<HierarchicalINIContentHandler>(parser); |
166 handler = std::make_shared<HierarchicalINIContentHandler>(parser); |
165 } |
167 } |
166 |
168 |
167 void setOption(const std::string& uri, const std::string& value) { |
169 void setOption(const std::string& uri, const std::string& value) { |
168 if (handler->setOption(uri, value)) return; |
170 if (handler->setOption(uri, value)) return; |