Code Duplication    Length = 27-27 lines in 3 locations

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

@@ 562-588 (lines=27) @@
559
     * @param SendResult $response Ticket_CreateTSTFromPricing result
560
     * @return Result
561
     */
562
    protected function analyzeTicketCreateTSTFromPricingResponse($response)
563
    {
564
        $analyzeResponse = new Result($response);
565
566
        $domDoc = $this->loadDomDocument($response->responseXml);
567
568
        $errorCodeNode = $domDoc->getElementsByTagName("applicationErrorCode")->item(0);
569
570
        if (!is_null($errorCodeNode)) {
571
            $analyzeResponse->status = Result::STATUS_ERROR;
572
573
            $errorCatNode = $domDoc->getElementsByTagName("codeListQualifier")->item(0);
574
            if ($errorCatNode instanceof \DOMNode) {
575
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
576
            }
577
578
            $errorCode = $errorCodeNode->nodeValue;
579
            $errorTextNodeList = $domDoc->getElementsByTagName("errorFreeText");
580
581
            $analyzeResponse->messages[] = new Result\NotOk(
582
                $errorCode,
583
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
584
            );
585
        }
586
587
        return $analyzeResponse;
588
    }
589
590
    /**
591
     * @param SendResult $response

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

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