MulticastImportImpl.Mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Last modified by Swinehart, February 23, 1986 12:22:49 pm PST
DIRECTORY
Commander USING [ CommandProc, Register ],
CommandTool USING [ NextArgument ],
NamesGV USING [ GVGetAttribute ],
MulticastImp,
MulticastRpcControl USING [ ImportInterface ],
IO,
RPC USING [ ImportFailed, ShortROPE ],
VoiceUtils USING [ MakeRName, NetAddress, NetAddressFromRope, Problem, Report, ReportFR ]
;
MulticastImportImpl:
CEDAR
PROGRAM
IMPORTS Commander, CommandTool, IO, VoiceUtils, RPC, NamesGV, MulticastRpcControl
EXPORTS MulticastImp = {
OPEN IO;
Import Procedure
MulticastImport:
PUBLIC
PROC [instance:
ROPE]
RETURNS [success:
BOOL←
FALSE] = {
ENABLE RPC.ImportFailed => GOTO Failed;
hostHint: VoiceUtils.NetAddress;
IF instance=NIL THEN GOTO Failed; -- no defaulting.
instance ← VoiceUtils.MakeRName[instance, rName];
hostHint ← VoiceUtils.NetAddressFromRope[NamesGV.GVGetAttribute[instance,$connect,NIL]];
MulticastRpcControl.ImportInterface [
interfaceName: [
type: "Multicast.Lark",
instance: instance
],
hostHint: hostHint];
success ← TRUE;
EXITS
Failed => VoiceUtils.Problem["Couldn't import Multicast.Lark", $System];
};
}.