alex-plekhanov commented on code in PR #11357:
URL: https://github.com/apache/ignite/pull/11357#discussion_r1628062036


##########
modules/core/src/main/java/org/apache/ignite/spi/systemview/view/CacheView.java:
##########
@@ -344,26 +344,58 @@ public String expiryPolicyFactory() {
 
         ExpiryPolicy expiryPlc = 
(ExpiryPolicy)cache.cacheConfiguration().getExpiryPolicyFactory().create();
 
-        Function<Duration, String> func = (duration) -> {
-            if (duration == null)
-                return null;
+        AtomicBoolean first = new AtomicBoolean(true);
 
-            return new StringBuilder()
-                .append(duration.getDurationAmount())
-                .append(' ')
-                .append(duration.getTimeUnit() == null ? TimeUnit.MILLISECONDS 
: duration.getTimeUnit())
-                .toString();
-        };
+        StringBuilder expiryPlcStrBld = new 
StringBuilder(expiryPlc.getClass().getSimpleName());
 
-        String expiryPlcStr = new 
StringBuilder(expiryPlc.getClass().getSimpleName())
-            .append(" 
[create=").append(func.apply(expiryPlc.getExpiryForCreation()))
-            .append(", 
update=").append(func.apply(expiryPlc.getExpiryForUpdate()))
-            .append(", 
access=").append(func.apply(expiryPlc.getExpiryForAccess()))
-            .append(']').toString();
+        appendField(expiryPlcStrBld, "create", 
expiryPlc::getExpiryForCreation, first);
+        appendField(expiryPlcStrBld, "update", expiryPlc::getExpiryForUpdate, 
first);
+        appendField(expiryPlcStrBld, "access", expiryPlc::getExpiryForAccess, 
first);
+
+        if (!first.get())
+            expiryPlcStrBld.append(']');
 
         return 
S.toString((Class<Factory<?>>)cache.cacheConfiguration().getExpiryPolicyFactory().getClass(),
-            cache.cacheConfiguration().getExpiryPolicyFactory(),
-            "expiryPlc", expiryPlcStr);
+            cache.cacheConfiguration().getExpiryPolicyFactory(), "expiryPlc", 
expiryPlcStrBld);
+    }
+
+
+    /**
+     * @param out {@link StringBuilder} to append to.
+     * @param fieldName create/update/access expiry policy field name.
+     * @param durationSupplier Duration supplier for specified expiry policy 
field name.
+     * @param first {@link AtomicBoolean} flag indicating whether the field is 
the first in sequence.
+     */
+    private static void appendField(
+        StringBuilder out,
+        String fieldName,
+        Supplier<Duration> durationSupplier,

Review Comment:
   `durationSupplier` is senseless, just use duration.



##########
modules/core/src/main/java/org/apache/ignite/spi/systemview/view/CacheView.java:
##########
@@ -344,26 +344,58 @@ public String expiryPolicyFactory() {
 
         ExpiryPolicy expiryPlc = 
(ExpiryPolicy)cache.cacheConfiguration().getExpiryPolicyFactory().create();
 
-        Function<Duration, String> func = (duration) -> {
-            if (duration == null)
-                return null;
+        AtomicBoolean first = new AtomicBoolean(true);
 
-            return new StringBuilder()
-                .append(duration.getDurationAmount())
-                .append(' ')
-                .append(duration.getTimeUnit() == null ? TimeUnit.MILLISECONDS 
: duration.getTimeUnit())
-                .toString();
-        };
+        StringBuilder expiryPlcStrBld = new 
StringBuilder(expiryPlc.getClass().getSimpleName());
 
-        String expiryPlcStr = new 
StringBuilder(expiryPlc.getClass().getSimpleName())
-            .append(" 
[create=").append(func.apply(expiryPlc.getExpiryForCreation()))
-            .append(", 
update=").append(func.apply(expiryPlc.getExpiryForUpdate()))
-            .append(", 
access=").append(func.apply(expiryPlc.getExpiryForAccess()))
-            .append(']').toString();
+        appendField(expiryPlcStrBld, "create", 
expiryPlc::getExpiryForCreation, first);
+        appendField(expiryPlcStrBld, "update", expiryPlc::getExpiryForUpdate, 
first);
+        appendField(expiryPlcStrBld, "access", expiryPlc::getExpiryForAccess, 
first);
+
+        if (!first.get())
+            expiryPlcStrBld.append(']');
 
         return 
S.toString((Class<Factory<?>>)cache.cacheConfiguration().getExpiryPolicyFactory().getClass(),
-            cache.cacheConfiguration().getExpiryPolicyFactory(),
-            "expiryPlc", expiryPlcStr);
+            cache.cacheConfiguration().getExpiryPolicyFactory(), "expiryPlc", 
expiryPlcStrBld);
+    }
+
+
+    /**
+     * @param out {@link StringBuilder} to append to.
+     * @param fieldName create/update/access expiry policy field name.
+     * @param durationSupplier Duration supplier for specified expiry policy 
field name.
+     * @param first {@link AtomicBoolean} flag indicating whether the field is 
the first in sequence.
+     */
+    private static void appendField(
+        StringBuilder out,
+        String fieldName,
+        Supplier<Duration> durationSupplier,
+        AtomicBoolean first) {

Review Comment:
   Put `) {` to the next line



-- 
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.

To unsubscribe, e-mail: notifications-unsubscr...@ignite.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to