GEODE-6914: Replace libxml with xerces-c in CacheXmlParser (#501)
authorBlake Bender <bbender@pivotal.io>
Mon, 8 Jul 2019 21:45:33 +0000 (14:45 -0700)
committerGitHub <noreply@github.com>
Mon, 8 Jul 2019 21:45:33 +0000 (14:45 -0700)
commitb85c9366ccb055636f19922b96fbd4863e7b026f
tree896ff023329802927d0bf3887f4b46d9cdf3c1b0
parent037a9ffdbeca4da065f8fd997cc97d6065d55a0a
GEODE-6914: Replace libxml with xerces-c in CacheXmlParser (#501)

- Replaced libxml references with Xerces.
- Removed dead code.
- Add xerces-c project back into dependencies.  This was pulled in 11/2017, but we're switching to using it in product code now
- Templatize function pointers using std::function
- Remove unused endPdx method
- Rename member variables to conform to our conventions
- Move getFactoryFunc into Utils where it belongs
- Added negative test case to verify we assert if missing required attribute
- GEODE-6914: Apply correct compiler settings to Xerces
- GEODE-6914: Disable schema validation for the time being
- Add alias for xerces-c to CMakeLists, update reference to it
- Mark Xerces headers as system headers
- Spell out 'function' in getFactoryFunction
- Corresponding formatting changes
- Add a CacheXmlParser test that loads a cache.xml with a bad schema and assert it doesn't throw, i.e. we're not validating schemas

Co-authored-by: Matthew Reddington <mreddington@pivotal.io>
Co-authored-by: Mike Martell <mmartell@pivotal.io>
Co-authored-by: Jacob Barrett <jbarrett@pivotal.io>
30 files changed:
FindNativeClientCPPCache.cmake
clicache/src/DistributedSystem.cpp
cppcache/CMakeLists.txt
cppcache/CPPCacheConfig.cmake
cppcache/FindCPPCache.cmake
cppcache/integration-test/resources/bad_schema.xml [new file with mode: 0644]
cppcache/integration/framework/CMakeLists.txt
cppcache/integration/framework/Cluster.h
cppcache/integration/framework/NamedType.h [moved from cppcache/integration/framework/config.h.in with 63% similarity]
cppcache/integration/framework/TestConfig.cpp.in
cppcache/integration/framework/TestConfig.h
cppcache/integration/test/CMakeLists.txt
cppcache/integration/test/CacheXmlTest.cpp [new file with mode: 0644]
cppcache/src/CacheConfig.cpp [deleted file]
cppcache/src/CacheConfig.hpp [deleted file]
cppcache/src/CacheFactory.cpp
cppcache/src/CacheXml.cpp [deleted file]
cppcache/src/CacheXml.hpp [deleted file]
cppcache/src/CacheXmlParser.cpp
cppcache/src/CacheXmlParser.hpp
cppcache/src/RegionAttributes.cpp
cppcache/src/RegionFactory.cpp
cppcache/src/ThinClientPoolDM.cpp
cppcache/src/Utils.cpp
cppcache/src/Utils.hpp
cppcache/test/CacheXmlParserTest.cpp
dependencies/CMakeLists.txt
dependencies/libxml2/CMakeLists.txt [deleted file]
dependencies/xerces-c/CMakeLists.txt [new file with mode: 0644]
dist/LICENSE