Andrea Cosentino created CAMEL-24768:
----------------------------------------

             Summary: camel-huaweicloud-dms/-iam: ineffective int-option guards 
(mandatory fields, proxy port) and a fragile exchange-property cast
                 Key: CAMEL-24768
                 URL: https://issues.apache.org/jira/browse/CAMEL-24768
             Project: Camel
          Issue Type: Bug
            Reporter: Andrea Cosentino
            Assignee: Andrea Cosentino


Gap-audit LOW findings across two Huawei components (verified against main), 
all rooted in guarding primitive int options with 
ObjectHelper.isEmpty/isNotEmpty (which autoboxes to a non-null Integer and is 
therefore always non-empty):

camel-huaweicloud-dms:
* DMSProducer: the "Storage space is mandatory" and "Partition number is 
mandatory" guards use ObjectHelper.isEmpty on values that originate from 
primitive int endpoint options, so they never fire when the value comes from 
the endpoint default (0) and storage_space:0 / partition_num:0 is sent instead 
of the documented client-side error.
* DMSEndpoint proxy guard uses ObjectHelper.isNotEmpty(getProxyPort()) on a 
primitive int (always true), so proxyHost set with proxyPort omitted configures 
a proxy on port 0.
* DMSProducer casts the STORAGE_SPACE / PARTITION_NUM exchange properties with 
a raw (Integer) cast, throwing ClassCastException on a String-typed value, 
unlike AVAILABLE_ZONES which uses the type-converting getProperty(name, type).

camel-huaweicloud-iam:
* IAMEndpoint has the same always-true proxy-port guard.

All are pure-code fixes (no @UriParam type change), consistent with the same 
proxy-port guard already corrected in camel-huaweicloud-obs and -functiongraph.



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

Reply via email to