[jbosstools-issues] [JBoss JIRA] (JBIDE-17497) Servertools plugin heirarchy has large problem

Rob Stryker (JIRA) issues at jboss.org
Mon Jun 2 05:39:15 EDT 2014


Rob Stryker created JBIDE-17497:
-----------------------------------

             Summary: Servertools plugin heirarchy has large problem
                 Key: JBIDE-17497
                 URL: https://issues.jboss.org/browse/JBIDE-17497
             Project: Tools (JBoss Tools)
          Issue Type: Bug
          Components: server
    Affects Versions: 4.2.0.Beta2
            Reporter: Rob Stryker
            Priority: Critical


The plugin heirarchy of ASTools is better than it used to be, but not good enough for what current consumers of ASTools need it for. 

The problem is simple. There are 3 types of clients using ASTools API:
  1) Those who need all of ASTools installed (including server adapter)
  2) Those who only want access to interfaces, to use *if* server adapters is installed  (do NOT want as.core force installed)
  3) Those who create their own server adapters, want to use interfaces and some impl classes, but do not want as.core (server adapters) installed. 

Those of group 1 are no problem. 

Those of group 2 want as.wtp.core and as.wtp.ui to be minimal implementations with very few (near-zero) dependencies

Those of group 3 want as.wtp.core and as.wtp.ui to provide as much functionality as possible, including things like zipping archives, or integration with download runtimes. 

An example of group 1 is jbosstools-central.

An example of group 2 is ESB / BPEL

An example of group 3 is FuseIDE

Currently, there are classes in plugins positioned above as.core (ie, depend on as.core) that would be useful to FuseIDE (integration with stacks / runtimes / archives), but pushing these classes down into as.wtp.core / as.wtp.ui would mean the as.wtp.* plugins now require archives / stacks / yaml, and then so does bpel / esb. 

There needs to be another set of core/ui plugins for extenders or implementers that do NOT bring in the server adapters. 

Alternatively, we could move the server adapters out of as.core / as.ui and into two new higher-level plugins, as.serveradapter.core / as.serveradapter.ui, leaving as.core/as.ui as the new plugins to be extended by fuse-ide. 

There are of course other possible solutions, but all possible solutions basically require new plugins with substantial class movement. 



--
This message was sent by Atlassian JIRA
(v6.2.3#6260)


More information about the jbosstools-issues mailing list