UML diagrams for the iSeries Project Object Model

Several class diagrams exist for this model; each are useful depending on the task at hand. For example, if a plugin needs to contribute a pop-up action using the standard Eclipse pop-up extension point (org.eclipse.ui.popupMenus) then the first diagram, namely the Project Model Diagram, is the most useful since it illustrates the object hierarchy. If object contribution filtering is needed, then the iSeries Resource Filtering UML Diagram comes in handy. The Java documentation for these classes explains what each class does, but the UML diagrams are highlighted here.
 

The Project Model UML Diagram:


In a nutshell, what the above diagram says is that there is a project root that can hold multiple projects. A project has a native root and an IFS root representing iSeries native and IFS nodes. The above model represents two wrapped object models: the Eclipse IResource model, and the RSE ISeriesxxx object model. The reason for this is simple. Objects that are only local contain cached IResource objects. Objects that are only remote contain cached ISeriesxxx model objects. Objects that are both local and remote have both. Actions are contributed according to what is cached. A local object can only be a source physical file or source member that has been either created from scratch, or downloaded from the Remote System Explorer. Remote objects are still at the iSeries host.
 
 
 

The IResource Mapping UML Diagram:


The above diagram shows how IResource object models are cached.
 
 
 
 

The ISeriesxxx Mapping UML Diagram:


The above diagram shows how ISeriesxxx object models are cached.
 
 
 
 

The AbstractISeriesResource Hierarchy UML Diagram:


 

The iSeries Resource Filtering UML Diagram:

What the above model illustrates is that base Eclipse filtering is fully supported and extended to more iSeries Resource filtering options. This means that you can use a base Eclipse filtering mechanism, for example, to filter actions and Property pages by IS_LOCAL and IS_SOURCE_FILE.
 
 
 
 

The AbstractISeriesResource UML Diagram:

What the above diagram illustrates is that AbstractiSeriesResource objects are Eclipse-adaptable objects, and there is marker tagged with every resource.
 
 
 

The Project Properties Model UML Diagram: