Skip to content

Commit b33865b

Browse files
authored
PropertiesRegistry: cleanup/renaming updated javadocs
1 parent b763094 commit b33865b

File tree

2 files changed

+48
-82
lines changed

2 files changed

+48
-82
lines changed

metrics/src/main/java/io/scalecube/metrics/PropertiesRegistry.java

Lines changed: 37 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -61,82 +61,62 @@ public void put(String name, Object value) {
6161
});
6262
}
6363

64-
/**
65-
* Retrieves {@link Byte} property.
66-
*
67-
* @param countersReader countersReader
68-
* @param name property name
69-
* @return property value, or {@code null} if not found
70-
*/
71-
public static Byte getByteProperty(CountersReader countersReader, String name) {
72-
return getProperty(countersReader, name, Byte::parseByte);
73-
}
74-
75-
/**
76-
* Retrieves {@link Short} property.
77-
*
78-
* @param countersReader countersReader
79-
* @param name property name
80-
* @return property value, or {@code null} if not found
81-
*/
82-
public static Short getShortProperty(CountersReader countersReader, String name) {
83-
return getProperty(countersReader, name, Short::parseShort);
84-
}
85-
8664
/**
8765
* Retrieves {@link Integer} property.
8866
*
8967
* @param countersReader countersReader
9068
* @param name property name
91-
* @return property value, or {@code null} if not found
69+
* @return property value, or {@code null} if not found or malformed, or throws exception if
70+
* unparsable
9271
*/
93-
public static Integer getIntProperty(CountersReader countersReader, String name) {
94-
return getProperty(countersReader, name, Integer::parseInt);
72+
public static Integer getInt(CountersReader countersReader, String name) {
73+
return get(countersReader, name, Integer::parseInt);
9574
}
9675

9776
/**
9877
* Retrieves {@link Long} property.
9978
*
10079
* @param countersReader countersReader
10180
* @param name property name
102-
* @return property value, or {@code null} if not found
81+
* @return property value, or {@code null} if not found or malformed, or throws exception if
82+
* unparsable
10383
*/
104-
public static Long getLongProperty(CountersReader countersReader, String name) {
105-
return getProperty(countersReader, name, Long::parseLong);
84+
public static Long getLong(CountersReader countersReader, String name) {
85+
return get(countersReader, name, Long::parseLong);
10686
}
10787

10888
/**
109-
* Retrieves {@link Double} property.
89+
* Retrieves enum property.
11090
*
11191
* @param countersReader countersReader
11292
* @param name property name
113-
* @return property value, or {@code null} if not found
93+
* @return property value, or {@code null} if not found or malformed
11494
*/
115-
public static Double getDoubleProperty(CountersReader countersReader, String name) {
116-
return getProperty(countersReader, name, Double::parseDouble);
95+
public static <T extends Enum<T>> T getEnum(
96+
CountersReader countersReader, String name, Function<String, T> enumFunc) {
97+
return get(countersReader, name, enumFunc);
11798
}
11899

119100
/**
120-
* Retrieves enum property.
101+
* Retrieves {@link Boolean} property.
121102
*
122103
* @param countersReader countersReader
123104
* @param name property name
124-
* @return property value, or {@code null} if not found
105+
* @return property value, or {@code null} if not found or malformed
125106
*/
126-
public static <T extends Enum<T>> T getEnumProperty(
127-
CountersReader countersReader, String name, Function<String, T> enumFunc) {
128-
return getProperty(countersReader, name, enumFunc);
107+
public static Boolean getBoolean(CountersReader countersReader, String name) {
108+
return get(countersReader, name, Boolean::parseBoolean);
129109
}
130110

131111
/**
132112
* Retrieves {@link String} property.
133113
*
134114
* @param countersReader countersReader
135115
* @param name property name
136-
* @return property value, or {@code null} if not found
116+
* @return property value, or {@code null} if not found or malformed
137117
*/
138-
public static String getProperty(CountersReader countersReader, String name) {
139-
return getProperty(countersReader, name, s -> s);
118+
public static String getString(CountersReader countersReader, String name) {
119+
return get(countersReader, name, s -> s);
140120
}
141121

142122
/**
@@ -146,12 +126,20 @@ public static String getProperty(CountersReader countersReader, String name) {
146126
* @param name property name
147127
* @param converter function to convert string value
148128
* @param <T> result type
149-
* @return converted property value, or {@code null} if not found
129+
* @return converted property value, or {@code null} if not found or malformed
150130
*/
151-
public static <T> T getProperty(
131+
public static <T> T get(
152132
CountersReader countersReader, String name, Function<String, T> converter) {
153133
final var counter = CounterDescriptor.findFirstCounter(countersReader, byPropertyName(name));
154-
return counter != null ? converter.apply(counter.label().split("=")[1]) : null;
134+
if (counter == null) {
135+
return null;
136+
}
137+
final var label = counter.label();
138+
final var equalsIndex = label.indexOf('=');
139+
if (equalsIndex == -1) {
140+
return null; // malformed label
141+
}
142+
return converter.apply(label.substring(equalsIndex + 1));
155143
}
156144

157145
/**
@@ -162,6 +150,11 @@ public static <T> T getProperty(
162150
*/
163151
public static Predicate<CounterDescriptor> byPropertyName(String name) {
164152
return byType(PropertiesRegistry.PROPERTY_COUNTER_TYPE_ID)
165-
.and(descriptor -> name.equals(descriptor.label().split("=")[0]));
153+
.and(
154+
descriptor -> {
155+
final var label = descriptor.label();
156+
final var equalsIndex = label.indexOf('=');
157+
return equalsIndex != -1 && name.equals(label.substring(0, equalsIndex));
158+
});
166159
}
167160
}

metrics/src/test/java/io/scalecube/metrics/PropertiesRegistryTest.java

Lines changed: 11 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -33,70 +33,43 @@ void stringProperty() {
3333
final var value = UUID.randomUUID();
3434
final var name = "string_property";
3535
propertiesRegistry.put(name, value);
36-
assertEquals(value.toString(), PropertiesRegistry.getProperty(countersManager, name));
37-
}
38-
39-
@Test
40-
void byteProperty() {
41-
final String name = "byte_property";
42-
byte value = 42;
43-
propertiesRegistry.put(name, value);
44-
assertEquals(Byte.valueOf(value), PropertiesRegistry.getByteProperty(countersManager, name));
45-
}
46-
47-
@Test
48-
void shortProperty() {
49-
final String name = "short_property";
50-
short value = 12345;
51-
propertiesRegistry.put(name, value);
52-
assertEquals(Short.valueOf(value), PropertiesRegistry.getShortProperty(countersManager, name));
36+
assertEquals(value.toString(), PropertiesRegistry.getString(countersManager, name));
5337
}
5438

5539
@Test
5640
void intProperty() {
5741
final String name = "int_property";
5842
int value = 123456789;
5943
propertiesRegistry.put(name, value);
60-
assertEquals(Integer.valueOf(value), PropertiesRegistry.getIntProperty(countersManager, name));
44+
assertEquals(Integer.valueOf(value), PropertiesRegistry.getInt(countersManager, name));
6145
}
6246

6347
@Test
6448
void longProperty() {
6549
final String name = "long_property";
6650
long value = 9876543210L;
6751
propertiesRegistry.put(name, value);
68-
assertEquals(Long.valueOf(value), PropertiesRegistry.getLongProperty(countersManager, name));
69-
}
70-
71-
@Test
72-
void doubleProperty() {
73-
final String name = "double_property";
74-
double value = 3.14159;
75-
propertiesRegistry.put(name, value);
76-
assertEquals(
77-
Double.valueOf(value), PropertiesRegistry.getDoubleProperty(countersManager, name));
52+
assertEquals(Long.valueOf(value), PropertiesRegistry.getLong(countersManager, name));
7853
}
7954

8055
@Test
8156
void enumProperty() {
8257
final String name = "enum_property";
8358
SampleEnum value = SampleEnum.B;
8459
propertiesRegistry.put(name, value);
85-
SampleEnum result =
86-
PropertiesRegistry.getEnumProperty(countersManager, name, SampleEnum::valueOf);
60+
SampleEnum result = PropertiesRegistry.getEnum(countersManager, name, SampleEnum::valueOf);
8761
assertEquals(value, result);
8862
}
8963

9064
@Test
9165
void unknownPropertyReturnsNull() {
92-
assertNull(PropertiesRegistry.getProperty(countersManager, "nonexistent"));
93-
assertNull(PropertiesRegistry.getByteProperty(countersManager, "nonexistent"));
94-
assertNull(PropertiesRegistry.getShortProperty(countersManager, "nonexistent"));
95-
assertNull(PropertiesRegistry.getIntProperty(countersManager, "nonexistent"));
96-
assertNull(PropertiesRegistry.getLongProperty(countersManager, "nonexistent"));
97-
assertNull(PropertiesRegistry.getDoubleProperty(countersManager, "nonexistent"));
98-
assertNull(
99-
PropertiesRegistry.getEnumProperty(countersManager, "nonexistent", SampleEnum::valueOf));
66+
assertNull(PropertiesRegistry.getString(countersManager, "nonexistent"));
67+
assertNull(PropertiesRegistry.getInt(countersManager, "nonexistent"));
68+
assertNull(PropertiesRegistry.getInt(countersManager, "nonexistent"));
69+
assertNull(PropertiesRegistry.getInt(countersManager, "nonexistent"));
70+
assertNull(PropertiesRegistry.getLong(countersManager, "nonexistent"));
71+
assertNull(PropertiesRegistry.getBoolean(countersManager, "nonexistent"));
72+
assertNull(PropertiesRegistry.getEnum(countersManager, "nonexistent", SampleEnum::valueOf));
10073
}
10174

10275
enum SampleEnum {

0 commit comments

Comments
 (0)