Re: [sca-j] Should introduction of @Local annotation (JAVA-3) affect theSemantics of an Unannotated Implementation

From
Simon Nash <>
Date
2008-08-27T16:51:31+00:00
ID
Thread
Re: [sca-j] Should introduction of @Local annotation (JAVA-3) affect theSemantics of an Unannotated Implementation
I take a slightly different view on
this.  I think an unannotated implementation is exactly that.  I
don't think it means that all the interfaces referenced by the implementation
must also be unannotated.  However, I'm open to discussion on the
best way to handle this.  Perhaps we need different rules for:

 1. Unannotated implementation
/ unannotated interfaces

 2. Unannotated implementation
/ annotated interfaces

 3. Annotated implementation

    Simon

Simon C. Nash, IBM Distinguished Engineer

Member of the IBM Academy of Technology

Tel. +44-1962-815156  Fax +44-1962-818999

Mike Edwards/UK/IBM@IBMGB

27/08/2008 10:42

To

"OASIS Java" <>

cc

Subject

Re: [sca-j] Should introduction of @Local
annotation (JAVA-3) affect the Semantics of an Unannotated Implementation

Folks, 

An @Local annotation would certainly affect the semantics of an unannotated
implementation. 

An interface so marked would clearly indicate something relating to an
SCA reference. 

Yours,  Mike.

Strategist - Emerging Technologies, SCA & SDO.

Co Chair OASIS SCA Assembly TC.

IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.

Phone & FAX: +44-1962-818014    Mobile: +44-7802-467431  

Email:   

From:

C Vamsi <>

To:

Simon Nash/UK/IBM@IBMGB

Cc:



Date:

27/08/2008 09:09

Subject:

[sca-j] Should introduction of @Local
annotation (JAVA-3) affect the Semantics of an Unannotated Implementation

Simon,

Should the introduction of @Local annotation affect the "Semantics
of an

Unannotated Implementation" (section 8 in sca-javaci-draft-20070926.doc)

where we are currently using only interfaces marked with @Remotable in

computing the references/properties of an implementation?

++Vamsi

                    
                     
                     
         

            Simon Nash      
                     
                     
 

            <>  
                     
                    

                    
                     
                     
      To 

            27/08/2008 12:57    
             
 

                    
                     
                     
      cc 

                    
                     
                     
         

                    
                     
                     
 Subject 

                    
                 Re: [sca-j]
Introspecting services  

                    
                 offered by
a Java implementation    

                    
                 class without
@Service              

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

Raymond,

Minor nit: the @OneWay annotation applies to a method, not to an

interface.  Your example should be updated to show this.

In your example, these services are local.  Issue JAVA-3 has proposed
a new

annotation @Local that could be used on Interface1and Interface2 to allow

them to be recognized by the introspection algorithm.

I believe this discussion can be handled under JAVA-3 and there is no need

to create a new issue.

    Simon

Simon C. Nash, IBM Distinguished Engineer

Member of the IBM Academy of Technology

Tel. +44-1962-815156  Fax +44-1962-818999

                    
                     
                     
         

Raymond Feng                  
                     
                     

<>              
                     
                   

                    
                     
                     
      To 

25/08/2008 17:25                
             
 

                    
                     
                     
      cc 

                    
                     
                     
         

                    
                     
                     
 Subject 

                    
                     
 [sca-j] Introspecting         

                    
                     
 services offered by a Java    

                    
                     
 implementation class without  

                    
                     
 @Service                
     

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

                    
                     
                     
         

Hi,

In Java Component Implementation Specification 1.00, we have the following

statements:

143 1.2.1.3. Introspecting services offered by a Java implementation

144 In the cases described below, the services offered by a Java

implementation class may be determined

145 through introspection, eliding the need to specify them using @Service.

The following algorithm is used to

146 determine how services are introspected from an implementation class:

147 If the interfaces of the SCA services are not specified with the

@Service annotation on the implementation

148 class, it is assumed that all implemented interfaces that have been

annotated as @Remotable are the

149 service interfaces provided by the component. If none of the

implemented interfaces is remotable, then by

150 default the implementation offers a single service whose type is the

implementation class.

What if an interface is annotated with SCA annotations such as @OneWay
or

@Callback?

For example:

public class MyServiceImpl implements Interface1, Interface2 {

}

@Callback(CallbackInterface.class)

public interface Interface1 {

}

@OneWay

public interface Interface2 {

}

By the spec, there is only one service named MyServiceImpl. But isn't it

more natural that we should find two SCA services: Interface1 and

Interface2? Please clarify.

Thanks,

Raymond

Raymond Feng

Senior Software Engineer, Open Source SCA Development, Apache Tuscany

Project

IBM Bay Area Lab, 1001 E Hillsdale Blvd, Suite 400, Foster City, CA 94404,

USA

E-mail: , Notes: Raymond Feng/Burlingame/IBM, Tel:

650-645-8117, T/L: 367-8117

Web & Blog: www.enjoyjava.com
- The Cyber Cafeteria to Enjoy Java

Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with number

741598.

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU

---------------------------------------------------------------------

To unsubscribe from this mail list, you must leave the OASIS TC that

generates this mail.  Follow this link to all your TCs in OASIS at:

https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php

Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with number
741598. 

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU 

Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with number
741598. 

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU