You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/06/24 14:44:17 UTC
[camel] 01/02: CAMEL-18171: camel-main - LocationHelper to make it easier to get summary logs
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 6dec16ab59e95072c93ae62c0b63226ea91265ed
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Fri Jun 24 16:20:39 2022 +0200
CAMEL-18171: camel-main - LocationHelper to make it easier to get summary logs
---
.../org/apache/camel/main/BaseMainSupport.java | 32 +----------
.../java/org/apache/camel/util/LocationHelper.java | 62 ++++++++++++++++++++++
2 files changed, 63 insertions(+), 31 deletions(-)
diff --git a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
index bb03247c31e..ed6632a1bca 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/BaseMainSupport.java
@@ -80,6 +80,7 @@ import static org.apache.camel.main.MainHelper.computeProperties;
import static org.apache.camel.main.MainHelper.optionKey;
import static org.apache.camel.main.MainHelper.setPropertiesOnTarget;
import static org.apache.camel.main.MainHelper.validateOptionAndValue;
+import static org.apache.camel.util.LocationHelper.locationSummary;
import static org.apache.camel.util.StringHelper.matches;
/**
@@ -1687,37 +1688,6 @@ public abstract class BaseMainSupport extends BaseService {
return answer;
}
- private static String locationSummary(OrderedLocationProperties autoConfiguredProperties, String key) {
- String loc = autoConfiguredProperties.getLocation(key);
- if (loc == null) {
- loc = "";
- }
- // remove scheme to make it shorter
- if (loc.contains(":")) {
- loc = StringHelper.after(loc, ":");
- }
- // strip paths so location is only the name
- loc = FileUtil.stripPath(loc);
- // clip long name
- if (loc.length() > 28) {
- int pos = loc.length() - 28;
- loc = loc.substring(pos);
- }
- // let us have human friendly locations
- if ("initial".equals(loc) || "override".equals(loc)) {
- loc = "camel-main";
- } else if ("SYS".equals(loc)) {
- loc = "JVM System Property";
- } else if ("ENV".equals(loc)) {
- loc = "OS Environment Variable";
- } else if ("arguments".equals(loc) || "CLI".equals(loc)) {
- loc = "Command Line";
- }
- loc = "[" + loc + "]";
- loc = String.format("%-30s", loc);
- return loc;
- }
-
private static final class PropertyPlaceholderListener implements PropertiesLookupListener {
private final OrderedLocationProperties olp;
diff --git a/core/camel-util/src/main/java/org/apache/camel/util/LocationHelper.java b/core/camel-util/src/main/java/org/apache/camel/util/LocationHelper.java
new file mode 100644
index 00000000000..30b8e752ef4
--- /dev/null
+++ b/core/camel-util/src/main/java/org/apache/camel/util/LocationHelper.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.util;
+
+public final class LocationHelper {
+
+ private LocationHelper() {
+ }
+
+ /**
+ * The location as human-readable with the given key from the properties
+ *
+ * @param properties the properties
+ * @param key the key
+ * @return the location or empty if not possible to resolve a location.
+ */
+ public static String locationSummary(OrderedLocationProperties properties, String key) {
+ String loc = properties.getLocation(key);
+ if (loc == null) {
+ loc = "";
+ }
+ // remove scheme to make it shorter
+ if (loc.contains(":")) {
+ loc = StringHelper.after(loc, ":");
+ }
+ // strip paths so location is only the name
+ loc = FileUtil.stripPath(loc);
+ // clip long name
+ if (loc.length() > 28) {
+ int pos = loc.length() - 28;
+ loc = loc.substring(pos);
+ }
+ // let us have human friendly locations
+ if ("initial".equals(loc) || "override".equals(loc)) {
+ loc = "camel-main";
+ } else if ("SYS".equals(loc)) {
+ loc = "JVM System Property";
+ } else if ("ENV".equals(loc)) {
+ loc = "OS Environment Variable";
+ } else if ("arguments".equals(loc) || "CLI".equals(loc)) {
+ loc = "Command Line";
+ }
+ loc = "[" + loc + "]";
+ loc = String.format("%-30s", loc);
+ return loc;
+ }
+
+}