| Conditions | 54 | 
| Paths | > 20000 | 
| Total Lines | 272 | 
| Code Lines | 111 | 
| Lines | 26 | 
| Ratio | 9.56 % | 
| Changes | 0 | ||
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php  | 
            ||
| 78 | public static function readTransaction($str_xml)  | 
            ||
| 79 |     { | 
            ||
| 80 | |||
| 81 | // Parser  | 
            ||
| 82 | $parser = new PagSeguroXmlParser($str_xml);  | 
            ||
| 83 | |||
| 84 | // <transaction>  | 
            ||
| 85 |         $data = $parser->getResult('transaction'); | 
            ||
| 86 | |||
| 87 | $transaction = new PagSeguroTransaction();  | 
            ||
| 88 | |||
| 89 | // <transaction> <lastEventDate>  | 
            ||
| 90 |         if (isset($data["lastEventDate"])) { | 
            ||
| 91 | $transaction->setLastEventDate($data["lastEventDate"]);  | 
            ||
| 92 | }  | 
            ||
| 93 | |||
| 94 | // <transaction> <date>  | 
            ||
| 95 |         if (isset($data["date"])) { | 
            ||
| 96 | $transaction->setDate($data["date"]);  | 
            ||
| 97 | }  | 
            ||
| 98 | |||
| 99 | // <transaction> <code>  | 
            ||
| 100 |         if (isset($data["code"])) { | 
            ||
| 101 | $transaction->setCode($data["code"]);  | 
            ||
| 102 | }  | 
            ||
| 103 | |||
| 104 | // <transaction> <reference>  | 
            ||
| 105 |         if (isset($data["reference"])) { | 
            ||
| 106 | $transaction->setReference($data["reference"]);  | 
            ||
| 107 | }  | 
            ||
| 108 | |||
| 109 | // <transaction> <recoveryCode>  | 
            ||
| 110 |         if (isset($data["recoveryCode"])) { | 
            ||
| 111 | $transaction->setRecoveryCode($data["recoveryCode"]);  | 
            ||
| 112 | }  | 
            ||
| 113 | |||
| 114 | // <transaction> <type>  | 
            ||
| 115 |         if (isset($data["type"])) { | 
            ||
| 116 | $transaction->setType(new PagSeguroTransactionType($data["type"]));  | 
            ||
| 117 | }  | 
            ||
| 118 | |||
| 119 | // <transaction> <status>  | 
            ||
| 120 |         if (isset($data["status"])) { | 
            ||
| 121 | $transaction->setStatus(new PagSeguroTransactionStatus($data["status"]));  | 
            ||
| 122 | }  | 
            ||
| 123 | |||
| 124 | // <transaction> <cancellationSource>  | 
            ||
| 125 |         if (isset($data["cancellationSource"])) { | 
            ||
| 126 | $transaction->setCancellationSource(  | 
            ||
| 127 | new PagSeguroTransactionCancellationSource($data["cancellationSource"])  | 
            ||
| 128 | );  | 
            ||
| 129 | }  | 
            ||
| 130 | |||
| 131 | View Code Duplication |         if (isset($data["paymentMethod"]) && is_array($data["paymentMethod"])) { | 
            |
| 132 | |||
| 133 | // <transaction> <paymentMethod>  | 
            ||
| 134 | $paymentMethod = new PagSeguroPaymentMethod();  | 
            ||
| 135 | |||
| 136 | // <transaction> <paymentMethod> <type>  | 
            ||
| 137 |             if (isset($data["paymentMethod"]['type'])) { | 
            ||
| 138 | $paymentMethod->setType(new PagSeguroPaymentMethodType($data["paymentMethod"]['type']));  | 
            ||
| 139 | }  | 
            ||
| 140 | |||
| 141 | // <transaction> <paymentMethod> <code>  | 
            ||
| 142 |             if (isset($data["paymentMethod"]['code'])) { | 
            ||
| 143 | $paymentMethod->setCode(new PagSeguroPaymentMethodCode($data["paymentMethod"]['code']));  | 
            ||
| 144 | }  | 
            ||
| 145 | |||
| 146 | $transaction->setPaymentMethod($paymentMethod);  | 
            ||
| 147 | }  | 
            ||
| 148 | |||
| 149 | // <transaction> <paymentLink>  | 
            ||
| 150 |         if (isset($data["paymentLink"])) { | 
            ||
| 151 | $transaction->setPaymentLink($data["paymentLink"]);  | 
            ||
| 152 | }  | 
            ||
| 153 | |||
| 154 | // <transaction> <grossAmount>  | 
            ||
| 155 |         if (isset($data["grossAmount"])) { | 
            ||
| 156 | $transaction->setGrossAmount($data["grossAmount"]);  | 
            ||
| 157 | }  | 
            ||
| 158 | |||
| 159 | // <transaction> <discountAmount>  | 
            ||
| 160 |         if (isset($data["discountAmount"])) { | 
            ||
| 161 | $transaction->setDiscountAmount($data["discountAmount"]);  | 
            ||
| 162 | }  | 
            ||
| 163 | |||
| 164 | // <transaction> <feeAmount>  | 
            ||
| 165 |         if (isset($data["feeAmount"])) { | 
            ||
| 166 | $transaction->setFeeAmount($data["feeAmount"]);  | 
            ||
| 167 | }  | 
            ||
| 168 | |||
| 169 | // <transaction> <netAmount>  | 
            ||
| 170 |         if (isset($data["netAmount"])) { | 
            ||
| 171 | $transaction->setNetAmount($data["netAmount"]);  | 
            ||
| 172 | }  | 
            ||
| 173 | |||
| 174 | //<transaction><escrowEndDate>  | 
            ||
| 175 |         if (isset($data["escrowEndDate"])) { | 
            ||
| 176 | $transaction->setEscrowEndDate($data["escrowEndDate"]);  | 
            ||
| 177 | }  | 
            ||
| 178 | |||
| 179 | // <transaction> <extraAmount>  | 
            ||
| 180 |         if (isset($data["extraAmount"])) { | 
            ||
| 181 | $transaction->setExtraAmount($data["extraAmount"]);  | 
            ||
| 182 | }  | 
            ||
| 183 | |||
| 184 | // <transaction> <installmentCount>  | 
            ||
| 185 |         if (isset($data["installmentCount"])) { | 
            ||
| 186 | $transaction->setInstallmentCount($data["installmentCount"]);  | 
            ||
| 187 | }  | 
            ||
| 188 | |||
| 189 | // <transaction> <creditorFees>  | 
            ||
| 190 |         if (isset($data["creditorFees"])) { | 
            ||
| 191 | $transaction->setCreditorFees(new PagSeguroTransactionCreditorFees($data["creditorFees"]));  | 
            ||
| 192 | }  | 
            ||
| 193 | |||
| 194 | //<transaction><operationalFeeAmount>  | 
            ||
| 195 |         if (isset($data["operationalFeeAmount"])) { | 
            ||
| 196 | $transaction->setOperationalFeeAmount($data["operationalFeeAmount"]);  | 
            ||
| 197 | }  | 
            ||
| 198 | |||
| 199 | //<transaction><installmentFeeAmount>  | 
            ||
| 200 |         if (isset($data["installmentFeeAmount"])) { | 
            ||
| 201 | $transaction->setInstallmentFeeAmount($data["installmentFeeAmount"]);  | 
            ||
| 202 | }  | 
            ||
| 203 | |||
| 204 | //<transaction><intermediationRateAmount>  | 
            ||
| 205 |         if (isset($data["intermediationRateAmount"])) { | 
            ||
| 206 | $transaction->setIntermediationRateAmount($data["intermediationRateAmount"]);  | 
            ||
| 207 | }  | 
            ||
| 208 | |||
| 209 | //<transaction><intermediationFeeAmount>  | 
            ||
| 210 |         if (isset($data["intermediationFeeAmount"])) { | 
            ||
| 211 | $transaction->setIntermediationFeeAmount($data["intermediationFeeAmount"]);  | 
            ||
| 212 | }  | 
            ||
| 213 | |||
| 214 | //<transaction><items>  | 
            ||
| 215 |         if (isset($data["items"]['item']) && is_array($data["items"]['item'])) { | 
            ||
| 216 | |||
| 217 | $items = array();  | 
            ||
| 218 | $i = 0;  | 
            ||
| 219 | |||
| 220 | View Code Duplication |             if (isset($data["items"]['item'][0])) { | 
            |
| 221 |                 foreach ($data["items"]['item'] as $key => $value) { | 
            ||
| 222 | $item = self::parseTransactionItem($value);  | 
            ||
| 223 | $items[$i] = $item;  | 
            ||
| 224 | $i++;  | 
            ||
| 225 | }  | 
            ||
| 226 |             } else { | 
            ||
| 227 | $items[0] = self::parseTransactionItem($data["items"]['item']);  | 
            ||
| 228 | }  | 
            ||
| 229 | |||
| 230 | // <transaction> <items>  | 
            ||
| 231 | $transaction->setItems($items);  | 
            ||
| 232 | }  | 
            ||
| 233 | |||
| 234 |         if (isset($data["sender"])) { | 
            ||
| 235 | |||
| 236 | // <transaction> <sender>  | 
            ||
| 237 | $sender = new PagSeguroSender();  | 
            ||
| 238 | |||
| 239 | // <transaction> <sender> <name>  | 
            ||
| 240 |             if (isset($data["sender"]["name"])) { | 
            ||
| 241 | $sender->setName($data["sender"]["name"]);  | 
            ||
| 242 | }  | 
            ||
| 243 | |||
| 244 | // <transaction> <sender> <email>  | 
            ||
| 245 |             if (isset($data["sender"]["email"])) { | 
            ||
| 246 | $sender->setEmail($data["sender"]["email"]);  | 
            ||
| 247 | }  | 
            ||
| 248 | |||
| 249 |             if (isset($data["sender"]["phone"])) { | 
            ||
| 250 | |||
| 251 | // <transaction> <sender> <phone>  | 
            ||
| 252 | $phone = new PagSeguroPhone();  | 
            ||
| 253 | |||
| 254 | // <transaction> <sender> <phone> <areaCode>  | 
            ||
| 255 |                 if (isset($data["sender"]["phone"]["areaCode"])) { | 
            ||
| 256 | $phone->setAreaCode($data["sender"]["phone"]["areaCode"]);  | 
            ||
| 257 | }  | 
            ||
| 258 | |||
| 259 | // <transaction> <sender> <phone> <number>  | 
            ||
| 260 |                 if (isset($data["sender"]["phone"]["number"])) { | 
            ||
| 261 | $phone->setNumber($data["sender"]["phone"]["number"]);  | 
            ||
| 262 | }  | 
            ||
| 263 | |||
| 264 | $sender->setPhone($phone);  | 
            ||
| 265 | }  | 
            ||
| 266 | |||
| 267 | // <transaction><sender><documents>  | 
            ||
| 268 |             if (isset($data["sender"]['documents']) && is_array($data["sender"]['documents'])) { | 
            ||
| 269 | |||
| 270 | $documents = $data["sender"]['documents'];  | 
            ||
| 271 |                 if (count($documents) > 0) { | 
            ||
| 272 |                     foreach ($documents as $document) { | 
            ||
| 273 | $sender->addDocument($document['type'], $document['value']);  | 
            ||
| 274 | }  | 
            ||
| 275 | }  | 
            ||
| 276 | }  | 
            ||
| 277 | |||
| 278 | $transaction->setSender($sender);  | 
            ||
| 279 | }  | 
            ||
| 280 | |||
| 281 |         if (isset($data["shipping"]) && is_array($data["shipping"])) { | 
            ||
| 282 | |||
| 283 | // <transaction> <shipping>  | 
            ||
| 284 | $shipping = new PagSeguroShipping();  | 
            ||
| 285 | |||
| 286 | // <transaction> <shipping> <type>  | 
            ||
| 287 |             if (isset($data["shipping"]["type"])) { | 
            ||
| 288 | $shipping->setType(new PagSeguroShippingType($data["shipping"]["type"]));  | 
            ||
| 289 | }  | 
            ||
| 290 | |||
| 291 | // <transaction> <shipping> <cost>  | 
            ||
| 292 |             if (isset($data["shipping"]["cost"])) { | 
            ||
| 293 | $shipping->setCost($data["shipping"]["cost"]);  | 
            ||
| 294 | }  | 
            ||
| 295 | |||
| 296 |             if (isset($data["shipping"]["address"]) && is_array($data["shipping"]["address"])) { | 
            ||
| 297 | |||
| 298 | // <transaction> <shipping> <address>  | 
            ||
| 299 | $address = new PagSeguroAddress();  | 
            ||
| 300 | |||
| 301 | // <transaction> <shipping> <address> <street>  | 
            ||
| 302 |                 if (isset($data["shipping"]["address"]["street"])) { | 
            ||
| 303 | $address->setStreet($data["shipping"]["address"]["street"]);  | 
            ||
| 304 | }  | 
            ||
| 305 | |||
| 306 | // <transaction> <shipping> <address> <number>  | 
            ||
| 307 |                 if (isset($data["shipping"]["address"]["number"])) { | 
            ||
| 308 | $address->setNumber($data["shipping"]["address"]["number"]);  | 
            ||
| 309 | }  | 
            ||
| 310 | |||
| 311 | // <transaction> <shipping> <address> <complement>  | 
            ||
| 312 |                 if (isset($data["shipping"]["address"]["complement"])) { | 
            ||
| 313 | $address->setComplement($data["shipping"]["address"]["complement"]);  | 
            ||
| 314 | }  | 
            ||
| 315 | |||
| 316 | // <transaction> <shipping> <address> <city>  | 
            ||
| 317 |                 if (isset($data["shipping"]["address"]["city"])) { | 
            ||
| 318 | $address->setCity($data["shipping"]["address"]["city"]);  | 
            ||
| 319 | }  | 
            ||
| 320 | |||
| 321 | // <transaction> <shipping> <address> <state>  | 
            ||
| 322 |                 if (isset($data["shipping"]["address"]["state"])) { | 
            ||
| 323 | $address->setState($data["shipping"]["address"]["state"]);  | 
            ||
| 324 | }  | 
            ||
| 325 | |||
| 326 | // <transaction> <shipping> <address> <district>  | 
            ||
| 327 |                 if (isset($data["shipping"]["address"]["district"])) { | 
            ||
| 328 | $address->setDistrict($data["shipping"]["address"]["district"]);  | 
            ||
| 329 | }  | 
            ||
| 330 | |||
| 331 | // <transaction> <shipping> <address> <postalCode>  | 
            ||
| 332 |                 if (isset($data["shipping"]["address"]["postalCode"])) { | 
            ||
| 333 | $address->setPostalCode($data["shipping"]["address"]["postalCode"]);  | 
            ||
| 334 | }  | 
            ||
| 335 | |||
| 336 | // <transaction> <shipping> <address> <country>  | 
            ||
| 337 |                 if (isset($data["shipping"]["address"]["country"])) { | 
            ||
| 338 | $address->setCountry($data["shipping"]["address"]["country"]);  | 
            ||
| 339 | }  | 
            ||
| 340 | |||
| 341 | $shipping->setAddress($address);  | 
            ||
| 342 | }  | 
            ||
| 343 | |||
| 344 | // <transaction> <shipping>  | 
            ||
| 345 | $transaction->setShipping($shipping);  | 
            ||
| 346 | }  | 
            ||
| 347 | |||
| 348 | return $transaction;  | 
            ||
| 349 | }  | 
            ||
| 350 | |||
| 457 |