package RTT.corba; /** * RTT/corba/_CRemoteChannelElementStub.java . * Generated by the IDL-to-Java compiler (portable), version "3.2" * from DataFlow.idl * Wednesday, July 11, 2012 5:26:42 PM CEST */ /** * The advanced channel element interface, used by Orocos * to relay over-CORBA data flow connections. */ public class _CRemoteChannelElementStub extends org.omg.CORBA.portable.ObjectImpl implements RTT.corba.CRemoteChannelElement { /** * Used to inform this channel element which the other * side is such that they can relay a signal or disconnect. */ public void setRemoteSide (RTT.corba.CRemoteChannelElement other) { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("setRemoteSide", true); RTT.corba.CRemoteChannelElementHelper.write ($out, other); $in = _invoke ($out); return; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { setRemoteSide (other ); } finally { _releaseReply ($in); } } // setRemoteSide /** * Used by the 'remote' side to inform this channel element that new data * is available for reading. * @return false if this channel became invalidated. */ public boolean remoteSignal () { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("remoteSignal", true); $in = _invoke ($out); boolean $result = $in.read_boolean (); return $result; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { return remoteSignal ( ); } finally { _releaseReply ($in); } } // remoteSignal /** * Used by the 'remote' side to inform this channel element * that the connection is been cleaned up. * @param writer_to_reader Since channel elements are chained, * we need to know who initiated the disconnect: starting from * the output port (writer_to_reader == true) or from the * input port (writer_to_reader == false) */ public void remoteDisconnect (boolean writer_to_reader) { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("remoteDisconnect", true); $out.write_boolean (writer_to_reader); $in = _invoke ($out); return; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { remoteDisconnect (writer_to_reader ); } finally { _releaseReply ($in); } } // remoteDisconnect /** * Reads from this Channel Element. */ public RTT.corba.CFlowStatus read (org.omg.CORBA.AnyHolder sample, boolean copy_old_data) { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("read", true); $out.write_boolean (copy_old_data); $in = _invoke ($out); RTT.corba.CFlowStatus $result = RTT.corba.CFlowStatusHelper.read ($in); sample.value = $in.read_any (); return $result; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { return read (sample, copy_old_data ); } finally { _releaseReply ($in); } } // read /** * Writes into this Channel Element. * @return false if the channel became invalid */ public boolean write (org.omg.CORBA.Any sample) { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("write", true); $out.write_any (sample); $in = _invoke ($out); boolean $result = $in.read_boolean (); return $result; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { return write (sample ); } finally { _releaseReply ($in); } } // write /** * Disconnect and dispose this object. * You may no longer use this object after calling this method. */ public void disconnect () { org.omg.CORBA.portable.InputStream $in = null; try { org.omg.CORBA.portable.OutputStream $out = _request ("disconnect", true); $in = _invoke ($out); return; } catch (org.omg.CORBA.portable.ApplicationException $ex) { $in = $ex.getInputStream (); String _id = $ex.getId (); throw new org.omg.CORBA.MARSHAL (_id); } catch (org.omg.CORBA.portable.RemarshalException $rm) { disconnect ( ); } finally { _releaseReply ($in); } } // disconnect // Type-specific CORBA::Object operations private static String[] __ids = { "IDL:RTT/corba/CRemoteChannelElement:1.0", "IDL:RTT/corba/CChannelElement:1.0"}; public String[] _ids () { return (String[])__ids.clone (); } private void readObject (java.io.ObjectInputStream s) throws java.io.IOException { String str = s.readUTF (); String[] args = null; java.util.Properties props = null; org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init (args, props); try { org.omg.CORBA.Object obj = orb.string_to_object (str); org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl) obj)._get_delegate (); _set_delegate (delegate); } finally { orb.destroy() ; } } private void writeObject (java.io.ObjectOutputStream s) throws java.io.IOException { String[] args = null; java.util.Properties props = null; org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init (args, props); try { String str = orb.object_to_string (this); s.writeUTF (str); } finally { orb.destroy() ; } } } // class _CRemoteChannelElementStub