/*
 * Copyright (C) 2017 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.net.lowpan;

import android.os.ServiceSpecificException;
import android.util.AndroidException;

LowpanException is thrown if an action to a LoWPAN interface could not be performed or a LoWPAN interface property could not be fetched or changed.
See Also:
  • LowpanInterface
@hide
/** * <code>LowpanException</code> is thrown if an action to a LoWPAN interface could not be performed * or a LoWPAN interface property could not be fetched or changed. * * @see LowpanInterface * @hide */
// @SystemApi public class LowpanException extends AndroidException { public LowpanException() {} public LowpanException(String message) { super(message); } public LowpanException(String message, Throwable cause) { super(message, cause); } public LowpanException(Exception cause) { super(cause); } /* This method returns LowpanException so that the caller * can add "throw" before the invocation of this method. * This might seem superfluous, but it is actually to * help provide a hint to the java compiler that this * function will not return. */ static LowpanException rethrowFromServiceSpecificException(ServiceSpecificException e) throws LowpanException { switch (e.errorCode) { case ILowpanInterface.ERROR_DISABLED: throw new InterfaceDisabledException(e); case ILowpanInterface.ERROR_WRONG_STATE: throw new WrongStateException(e); case ILowpanInterface.ERROR_CANCELED: throw new OperationCanceledException(e); case ILowpanInterface.ERROR_JOIN_FAILED_UNKNOWN: throw new JoinFailedException(e); case ILowpanInterface.ERROR_JOIN_FAILED_AT_SCAN: throw new JoinFailedAtScanException(e); case ILowpanInterface.ERROR_JOIN_FAILED_AT_AUTH: throw new JoinFailedAtAuthException(e); case ILowpanInterface.ERROR_FORM_FAILED_AT_SCAN: throw new NetworkAlreadyExistsException(e); case ILowpanInterface.ERROR_FEATURE_NOT_SUPPORTED: throw new LowpanException( e.getMessage() != null ? e.getMessage() : "Feature not supported", e); case ILowpanInterface.ERROR_NCP_PROBLEM: throw new LowpanRuntimeException( e.getMessage() != null ? e.getMessage() : "NCP problem", e); case ILowpanInterface.ERROR_INVALID_ARGUMENT: throw new LowpanRuntimeException( e.getMessage() != null ? e.getMessage() : "Invalid argument", e); case ILowpanInterface.ERROR_UNSPECIFIED: default: throw new LowpanRuntimeException(e); } } }