/* * Copyright (c) 2012, Codename One and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Codename One designates this * particular file as subject to the "Classpath" exception as provided * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Codename One through http://www.codenameone.com/ if you * need additional information or have any questions. */ package com.codename1.util; /** * <p>Simple interface that allows asynchronous code to perform a parameterized callback * in a similar way to GWT's callback interface. This is the base interface for {@link com.codename1.util.Callback} *where the logic is broken down to single method interfaces so Java 8 lambdas can be used.</p> * * @author Shai Almog */ public interface FailureCallback<T> { /** * Invoked when the async method throws an exception * @param sender the source of the error e.g. connection request that triggered the error, could be null * @param err in case of an error triggered by an exception * @param errorCode if applicable e.g. with http error codes, -1 for unknown * @param errorMessage if applicable a user displayable message (can be null) */ public void onError(Object sender, Throwable err, int errorCode, String errorMessage); }