package test.interop.miop_tao_interop;

import org.omg.PortableServer.POA;

/**
 * Generated from IDL interface "UIPMC_Object".
 *
 * @author JacORB IDL compiler V @project.version@
 * @version generated at 25-Feb-2014 13:44:20
 */

public class UIPMC_ObjectPOATie
	extends UIPMC_ObjectPOA
{
	private UIPMC_ObjectOperations _delegate;

	private POA _poa;
	public UIPMC_ObjectPOATie(UIPMC_ObjectOperations delegate)
	{
		_delegate = delegate;
	}
	public UIPMC_ObjectPOATie(UIPMC_ObjectOperations delegate, POA poa)
	{
		_delegate = delegate;
		_poa = poa;
	}
	public test.interop.miop_tao_interop.UIPMC_Object _this()
	{
		org.omg.CORBA.Object __o = _this_object() ;
		test.interop.miop_tao_interop.UIPMC_Object __r = test.interop.miop_tao_interop.UIPMC_ObjectHelper.narrow(__o);
		return __r;
	}
	public test.interop.miop_tao_interop.UIPMC_Object _this(org.omg.CORBA.ORB orb)
	{
		org.omg.CORBA.Object __o = _this_object(orb) ;
		test.interop.miop_tao_interop.UIPMC_Object __r = test.interop.miop_tao_interop.UIPMC_ObjectHelper.narrow(__o);
		return __r;
	}
	public UIPMC_ObjectOperations _delegate()
	{
		return _delegate;
	}
	public void _delegate(UIPMC_ObjectOperations delegate)
	{
		_delegate = delegate;
	}
	public POA _default_POA()
	{
		if (_poa != null)
		{
			return _poa;
		}
		return super._default_POA();
	}
	public void process(byte[] payload)
	{
_delegate.process(payload);
	}

}
