<<<<<<<<<<<<<<<<<

proxy(prog_tools) Programming Tools proxy(prog_tools)

NAME

proxy - a local proxy for a remote object

DESCRIPTION

The proxy object acts as a "proxy" or "local substitute" for a remote object. The proxy object communicates to the remote object via an instance of lymb_process supplied by the user. By default, the name of the remote object is assumed to be the name of the proxy instance, but this default can be overridden with the remote_object_name instance variable.

The proxy object provides a simpler interface to the remote object than by going through the lymb_process object directly. For example, if x and y are remote scalar objects on some lymb_process named proc1, then the statement

proc1 redirect# `x' = [proc1 redirect# `y' value?];

could be rewritten using proxy objects as, for example:

remote_x = [remote_y value?];

or, simply:

remote_x = remote_y;

SUPERCLASS

object

INSTANCE VARIABLES

lymb_process_name The name of the lymb_process object upon which resides the remote object of interest.

remote_object_name The name of the remote object of interest. If not set, it is assumed that the name of the remote object is the same as the name of the proxy instance. If this variable is to be set, it must be set before setting lymb_process_name. This is because once lymb_process_name is set, all subsequent messages go to the remote object.

MESSAGES

lymb_process_name[=?] Standard string set/get methods

remote_object_name[=?] Standard string set/get methods

mtime? Check remote object modified time. If modified since it was last checked, update local proxy mtime. Return the proxy mtime.

modified! Forward to remote object and update local mtime.

EXAMPLE

lymb_process new:proc1 hostname="cheetah" create!; proc1 redirect# "scalar" new:remote1 new:remote2 = 1.0;

proxy new:local1 remote_object_name="remote1" lymb_process_name=proc1; proxy new:local2 remote_object_name="remote2" lymb_process_name=proc1;

local1 = local2 print!;

SEE ALSO

lymb_process


Please send comments and suggestions to
consult@rpi.edu