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

@@ 641-667 (lines=27) @@
638
     * @param SendResult $response Ticket_CreateTSTFromPricing result
639
     * @return Result
640
     */
641
    protected function analyzeTicketCreateTSTFromPricingResponse($response)
642
    {
643
        $analyzeResponse = new Result($response);
644
645
        $domDoc = $this->loadDomDocument($response->responseXml);
646
647
        $errorCodeNode = $domDoc->getElementsByTagName("applicationErrorCode")->item(0);
648
649
        if (!is_null($errorCodeNode)) {
650
            $analyzeResponse->status = Result::STATUS_ERROR;
651
652
            $errorCatNode = $domDoc->getElementsByTagName("codeListQualifier")->item(0);
653
            if ($errorCatNode instanceof \DOMNode) {
654
                $analyzeResponse->status = $this->makeStatusFromErrorQualifier($errorCatNode->nodeValue);
655
            }
656
657
            $errorCode = $errorCodeNode->nodeValue;
658
            $errorTextNodeList = $domDoc->getElementsByTagName("errorFreeText");
659
660
            $analyzeResponse->messages[] = new Result\NotOk(
661
                $errorCode,
662
                $this->makeMessageFromMessagesNodeList($errorTextNodeList)
663
            );
664
        }
665
666
        return $analyzeResponse;
667
    }
668
669
    /**
670
     * @param SendResult $response Ticket_CreateTSMFromPricing result