package RTT.corba;
/**
* RTT/corba/_CChannelElementStub.java .
* Generated by the IDL-to-Java compiler (portable), version "3.2"
* from DataFlow.idl
* Wednesday, July 11, 2012 5:26:42 PM CEST
*/
/**
* Represents the basic channel element interface
* for reading, writing and disconnecting a channel.
* Use this interface in case you want to communicate
* with an Orocos component's port from a non-Orocos application.
*/
public class _CChannelElementStub extends org.omg.CORBA.portable.ObjectImpl implements RTT.corba.CChannelElement
{
/**
* 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/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 _CChannelElementStub