LegORB is reflective because it allows inspection of its internal structure, supports dynamic reconfiguration and allows developers to define the policies to safely perform the reconfiguration. The policies are encapsulated in specialized subclasses of the component configurator class, which is associated to every component. The design of LegORB is based on the requirements of clients and servers. That is, it is possible to choose a minimum configuration that includes client-side functionality only, server side functionality only or both.
Applications can customize LegORB by introducing new components with specialized behavior.
It is simply a matter of implementing a specific set of components. In the static version , developers can choose the components they want at compile time and then create a library or link the code to the final application. This configuration does not allow dynamic reconfiguration but offers the best size results. The static configuration is recommended for devices with really limited resources or when run-times changes in the ORB are not required. This extra functionality introduces overhead in terms of size.