In this paper, an ARC framework for C# over .NET is presented. In addition to the above services, support for object level mobility and retraction services is provided. The framework is modeled using object oriented analysis and design techniques, and also uses object oriented implementations. Object orientation at implementation level provides interesting solutions such as automatic-proxy switching for object mobility, implementation of multiple interfaces for services and factories for object creation.
Mobile objects introduced in the C# ARC framework are first class objects that can move from machine to machine, performing assigned task. While object move and perform tasks on remote machines, they remain addressible for the originator through connection, and also to the current context where the object moves. A migrated object may decide to hop to another machine or the originator application may retract the object, or the object may be pushed onto another machine in its next hop by the originator or by its current context.