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

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