View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   */
18  package org.apache.omid.metrics;
19  
20  public class MetricsUtils {
21  
22      private static final char DEFAULT_SEPARATOR = '.';
23  
24      public static String name(String name, String... otherNames) {
25          return name(name, DEFAULT_SEPARATOR, otherNames);
26      }
27  
28      public static String name(String name, char separator, String... otherNames) {
29          final StringBuffer builder = new StringBuffer(name);
30          if (otherNames != null) {
31              for (String otherName : otherNames) {
32                  concat(builder, otherName, separator);
33              }
34          }
35          return builder.toString();
36      }
37  
38      private static void concat(StringBuffer head, String tail, char separator) {
39          if (tail != null && !tail.isEmpty()) {
40              if (head.length() > 0) {
41                  head.append(separator);
42              }
43              head.append(tail);
44          }
45      }
46  
47  }