Module: remote-access-path Synopsis: Distributed Rnub Author: Nosa Omo Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND define class (Rtmgr/) slot AccessPath-reference :: Rtmgr/; end class; define method initialize (path :: , #key) next-method(); let orb = CORBA/orb-init(make(corba/), "Functional Developer ORB"); let root-poa = CORBA/Orb/resolve-initial-references(orb, "RootPOA"); let poa = PortableServer/POA/create-poa(root-poa, "Access Path CallBack POA", #f, lifespan-policy: #"transient"); let reference = PortableServer/POA/servant-to-reference(poa, path); path.AccessPath-reference := as(Rtmgr/, reference); let poa-manager = PortableServer/POA/the-poamanager(poa); PortableServer/POAManager/activate(poa-manager); path end method; define variable *access-path-server* = #f; define method access-path-server() => (server :: ) *access-path-server* | (*access-path-server* := make()); end method; define method Rtmgr/AccessPath/create-thread-stop-reason-handler (path :: , process :: Rtmgr/AccessPath/, thread :: Rtmgr/AccessPath/, priority :: Rtmgr/AccessPath/) => () create-thread-stop-reason-handler (as-remote-pointer(process), as-remote-pointer(thread), priority); end method; define method Rtmgr/AccessPath/debugger-message (path :: , message :: CORBA/, arg1 :: Rtmgr/AccessPath/, arg2 :: Rtmgr/AccessPath/) => () debugger-message(message, as-remote-value(arg1), as-remote-value(arg2)) end method; define method Rtmgr/AccessPath/nub-debug-message (path :: , message :: CORBA/, arg1 :: Rtmgr/AccessPath/, arg2 :: Rtmgr/AccessPath/) => () nub-debug-message(message, as-remote-value(arg1), as-remote-value(arg2)) end method; define method Rtmgr/AccessPath/debugger-error (path :: , message :: CORBA/, arg1 :: Rtmgr/AccessPath/, arg2 :: Rtmgr/AccessPath/) => () debugger-error(message, as-remote-value(arg1), as-remote-value(arg2)) end method;