You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "ant elder (JIRA)" <tu...@ws.apache.org> on 2006/05/08 13:07:20 UTC

[jira] Created: (TUSCANY-329) Simplified extension API improvements

Simplified extension API improvements
-------------------------------------

         Key: TUSCANY-329
         URL: http://issues.apache.org/jira/browse/TUSCANY-329
     Project: Tuscany
        Type: Improvement

  Components: Java SCA Core  
    Versions: M1    
    Reporter: ant elder
 Assigned to: Jim Marino 
    Priority: Critical
     Fix For: M1


The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.

Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (TUSCANY-329) Simplified extension API improvements

Posted by "Jim Marino (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-329?page=comments#action_12378410 ] 

Jim Marino commented on TUSCANY-329:
------------------------------------

Hi Meeraj,

The doc on this is still lacking but did you notice the support classes in extensions under core? These handle many of the "common" cases? Also, I'm currently doing some work in the sandbox on simplifying the extension API further some your feedback on improvements to the extisting API (it's still very rough) would be great to hear.

Thanks,
Jim

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>     Priority: Critical
>      Fix For: M1

>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (TUSCANY-329) Simplified extension API improvements

Posted by "Meeraj Kunnumpurath (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-329?page=all ]

Meeraj Kunnumpurath updated TUSCANY-329:
----------------------------------------

    Attachment: GroovyImplementationLoader.java

This is the groovy implementation loader now loos like.

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>      Fix For: M1
>  Attachments: AbstractImplementationLoader.java, GroovyImplementationLoader.java
>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (TUSCANY-329) Simplified extension API improvements

Posted by "Jim Marino (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-329?page=all ]

Jim Marino updated TUSCANY-329:
-------------------------------

    Priority: Major  (was: Critical)

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>      Fix For: M1

>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (TUSCANY-329) Simplified extension API improvements

Posted by "Meeraj Kunnumpurath (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-329?page=comments#action_12379115 ] 

Meeraj Kunnumpurath commented on TUSCANY-329:
---------------------------------------------

Jim,

I have refactored the Groovy implementation to use the extension support classes in core. I think, now the concrete implementation classes look a lot tidier. I have attached the files to the JIRA issue 317.

Ta
Meeraj

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: Java-M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>      Fix For: Java-M1
>  Attachments: AbstractImplementationLoader.java, GroovyImplementationLoader.java
>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (TUSCANY-329) Simplified extension API improvements

Posted by "Meeraj Kunnumpurath (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-329?page=comments#action_12378455 ] 

Meeraj Kunnumpurath commented on TUSCANY-329:
---------------------------------------------

Jim,

I have had a quick look at the support class. This is kind of what I thought about, define generic abstractions for the extension interfaces and have parameterization by the concrete types. I think, there are still issues around type casts between raw and generic types in the support classes. I will have a closer look tonight and get the groovy implementation to extend the support classes and see how it goes.

Ta
Meeraj 

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>     Priority: Critical
>      Fix For: M1

>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (TUSCANY-329) Simplified extension API improvements

Posted by "Meeraj Kunnumpurath (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-329?page=all ]

Meeraj Kunnumpurath updated TUSCANY-329:
----------------------------------------

    Attachment: AbstractImplementationLoader.java

Jim,

I have been trying to make the implementation loader generic, I have attached the file. It would be great, if you could please have a look. Also WireBuilderSupport seems to generic, however, the type doesn't seem to be used anywhere. Sould it be T extends TargetInvoker and the abstract method to return the type?

Thanks
Meeraj

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>      Fix For: M1
>  Attachments: AbstractImplementationLoader.java
>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (TUSCANY-329) Simplified extension API improvements

Posted by "ant elder (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-329?page=all ]

ant elder updated TUSCANY-329:
------------------------------

    Fix Version: Java-Mx
                     (was: Java-M1)
        Version: Java-Mx
                     (was: Java-M1)

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: Java-Mx
>     Reporter: ant elder
>     Assignee: Jim Marino
>      Fix For: Java-Mx
>  Attachments: AbstractImplementationLoader.java, GroovyImplementationLoader.java
>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (TUSCANY-329) Simplified extension API improvements

Posted by "Meeraj Kunnumpurath (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-329?page=comments#action_12378405 ] 

Meeraj Kunnumpurath commented on TUSCANY-329:
---------------------------------------------

I noticed this working on the Groovy container. There was significant code duplication in the extension classes for component context, context factory builder and implementation builder.

Thanks
Meeraj

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>     Priority: Critical
>      Fix For: M1

>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Closed: (TUSCANY-329) Simplified extension API improvements

Posted by "Jim Marino (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-329?page=all ]

Jim Marino closed TUSCANY-329.
------------------------------

    Resolution: Won't Fix

Closing this out as an onld M1 issue

> Simplified extension API improvements
> -------------------------------------
>
>                 Key: TUSCANY-329
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-329
>             Project: Tuscany
>          Issue Type: Improvement
>          Components: Java SCA Core
>    Affects Versions: Java-Mx
>            Reporter: ant elder
>         Assigned To: Jim Marino
>             Fix For: Java-Mx
>
>         Attachments: AbstractImplementationLoader.java, GroovyImplementationLoader.java
>
>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Commented: (TUSCANY-329) Simplified extension API improvements

Posted by "Jim Marino (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-329?page=comments#action_12378558 ] 

Jim Marino commented on TUSCANY-329:
------------------------------------

Cool - let me know how it goes. I'm looking to combine ContextFactory and AtomicContext as well, but after our milestone release (this will involve significant refactor to the scope containers). If you want to see some of the early work on this, check out the sandbox under sandbox/jboynes/sca. The extension points for bindings should remain the same though.

Let us know how things go for you tomorrow and if you have any questions or suggestions.

Jim

> Simplified extension API improvements
> -------------------------------------
>
>          Key: TUSCANY-329
>          URL: http://issues.apache.org/jira/browse/TUSCANY-329
>      Project: Tuscany
>         Type: Improvement

>   Components: Java SCA Core
>     Versions: M1
>     Reporter: ant elder
>     Assignee: Jim Marino
>     Priority: Critical
>      Fix For: M1

>
> The work to create simple APIs for adding extensions has made some  of the work required to add an extension much simpler, but there's still things that can be simplfied further for container extensions for new component types. The relevant classes are the ContextFactory, ComponentContext, and TargetInvoker which have a non trivial amount of code and its virtually identical for most simple components.  A ComponentTargetInvoker would also be almost identical to the o.a.t.c.extension.ExternalServiceTargetInvoker. Code for these classes already exists in the Java container, it just needs to be refactored a little to be generic and moved to the o.a.t.c.extension package.
> Be really great if we could get this done before M1 so we have stable extension APIs for people to work with. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira