All Downloads are FREE. Search and download functionalities are using the official Maven repository.

Ice.OnewayCallback Maven / Gradle / Ivy

Go to download

Ice is a comprehensive RPC framework that helps you build distributed applications with minimal effort using familiar object-oriented idioms

There is a newer version: 3.7.10
Show newest version
// **********************************************************************
//
// Copyright (c) 2003-2018 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************

package Ice;

/**
 * Base class for generated oneway operation callback.
 **/
public abstract class OnewayCallback extends IceInternal.CallbackBase
{
    /**
     * Called when the invocation response is received.
     **/
    public abstract void response();

    /**
     * Called when the invocation raises an Ice run-time exception.
     *
     * @param ex The Ice run-time exception raised by the operation.
     **/
    public abstract void exception(LocalException ex);

    /**
     * Called when the invocation raises an Ice system exception.
     *
     * @param ex The Ice system exception raised by the operation.
     **/
    public void exception(SystemException ex)
    {
        exception(new Ice.UnknownException(ex));
    }

    /**
     * Called when a queued invocation is sent successfully.
     *
     * @param sentSynchronously True if the request could be sent synchronously, false otherwise.
     **/
    public void sent(boolean sentSynchronously)
    {
    }

    @Override
    public final void __sent(AsyncResult __result)
    {
        sent(__result.sentSynchronously());
    }

    @Override
    public final boolean __hasSentCallback()
    {
        return true;
    }

    @Override
    public final void __completed(AsyncResult __result)
    {
        try
        {
            ((ObjectPrxHelperBase)__result.getProxy()).__end(__result, __result.getOperation());
        }
        catch(LocalException __ex)
        {
            exception(__ex);
            return;
        }
        catch(SystemException __ex)
        {
            exception(__ex);
            return;
        }
        response();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy