Agentry Editor and Eclipse Platform Overview
The primary development tool for an Agentry mobile application is the Agentry Editor. The Editor is provided as a plug-in component to the Eclipse development platform.
Eclipse is an open source project freely available for download from the project’s website, and can also be installed with the Agentry Editor plug-in. The Agentry Editor is a 4th generation language (4GL) development tool providing point-and-click development of applications. Much of the behavior of the Editor is dictated by the overall behavior of the Eclipse platform.
The following is general information covering the Eclipse platform and the Agentry Perspective within Eclipse. Developers unfamiliar with Eclipse will find this information useful as a starting point. It is also recommended that developers review the help information provided with Eclipse by selecting Help | Help Contents and reviewing the Workbench User Guide as well as other information provided in the help content.
Specifics on procedures, navigation, and other topics related specifically to the Agentry Editor are covered in detail in subsequent sections.
The Agentry Editor Perspective and Views
The Agentry Editor plug-in includes an Eclipse perspective consisting of several Views. A view is a pane or tab within Eclipse that presents information about and access to various development components. Perspectives are a collection of multiple views. Opening a perspective within Eclipse opens all of that perspective’s views.
The views within the Agentry perspective provided by the Agentry Editor plug-in are the primary views for application development within Agentry, but they are not the only views that will be used in most projects. Other views and other perspectives within Eclipse provide features and functionality that match the tasks and development work performed for a given application project. The ability to use the core views within the Agentry perspective in conjunction with views from other tools and plug-ins within Eclipse is one of the main advantages to the Agentry Editor plug-in architecture.
A common perspective used during the development of a mobile application is the Java perspective. This perspective is provided with Eclipse and includes various views and other tools to support Java development work. When working with a mobile application that will synchronize data with a back end system using Java, this perspective is used regularly for development, implementation and configuration tasks.
Agentry Application Project
Development work related to a mobile application’s Agentry definitions is organized within the Agentry Editor in an Agentry Application Project. This project contains the definitions that are the mobile application, structured according to the Agentry Application Hierarchy. Within the Agentry Editor perspective this project is presented in the Project Explorer View according to the application hierarchy. Within this view the developer navigates through the application definitions. The project itself is stored as an Agentry application project file with the extension .apj.
The Eclipse platform organizes development projects, interface settings, and most other aspects of the environment into workspaces. This includes the Agentry application project created and managed within the Agentry Editor plug-in. Other related projects are also stored within the same workspace. In most cases it is recommended that a workspace exists for each mobile application. Within the workspace for a given application there should then reside the Agentry application project, as well as other related items such as Java or Ant projects, where necessary.
An alternative is to create a single workspace for multiple mobile applications that are developed for the same back end system and that have significant overlap in back end processing requirements and methodology. In environments where multiple applications are developed for the same back end system, developers may structure the back end synchronization components into layers that include those common to all mobile applications for the same back end, and those specific to a given mobile application. In such environments it may make sense to have a single workspace containing all components and projects, so that the individual application projects can share the common synchronization resources, as well as contain the individual synchronization projects for each application. This would also include one Agentry application project for each mobile application.
In general, the structure of the workspace is up to the developer or development team, and the best approach for all involved can be used. There is no hard and fast rule concerning the proper structure for a workspace within Eclipse as it relates to the mobile applications developed or modified in the Agentry Editor.
Other information concerning the Eclipse interface is also stored within the workspace. These include the items set via Eclipse’s preference settings. These settings can affect the behavior of numerous different views within Eclipse. Changes made to the preferences will be stored in the workspace. This means each workspace within Eclipse can have its own preferences tailored to the needs of that workspace, and switching from one to another will load the new workspace’s settings.
Third Party Views and Tools
In addition to the functionality contained within the Agentry Editor plug-in, there are additional tools and views provided by third parties as contributions to the Eclipse Platform. Many of these may be useful in different development environments that involve Agentry application projects. Certain contributions are expected and used by the Agentry Editor, specifically the Data Tools Platform project and the Java Perspective. The Java Perspective is provided with all implementations of Eclipse and is used by the Agentry Editor when the application project includes synchronization with a Java Virtual Machine system connection.
The Data Tools Platform is included in Eclipse as well and is used when the application project includes synchronization with a SQL Database system connection. It is through this package that the Agentry Connector Studio provides its functionality.