Gyeongtae Park created ZEPPELIN-6262:
----------------------------------------

             Summary: Refactor ElasticsearchClientTypeBuilder for safer enum 
parsing and blank input handling
                 Key: ZEPPELIN-6262
                 URL: https://issues.apache.org/jira/browse/ZEPPELIN-6262
             Project: Zeppelin
          Issue Type: Improvement
            Reporter: Gyeongtae Park
            Assignee: Gyeongtae Park
             Fix For: 1.0.0, 0.12.1, 0.13.0


The current implementation of {{ElasticsearchClientTypeBuilder}} performs a 
two-step validation by checking for a matching enum value before calling 
{{{}Enum.valueOf(){}}}. This can be simplified and made more robust by using 
exception handling.

*Changes Made:*
 * Replaced {{StringUtils.isEmpty()}} with {{StringUtils.isBlank()}} to 
correctly treat whitespace-only strings as invalid input

 * Removed redundant {{Arrays.stream(...).anyMatch(...)}} check and replaced it 
with a {{try-catch}} around {{Enum.valueOf(...)}}

 * Ensured that invalid or {{null}} inputs fall back to 
{{ElasticsearchClientType.UNKNOWN}} safely

*Benefits:*
 * Improved code readability and conciseness

 * Reduced enum value lookup from two passes to one

 * Better handling of edge cases like {{null}} or whitespace-only strings

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to