Code Duplication    Length = 27-27 lines in 3 locations

src/Amadeus/Client/ResponseHandler/BaseUtils.php 2 locations

@@ 127-153 (lines=27) @@
124
     * @return Result
125
     * @throws Exception
126
     */
127
    protected function analyzeSimpleResponseErrorCodeAndMessage($response)
128
    {
129
        $analyzeResponse = new Result($response);
130
131
        $domDoc = $this->loadDomDocument($response->responseXml);
132
133
        $errorCodeNode = $domDoc->getElementsByTagName("errorCode")->item(0);
134
135
        if (!is_null($errorCodeNode)) {
136
            $errorCatNode = $domDoc->getElementsByTagName("errorCategory")->item(0);
137
            if ($errorCatNode instanceof \DOMNode) {
138
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
139
            } else {
140
                $analyzeResponse->status = Result::STATUS_ERROR;
141
            }
142
143
            $errorCode = $errorCodeNode->nodeValue;
144
            $errorTextNodeList = $domDoc->getElementsByTagName("freeText");
145
146
            $analyzeResponse->messages[] = new Result\NotOk(
147
                $errorCode,
148
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
149
            );
150
        }
151
152
        return $analyzeResponse;
153
    }
154
155
    /**
156
     * @param SendResult $response WebService message Send Result
@@ 160-186 (lines=27) @@
157
     * @return Result
158
     * @throws Exception
159
     */
160
    protected function analyzeSimpleResponseErrorCodeAndMessageStatusCode($response)
161
    {
162
        $analyzeResponse = new Result($response);
163
164
        $domDoc = $this->loadDomDocument($response->responseXml);
165
166
        $errorCodeNode = $domDoc->getElementsByTagName("errorCode")->item(0);
167
168
        if (!is_null($errorCodeNode)) {
169
            $analyzeResponse->status = Result::STATUS_ERROR;
170
171
            $errorCatNode = $domDoc->getElementsByTagName("statusCode")->item(0);
172
            if ($errorCatNode instanceof \DOMNode) {
173
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
174
            }
175
176
            $errorCode = $errorCodeNode->nodeValue;
177
            $errorTextNodeList = $domDoc->getElementsByTagName("freeText");
178
179
            $analyzeResponse->messages[] = new Result\NotOk(
180
                $errorCode,
181
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
182
            );
183
        }
184
185
        return $analyzeResponse;
186
    }
187
188
    /**
189
     * @param SendResult $response

src/Amadeus/Client/ResponseHandler/Base.php 1 location

@@ 577-603 (lines=27) @@
574
     * @param SendResult $response Ticket_CreateTSTFromPricing result
575
     * @return Result
576
     */
577
    protected function analyzeTicketCreateTSTFromPricingResponse($response)
578
    {
579
        $analyzeResponse = new Result($response);
580
581
        $domDoc = $this->loadDomDocument($response->responseXml);
582
583
        $errorCodeNode = $domDoc->getElementsByTagName("applicationErrorCode")->item(0);
584
585
        if (!is_null($errorCodeNode)) {
586
            $analyzeResponse->status = Result::STATUS_ERROR;
587
588
            $errorCatNode = $domDoc->getElementsByTagName("codeListQualifier")->item(0);
589
            if ($errorCatNode instanceof \DOMNode) {
590
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
591
            }
592
593
            $errorCode = $errorCodeNode->nodeValue;
594
            $errorTextNodeList = $domDoc->getElementsByTagName("errorFreeText");
595
596
            $analyzeResponse->messages[] = new Result\NotOk(
597
                $errorCode,
598
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
599
            );
600
        }
601
602
        return $analyzeResponse;
603
    }
604
605
    /**
606
     * @param SendResult $response Ticket_CreateTSMFromPricing result