Skip to content

Commit

Permalink
[weathercompany] Remove org.apache.common (openhab#14440)
Browse files Browse the repository at this point in the history
Signed-off-by: lsiepel <leosiepel@gmail.com>
  • Loading branch information
lsiepel authored and renescherer committed Mar 23, 2023
1 parent df8894d commit 3df1f3f
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;

import org.apache.commons.lang3.exception.ExceptionUtils;
import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;
import org.eclipse.jetty.client.HttpResponseException;
import org.openhab.binding.weathercompany.internal.config.WeatherCompanyBridgeConfig;
import org.openhab.binding.weathercompany.internal.util.ExceptionUtils;
import org.openhab.core.io.net.http.HttpUtil;
import org.openhab.core.thing.Bridge;
import org.openhab.core.thing.ChannelUID;
Expand Down Expand Up @@ -58,7 +58,7 @@ public void run() {
updateStatus(ThingStatus.ONLINE);
cancelValidateApiKeyJob();
} catch (IOException e) {
Throwable rootcause = ExceptionUtils.getRootCause(e);
Throwable rootcause = ExceptionUtils.getRootThrowable(e);
if (rootcause instanceof HttpResponseException
&& rootcause.getMessage().contains("Authentication challenge without")) {
logger.debug("Bridge: HttpResponseException: API key is not valid");
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
/**
* Copyright (c) 2010-2023 Contributors to the openHAB project
*
* See the NOTICE file(s) distributed with this work for additional
* information.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.openhab.binding.weathercompany.internal.util;

import java.util.ArrayList;
import java.util.List;

import org.eclipse.jdt.annotation.NonNullByDefault;
import org.eclipse.jdt.annotation.Nullable;

/**
* The {@link ExceptionUtils} class defines some static utility methods
*
* @author Leo Siepel - Initial contribution
*/
@NonNullByDefault
public class ExceptionUtils {

public static @Nullable Throwable getRootThrowable(@Nullable Throwable throwable) {
List<Throwable> list = new ArrayList<>();
while (throwable != null && !list.contains(throwable)) {
list.add(throwable);
throwable = throwable.getCause();
}
return throwable;
}
}

0 comments on commit 3df1f3f

Please sign in to comment.