Robot: A Hybrid Plugin-Executable Framework for Centralized Script Management and Access Control In Eclipse
Abstract
Purpose
To develop "ROBot" (Radiation Oncology Bot), a unified plugin-based gateway for the Eclipse Treatment Planning System. The system consolidates disparate automation tools into a single interface, providing managed, role-based access control for all radiation oncology staff. A hybrid architecture was leveraged to combine the deployment flexibility of standalone executables with the integrated workflow of plugins.
Methods
ROBot was developed using the Eclipse Scripting API (ESAPI) to implement a launcher. To overcome traditional plugin limitations—specifically the difficulty of deploying updates, the requirement for assembly name changes during development, and the lack of granular user permissions— ROBot is a plugin that launches ESAPI executables (.exe) to perform database modifications. This establishes a single, static entry point for both clinical and in-development scripts for all staff. ROBot utilizes the inherent "forced save" mechanism triggered by plugin execution, ensuring the database is synchronized with the current planning session before the executable logic begins.
Results
The implementation provides administrators with granular control over tool visibility across various user groups (e.g., Radiation Oncologists, Physicists, Dosimetrists). This hybrid approach significantly shortened development cycles; updates to individual tools are reflected immediately within the launcher without requiring local workstation interventions. Because the final applications are executables, developers avoid the need to rename assemblies between iterations while maintaining an "in-Eclipse" user experience. ROBot is currently utilized approximately 6,000 times per year across BC Cancer Victoria.
Conclusion
ROBot bridges the gap between the two standard ESAPI scripting methods. It provides a seamless, integrated solution for end-users while offering robust access management and streamlined deployment for developers. This framework presents a scalable, secure model for clinical automation in a multi-center, shared-database environment.