[ 
https://issues.apache.org/jira/browse/OFBIZ-9454?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kyra Pritzel-Hentley updated OFBIZ-9454:
----------------------------------------
    Attachment: OFBIZ-9454_accounting.thirdparty.clearcommerce_bugfixes.patch

The patch resolves all bugs except for DM_DEFAULT_ENCODING.

> [FB] Package org.apache.ofbiz.accounting.thirdparty.clearcommerce
> -----------------------------------------------------------------
>
>                 Key: OFBIZ-9454
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-9454
>             Project: OFBiz
>          Issue Type: Sub-task
>          Components: accounting
>    Affects Versions: Trunk
>            Reporter: Kyra Pritzel-Hentley
>            Priority: Minor
>         Attachments: 
> OFBIZ-9454_accounting.thirdparty.clearcommerce_bugfixes.patch
>
>
> CCPaymentServices.java:78: 109: 144: 178: 235: 270, DM_BOOLEAN_CTOR
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccAuth(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccCredit(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccCapture(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccRelease(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccRefund(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.ccReAuth(DispatchContext,
>  Map) invokes inefficient Boolean constructor; use Boolean.valueOf(...) 
> instead
> Creating new instances of java.lang.Boolean wastes memory, since Boolean 
> objects are immutable and there are only two useful values of this type.  Use 
> the Boolean.valueOf() method (or Java 1.5 autoboxing) to create Boolean 
> objects instead.
> CCPaymentServices.java:772, SBSC_USE_STRINGBUFFER_CONCATENATION
> * SBSC: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.appendPaymentMechNode(Element,
>  GenericValue, String, String) concatenates strings using + in a loop
> The method seems to be building a String using concatenation in a loop. In 
> each iteration, the String is converted to a StringBuffer/StringBuilder, 
> appended to, and converted back to a String. This can lead to a cost 
> quadratic in the number of iterations, as the growing string is recopied in 
> each iteration.
> Better performance can be obtained by using a StringBuffer (or StringBuilder 
> in Java 1.5) explicitly.
> CCPaymentServices.java:902, DM_DEFAULT_ENCODING
> * Dm: Found reliance on default encoding in 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCPaymentServices.sendRequest(Document,
>  String, Delegator): java.io.ByteArrayOutputStream.toString()
> Found a call to a method which will perform a byte to String (or String to 
> byte) conversion, and will assume that the default platform encoding is 
> suitable. This will cause the application behavior to vary between platforms. 
> Use an alternative API and specify a charset name or Charset object 
> explicitly.
> CCServicesTest.java:101: 131: 162: 209, DM_BOOLEAN_CTOR, Priorität: Normal
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCServicesTest.testAuth()
>  invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCServicesTest.testCredit()
>  invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCServicesTest.testPurchaseSubscription()
>  invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead
> * Dm: 
> org.apache.ofbiz.accounting.thirdparty.clearcommerce.CCServicesTest.testCCReport()
>  invokes inefficient Boolean constructor; use Boolean.valueOf(...) instead
> Creating new instances of java.lang.Boolean wastes memory, since Boolean 
> objects are immutable and there are only two useful values of this type.  Use 
> the Boolean.valueOf() method (or Java 1.5 autoboxing) to create Boolean 
> objects instead.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to