This is an automated email from the ASF dual-hosted git repository.
liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git
The following commit(s) were added to refs/heads/master by this push:
new e5734ce [#2551] simplified profile path in cse_run.log (#2583)
e5734ce is described below
commit e5734ce023576ec24f5cea886de75553d7b45ed3
Author: david6969xin <[email protected]>
AuthorDate: Sat Sep 18 16:03:01 2021 +0800
[#2551] simplified profile path in cse_run.log (#2583)
---
.../foundation/common/utils/IOUtils.java | 26 +++++++++++++++++++
.../foundation/common/utils/Log4jUtils.java | 2 +-
.../foundation/common/utils/TestIOUtils.java} | 29 ++++++++++++++++++----
.../config/archaius/sources/ConfigModel.java | 5 +++-
4 files changed, 55 insertions(+), 7 deletions(-)
diff --git
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
index 02db6ce..ce57bbb 100644
---
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
+++
b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
@@ -18,9 +18,35 @@ package org.apache.servicecomb.foundation.common.utils;
import java.io.Closeable;
+import org.apache.commons.lang3.StringUtils;
+
public class IOUtils {
@SuppressWarnings("deprecation")
public static void closeQuietly(final Closeable closeable) {
org.apache.commons.io.IOUtils.closeQuietly(closeable);
}
+
+ public static String anonymousPath(String path) {
+ if (StringUtils.isEmpty(path)) {
+ return path;
+ }
+ StringBuilder result = new StringBuilder();
+ char separator = path.contains("/") ? '/' : '\\';
+ char[] tokens = path.toCharArray();
+ boolean byPass = false;
+ boolean fileName = true;
+ for (int i = tokens.length - 1; i >= 0; i--) {
+ if (tokens[i] == separator) {
+ fileName = false;
+ byPass = false;
+ result.append(separator);
+ continue;
+ }
+ if (!byPass || fileName) {
+ result.append(tokens[i]);
+ byPass = true;
+ }
+ }
+ return result.reverse().toString();
+ }
}
diff --git
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/Log4jUtils.java
b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/Log4jUtils.java
index f867983..46dbd78 100644
---
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/Log4jUtils.java
+++
b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/Log4jUtils.java
@@ -109,7 +109,7 @@ public final class Log4jUtils {
File mergedfile = new File(res.getFile().getParentFile(), MERGED_FILE);
FileUtils.writeStringToFile(mergedfile, content, StandardCharsets.UTF_8,
false);
- log.info("Write merged log4j config file to {}",
mergedfile.getAbsolutePath());
+ log.info("Write merged log4j config file to {}",
IOUtils.anonymousPath(mergedfile.getAbsolutePath()));
}
private static String genFileContext(List<Resource> resList, Properties
properties) throws IOException {
diff --git
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
b/foundations/foundation-common/src/test/java/org/apache/servicecomb/foundation/common/utils/TestIOUtils.java
similarity index 50%
copy from
foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
copy to
foundations/foundation-common/src/test/java/org/apache/servicecomb/foundation/common/utils/TestIOUtils.java
index 02db6ce..fe4f0e4 100644
---
a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/utils/IOUtils.java
+++
b/foundations/foundation-common/src/test/java/org/apache/servicecomb/foundation/common/utils/TestIOUtils.java
@@ -14,13 +14,32 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package org.apache.servicecomb.foundation.common.utils;
-import java.io.Closeable;
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+
+public class TestIOUtils {
+
+ @Test
+ public void testAnonymousPath() {
+ assertEquals(":/:/r/2/y/b/y/0/s/microservice.yaml",
+ IOUtils.anonymousPath("jar:file:/D:/User/.m2/repository/servicecomb"
+ + "/transport-highway/2.3.0/classes/microservice.yaml"));
+
+ assertEquals(":/:/r/microservice.yaml",
IOUtils.anonymousPath("file:/D:/User/microservice.yaml"));
-public class IOUtils {
- @SuppressWarnings("deprecation")
- public static void closeQuietly(final Closeable closeable) {
- org.apache.commons.io.IOUtils.closeQuietly(closeable);
+ assertEquals(":\\:\\r\\microservice.yaml",
IOUtils.anonymousPath("file:\\D:\\User\\microservice.yaml"));
+
+ assertEquals("r\\t\\a.txt", IOUtils.anonymousPath("user\\test\\a.txt"));
+
+ assertEquals(":\\:\\a.txt", IOUtils.anonymousPath("file:\\D:\\a.txt"));
+
+ assertEquals(":\\a.txt", IOUtils.anonymousPath("D:\\a.txt"));
+
+ assertEquals("a.txt", IOUtils.anonymousPath("a.txt"));
}
+
}
diff --git
a/foundations/foundation-config/src/main/java/org/apache/servicecomb/config/archaius/sources/ConfigModel.java
b/foundations/foundation-config/src/main/java/org/apache/servicecomb/config/archaius/sources/ConfigModel.java
index 55118d5..bb702bf 100644
---
a/foundations/foundation-config/src/main/java/org/apache/servicecomb/config/archaius/sources/ConfigModel.java
+++
b/foundations/foundation-config/src/main/java/org/apache/servicecomb/config/archaius/sources/ConfigModel.java
@@ -20,6 +20,8 @@ package org.apache.servicecomb.config.archaius.sources;
import java.net.URL;
import java.util.Map;
+import org.apache.servicecomb.foundation.common.utils.IOUtils;
+
public class ConfigModel {
private URL url;
@@ -54,6 +56,7 @@ public class ConfigModel {
@Override
public String toString() {
- return url == null ? "" : url.toString();
+ return url == null ? "" : IOUtils.anonymousPath(url.toString());
}
+
}