// **********************************************************************
//
// Copyright (c) 2003-2013 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;
/**
* Callback object for {@link ObjectPrx#.begin_ice_invoke}.
**/
public abstract class Callback_Object_ice_invoke extends TwowayCallback
{
/**
* The Ice run time calls response
when an asynchronous operation invocation
* completes successfully or raises a user exception.
*
* @param __ret Indicates the result of the invocation. If true
, the operation
* completed succesfully; if false
, the operation raised a user exception.
* @param outParams Contains the encoded out-parameters of the operation (if any) if ok
* is true
; otherwise, if ok
is false
, contains the
* encoded user exception raised by the operation.
**/
public abstract void response(boolean __ret, byte[] outParams);
public final void __completed(AsyncResult __result)
{
ByteSeqHolder outParams = new ByteSeqHolder();
boolean __ret = false;
try
{
__ret = __result.getProxy().end_ice_invoke(outParams, __result);
}
catch(LocalException __ex)
{
exception(__ex);
return;
}
response(__ret, outParams.value);
}
}