public abstract class EclipseConnectionImpl extends java.lang.Object implements EclipseConnection
EmbeddedEclipse
,
RemoteEclipse
Constructor and Description |
---|
EclipseConnectionImpl() |
Modifier and Type | Method and Description |
---|---|
void |
compile(java.io.File f)
Direct ECLiPSe to compile a named object file.
|
AsyncEclipseQueue |
getAsyncEclipseQueue(java.lang.String name)
Create or access an asynchronous queue to transfer data between Java
and ECLiPSe.
|
FromEclipseQueue |
getFromEclipseQueue(java.lang.String name)
Create or access a queue to transfer data from ECLiPSe to Java.
|
java.lang.String |
getPath(java.io.File f)
Convert a file path from the Java representation to the ECLiPSe
representation.
|
Atom |
getPeerName()
Return the name by which the peer representing the Java side of the
connection is indexed in ECLiPSe.
|
ToEclipseQueue |
getToEclipseQueue(java.lang.String name)
Create or access a queue to transfer data from Java to ECLiPSe.
|
EclipseMultitaskConnection |
registerMultitask(MultitaskListener multitaskListener)
Register this peer as desiring participation in any multitasking
phases that ECLiPSe enters.
|
CompoundTerm |
rpc(CompoundTerm goal)
Make an "RPC" (remote predicate call) to the ECLiPSe engine.
|
CompoundTerm |
rpc(java.lang.Object[] goalTerm)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String goal)
Make an "RPC" (remote predicate call) to the ECLiPSe engine.
|
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object arg1)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object[] args)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object arg1,
java.lang.Object arg2)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4)
Convenience
rpc method. |
CompoundTerm |
rpc(java.lang.String functor,
java.lang.Object arg1,
java.lang.Object arg2,
java.lang.Object arg3,
java.lang.Object arg4,
java.lang.Object arg5)
Convenience
rpc method. |
public Atom getPeerName()
EclipseConnection
getPeerName
in interface EclipseConnection
public void compile(java.io.File f) throws EclipseException, java.io.IOException
EclipseConnection
compile
in interface EclipseConnection
f
- file the path of the ECLiPSe object file which is to be compiled.EclipseException
- if ECLiPSe failed or threw an exception whilst trying
to compile the file.java.io.IOException
- if there was an I/O problem while communicating with
ECLiPSe.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public java.lang.String getPath(java.io.File f) throws EclipseException, java.io.IOException
EclipseConnection
getPath
in interface EclipseConnection
f
- the file path to be converted.EclipseException
- if ECLiPSe failed or threw an exception whilst trying
to convert the file path.java.io.IOException
- if there was an I/O problem while communicating with
ECLiPSe.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public CompoundTerm rpc(java.lang.String goal) throws EclipseException, java.io.IOException
EclipseConnection
rpc
in interface EclipseConnection
goal
- the goal as it would be typed in on the ECLiPSe command line,
(the full stop is unnecessary).EclipseException
- if execution of the goal fails or throws an
ECLiPSe exception.java.io.IOException
- if there was an I/O problem communicating with the
ECLiPSe engine.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public CompoundTerm rpc(java.lang.String functor, java.lang.Object arg1) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
1 argument.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.String functor, java.lang.Object arg1, java.lang.Object arg2) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
2 arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.String functor, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
3 arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.String functor, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
4 arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.String functor, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
5 arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.String functor, java.lang.Object[] args) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies the functor string and
an array of arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(java.lang.Object[] goalTerm) throws EclipseException, java.io.IOException
EclipseConnection
rpc
method. The user supplies an array. Element 0
is the functor of the goal term and the remaining elements are the arguments.rpc
in interface EclipseConnection
EclipseTerminatedException
- if this EclipseConnection has
been terminated.EclipseException
java.io.IOException
EclipseConnection.rpc(CompoundTerm)
public CompoundTerm rpc(CompoundTerm goal) throws EclipseException, java.io.IOException
EclipseConnection
rpc
in interface EclipseConnection
goal
- the goal represented as a CompoundTerm.EclipseException
- if execution of the goal fails or throws an
ECLiPSe exception.java.io.IOException
- if there was an I/O problem communicating with the
ECLiPSe engine.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public FromEclipseQueue getFromEclipseQueue(java.lang.String name) throws EclipseException, java.io.IOException
EclipseConnection
getFromEclipseQueue
in interface EclipseConnection
name
- the name to be used for the stream representing the queue on
the ECLiPSe side.EclipseException
- if the name for the ECLiPSe stream is already in use,
or ECLiPSe could not create its side of the queue for some reason.java.io.IOException
- if there was an I/O problem while accessing ECLiPSe.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public ToEclipseQueue getToEclipseQueue(java.lang.String name) throws EclipseException, java.io.IOException
EclipseConnection
getToEclipseQueue
in interface EclipseConnection
name
- the name to be used for the stream representing the queue on
the ECLiPSe side.EclipseException
- if the name for the ECLiPSe stream is already in use,
or ECLiPSe could not create its side of the queue for some reason.java.io.IOException
- if there was an I/O problem while accessing ECLiPSe.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public AsyncEclipseQueue getAsyncEclipseQueue(java.lang.String name) throws EclipseException, java.io.IOException
EclipseConnection
getAsyncEclipseQueue
in interface EclipseConnection
name
- the name to be used for the stream representing the queue on
the ECLiPSe side.EclipseException
- if the name for the ECLiPSe stream is already in use,
or ECLiPSe could not create its side of the queue for some reason.java.io.IOException
- if there was an I/O problem while accessing ECLiPSe.EclipseTerminatedException
- if this EclipseConnection has
been terminated.public EclipseMultitaskConnection registerMultitask(MultitaskListener multitaskListener) throws EclipseException, java.io.IOException
EclipseConnection
registerMultitask
in interface EclipseConnection
multitaskListener
- A listener whose methods are called when
ECLiPSe enters/leaves multitasking phases.EclipseException
- if registration fails or throws an
ECLiPSe exception.java.io.IOException
- if there was an I/O problem communicating with the
ECLiPSe engine.EclipseTerminatedException
- if this EclipseConnection has
been terminated.