You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by GitBox <gi...@apache.org> on 2019/11/26 19:32:04 UTC

[GitHub] [incubator-pinot] Jackie-Jiang commented on a change in pull request #4859: Enhance TagNameUtils to handle the TagOverrideConfig

Jackie-Jiang commented on a change in pull request #4859: Enhance TagNameUtils to handle the TagOverrideConfig
URL: https://github.com/apache/incubator-pinot/pull/4859#discussion_r350940643
 
 

 ##########
 File path: pinot-common/src/main/java/org/apache/pinot/common/config/TagNameUtils.java
 ##########
 @@ -27,78 +28,93 @@ private TagNameUtils() {
   }
 
   public final static String DEFAULT_TENANT_NAME = "DefaultTenant";
+  private final static String BROKER_TAG_SUFFIX = "_" + TenantRole.BROKER;
+  private final static String OFFLINE_SERVER_TAG_SUFFIX = "_" + ServerType.OFFLINE;
+  private final static String REALTIME_SERVER_TAG_SUFFIX = "_" + ServerType.REALTIME;
 
-  private static String buildRealtimeTagFromTenantName(String tenantName) {
-    return tenantName + "_" + ServerType.REALTIME.toString();
-  }
-
-  private static String buildOfflineTagFromTenantName(String tenantName) {
-    return tenantName + "_" + ServerType.OFFLINE.toString();
-  }
-
-  private static String buildBrokerTenantTagFromTenantName(String tenantName) {
-    return tenantName + "_" + TenantRole.BROKER.toString();
+  public static boolean isBrokerTag(String tagName) {
+    return tagName.endsWith(BROKER_TAG_SUFFIX);
   }
 
   public static boolean isServerTag(String tagName) {
     return isOfflineServerTag(tagName) || isRealtimeServerTag(tagName);
   }
 
   public static boolean isOfflineServerTag(String tagName) {
-    return tagName.endsWith(ServerType.OFFLINE.toString());
+    return tagName.endsWith(OFFLINE_SERVER_TAG_SUFFIX);
   }
 
   public static boolean isRealtimeServerTag(String tagName) {
-    return tagName.endsWith(ServerType.REALTIME.toString());
+    return tagName.endsWith(REALTIME_SERVER_TAG_SUFFIX);
   }
 
-  public static boolean isBrokerTag(String tagName) {
-    return tagName.endsWith(TenantRole.BROKER.toString());
+  public static String getTenantFromTag(String tagName) {
+    if (tagName.endsWith(BROKER_TAG_SUFFIX)) {
+      return tagName.substring(0, tagName.length() - BROKER_TAG_SUFFIX.length());
+    }
+    if (tagName.endsWith(OFFLINE_SERVER_TAG_SUFFIX)) {
+      return tagName.substring(0, tagName.length() - OFFLINE_SERVER_TAG_SUFFIX.length());
+    }
+    if (tagName.endsWith(REALTIME_SERVER_TAG_SUFFIX)) {
+      return tagName.substring(0, tagName.length() - REALTIME_SERVER_TAG_SUFFIX.length());
+    }
+    return tagName;
+  }
+
+  public static String getBrokerTagForTenant(@Nullable String tenantName) {
+    return getTagForTenant(BROKER_TAG_SUFFIX, tenantName);
+  }
+
+  public static String getOfflineTagForTenant(@Nullable String tenantName) {
+    return getTagForTenant(OFFLINE_SERVER_TAG_SUFFIX, tenantName);
+  }
+
+  public static String getRealtimeTagForTenant(@Nullable String tenantName) {
+    return getTagForTenant(REALTIME_SERVER_TAG_SUFFIX, tenantName);
   }
 
-  public static String getRealtimeTagForTenant(String tenantName) {
+  private static String getTagForTenant(String tagSuffix, @Nullable String tenantName) {
     if (tenantName == null) {
-      return TagNameUtils.getRealtimeTagForTenant(DEFAULT_TENANT_NAME);
+      return DEFAULT_TENANT_NAME + tagSuffix;
     }
-    if (tenantName.endsWith(ServerType.REALTIME.toString())) {
+    if (tenantName.endsWith(tagSuffix)) {
       return tenantName;
     } else {
-      return TagNameUtils.buildRealtimeTagFromTenantName(tenantName);
+      return tenantName + tagSuffix;
     }
   }
 
-  public static String getOfflineTagForTenant(String tenantName) {
-    if (tenantName == null) {
-      return TagNameUtils.getOfflineTagForTenant(DEFAULT_TENANT_NAME);
-    }
-    if (tenantName.endsWith(ServerType.OFFLINE.toString())) {
-      return tenantName;
+  public static String extractBrokerTag(TenantConfig tenantConfig) {
 
 Review comment:
   It won't be (everything not annotated with nullable are non-null)

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org