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

@@ 590-616 (lines=27) @@
587
     * @param SendResult $response Ticket_CreateTSTFromPricing result
588
     * @return Result
589
     */
590
    protected function analyzeTicketCreateTSTFromPricingResponse($response)
591
    {
592
        $analyzeResponse = new Result($response);
593
594
        $domDoc = $this->loadDomDocument($response->responseXml);
595
596
        $errorCodeNode = $domDoc->getElementsByTagName("applicationErrorCode")->item(0);
597
598
        if (!is_null($errorCodeNode)) {
599
            $analyzeResponse->status = Result::STATUS_ERROR;
600
601
            $errorCatNode = $domDoc->getElementsByTagName("codeListQualifier")->item(0);
602
            if ($errorCatNode instanceof \DOMNode) {
603
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
604
            }
605
606
            $errorCode = $errorCodeNode->nodeValue;
607
            $errorTextNodeList = $domDoc->getElementsByTagName("errorFreeText");
608
609
            $analyzeResponse->messages[] = new Result\NotOk(
610
                $errorCode,
611
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
612
            );
613
        }
614
615
        return $analyzeResponse;
616
    }
617
618
    /**
619
     * @param SendResult $response Ticket_CreateTSMFromPricing result