[
https://issues.apache.org/jira/browse/GEODE-2470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15865017#comment-15865017
]
ASF GitHub Bot commented on GEODE-2470:
---------------------------------------
Github user pivotal-jbarrett commented on a diff in the pull request:
https://github.com/apache/geode-native/pull/6#discussion_r100957079
--- Diff: src/cppcache/integration-test/CacheHelper.cpp ---
@@ -1382,6 +1377,31 @@ void
CacheHelper::createDuplicateXMLFile(std::string& originalFile,
CacheHelper::staticConfigFileList.size());
}
+void CacheHelper::replacePortsInFile(int hostPort1, int hostPort2,
+ int hostPort3, int hostPort4, int
locPort1,
+ int locPort2, const std::string&
inFile,
+ const std::string& outFile) {
+ std::ifstream in(inFile, std::ios::in | std::ios::binary);
+ if (in) {
+ std::string contents;
+ in.seekg(0, std::ios::end);
+ contents.resize(in.tellg());
+ in.seekg(0, std::ios::beg);
+ in.read(&contents[0], contents.size());
+ in.close();
+
+ contents = std::regex_replace(contents, std::regex("HOST_PORT1"),
std::to_string(hostPort1));
+ contents = std::regex_replace(contents, std::regex("HOST_PORT2"),
std::to_string(hostPort2));
+ contents = std::regex_replace(contents, std::regex("HOST_PORT3"),
std::to_string(hostPort3));
+ contents = std::regex_replace(contents, std::regex("HOST_PORT4"),
std::to_string(hostPort4));
+ contents = std::regex_replace(contents, std::regex("LOC_PORT1"),
std::to_string(locPort1));
+ contents = std::regex_replace(contents, std::regex("LOC_PORT2"),
std::to_string(locPort2));
+
+ std::ofstream out(outFile, std::ios::out);
+ out.write(&contents[0], contents.size());
--- End diff --
```
out << contents;
out.close();
```
> Remove Dependency on sed tool
> -----------------------------
>
> Key: GEODE-2470
> URL: https://issues.apache.org/jira/browse/GEODE-2470
> Project: Geode
> Issue Type: Improvement
> Components: native client
> Reporter: Michael Martell
>
> The integration tests currently rely on sed to replace strings inside config
> xml files. This task replaces that dependency with standard C++ code.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)