Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipse-incubator-e4-dev] next steps for the E4/connection management discussion

brian.fitzpatrick@xxxxxxxxxx schrieb:

Hi again!

Thanks Scott!

Sorry Eike! (Cowering in embarassment)
Thank you Scott for the clarification and don't worry, Brian ;-)
For those who don't know me:

Eike Stepper

Cheers
/Eike


All of what you said sounds fine Scott... The extra use cases are great and should definitely be considered.

As far as UI... I see your point, and think we should definitely focus on the framework/API side long before talking about UI (and it should most likely be a separate framework, since we definitely want to keep UI/non-UI code as separate as possible). But I don't want it to fall off the table as a talking point.

And we should look at ECF as a potential (especially as it is used in P2 already and been through the wringer!). We just have to be careful to make sure we keep a compatibility layer in mind for any existing frameworks that eventually move this way (including DTP, which has a lot of commercial code at Sybase and IBM already written against it).

--Fitz

Brian Fitzpatrick
Eclipse Data Tools Platform PMC Chair
Eclipse Data Tools Platform Connectivity Team Lead
Staff Software Engineer, Sybase, Inc.



Scott Lewis <slewis@xxxxxxxxxxxxx>
Sent by: eclipse-incubator-e4-dev-bounces@xxxxxxxxxxx

09/23/2008 11:23 AM

Please respond to
E4 developer list <eclipse-incubator-e4-dev@xxxxxxxxxxx>

To
E4 developer list <eclipse-incubator-e4-dev@xxxxxxxxxxx>
cc
Eike Stepper <stepper@xxxxxxxxxx>
Subject
Re: [eclipse-incubator-e4-dev] next steps for the        E4/connection        management discussion







Hi Brian/all,

brian.fitzpatrick@xxxxxxxxxx wrote:
>
> <stuff deleted>
>  
> Though we didn't come to any solid conclusions, it seemed very evident
> that there's definitely a need for some sort of cross-project
> connection management framework in the E4 timeframe.

Agreed.

>
>  
> Since the meeting, I was contacted by Eike Stepper from the CDO Model
> Repository and Net4j Signalling Platform projects. She would like to
> contribute to the conversation and at least keep informed of our
> progress, so it's good to know that outside of the immediate E4 group
> we have interested parties. Not sure if she'd like to demo their
> current frameworks or not. (Eike, do you want to chime in here?)

FWIW, there's an enhancement request to create an ECF provider using Net4j:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=203406

...so that Net4j capabilities can/could be accessed via ECF-exposed
common APIs (e.g. for connection management).

Just FYI...last I checked, Eike was male.  Hi Eike.

>  
> =High Level Goals=
>
> At a minimum, it would be helpful to come up with a common API for
> connection management and persistence.
>
> Some simple use cases might include:
>  
> * Connecting to a unique connection object (database, system, etc.)
> * Disconnecting from a unique connection object
> * Retrieving the raw connection class from the managed connection object
> * Managing connection properties (such as connect/disconnect state and
> any custom properties for the connection type)
> * Managing a list of connections, both connected and disconnected
>  
> More complicated use cases might include:
>  
> * Connection timeout
> * Backward compatibility

I don't have any criticism of use these use cases, although we might
want to amend with:

* Representing different types of connections (i.e. for different
protocols) and extensibly accessing protocol-specific capabilities
* Extensibly representing addresses in a common way across different
addressing systems (e.g. ID/URI, etc)
* Authentication security with different protocols/authentication schemes
* Supporting other environments (e.g. Equinox-based servers)

>
> I think some level of UI consistency is still an important factor
> also. Maybe if we don't all have the same UI components, we could all
> agree on a consistent set of UI-based connection management tasks? Or
> a consistent look and feel even if we're not all exactly the same?

Thoughts?

Although I agree that UI consistency is important, I hesitate to
consider it part of a connection/connection management API.  Why?  
Because several of the things we seem to be looking for in a connection
framework (connection management, transport independence) are logically
separate from a user interface for creating/configuring connections
(i.e. stuff needed so connection to externaprocess can be
established).  I say this because there are plenty of use cases (i.e.
those Brian lists above) that involve connection management that
can/could have no user interface at all for some applications (e.g.
client apps that automatically connect to a number of IM accounts upon
app startup or server-based apps that create connections for
server/services, etc).

I do think that there can/should be work on UI for connection
configuration and usage, and we (ECF) have done some small amount of
work in this area.  We've created some common/reusable user interface
components (e.g. connection dialogs and wizards), and we have some ui
extension points (configurationWizards and connectWizards) that make it
easier for new provider/protocol impls to introduce their own UI for
connection creation/configuration.  And I'm in favor of the notion that
EMF models could be created/used to construct config/connect UIs...we
just haven't done that ourselves so far.

But I'm not in favor of pulling in UI dependencies specifically for a
'connection framework'...at least partially because a connection
framework (like ECF's IContainer APIs) can/is being used in entirely
different environments...like Equinox-based server applications.  I know
that this group is not focused on Equinox-based server applications, but
I do think considering the use of connection frameworks in those
environments will result in better separation of concerns at the
bundle/api level for a connection framework.

Also, I would request that any effort to define a new connection API
first take a look at and try out ECF's IContainer API for satisfying
these use cases.  I think it can/could meet all the use cases I've seen
so far on this list, and I think it would be a terrible shame to spend
significant effort redoing much of what we've done (and is available as
part of p2-based Equinox).  Also, if there are use cases that we've not
addressed (so to speak :), then of course the API can/will be migrated
forward as needed.

Scott


_______________________________________________
eclipse-incubator-e4-dev mailing list
eclipse-incubator-e4-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipse-incubator-e4-dev




Back to the top