You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@manifoldcf.apache.org by "Karl Wright (JIRA)" <ji...@apache.org> on 2014/09/19 19:15:33 UTC
[jira] [Updated] (CONNECTORS-762) Consider adding ability for
connectors to support multiple UI paradigms
[ https://issues.apache.org/jira/browse/CONNECTORS-762?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Karl Wright updated CONNECTORS-762:
-----------------------------------
Affects Version/s: (was: ManifoldCF 2.0)
ManifoldCF next
Fix Version/s: ManifoldCF next
> Consider adding ability for connectors to support multiple UI paradigms
> -----------------------------------------------------------------------
>
> Key: CONNECTORS-762
> URL: https://issues.apache.org/jira/browse/CONNECTORS-762
> Project: ManifoldCF
> Issue Type: New Feature
> Components: Framework core
> Affects Versions: ManifoldCF next
> Reporter: Karl Wright
> Assignee: Karl Wright
> Fix For: ManifoldCF next
>
>
> Thinking over the problem of how to allow customers and integrators to write their own UI for ManifoldCF, I came up with the following design. The design almost certainly would break backwards compatibility, so it would have to be considered a ManifoldCF 2.0 feature.
> Use a decorator paradigm to allow MCF to be extended in such a way as to allow multiple UI's to be written for the framework.
> The way I propose that this will work is the following:
> (1) IConnector will be revised to no longer include UI methods
> (2) IStandardConfigurationUI will be created which describes the UI methods for configuration, as well as IConfigurationUI which is the base
> (3) IRepositoryConnector will be revised to pull out the specification UI methods
> (4) IStandardSpecificationUI will be created which describes the UI methods for specification editing, as well as ISpecificationUI which is the base
> (5) IOutputConnector will be revised to pull out the output specification UI methods
> (6) IStandardOutputSpecificationUI will be created, as well as IOutputSpecificationUI which is the base
> (7) Four additional configuration UI tables will be created, and two specification UI tables, for UI class registration. Rows in these tables will
> be "owned" by the associated registered connectors. connectors.xml will also be revised to include UI class registration. UI classes are described
> by the connector class they are associated with as well as the specific kind of UI they represent, probably represented by the name of a java interface,
> e.g. IStandardConfigurationUI.
> (8) IConfigurationUI will include no common methods at all. ISpecificationUI will include a setter method for the connector class instance, e.g.
> "set(IRepositoryConnector connector). IOutputSpecificationUI will include a similar setter method. OR: an IRepositoryConnector instance
> is included in all method signatures (which would guarantee that the instance had been grabbed prior to UI use). Think about this...
> (9) UI classes are instantiated as needed, and are discarded right after they are used. Therefore there is no attempt to pool them.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)