My comments inline:

On Fri, Nov 6, 2009 at 10:48 PM, Ramesh Reddy <rareddy@redhat.com> wrote:
Sanjay,

I checked out the projects and built using Eclipse RCP Plugin
development version. All these worked fine. Once I have the plug-ins
compiled I right clicked in the "core" project and asked it run as
"eclipse" application.

It came up with new eclipse which has "cdk" new project wizard. Which is
by way very neat. I typed in the name of the project and package and it
created a new project with the name "connector-xxx" and copied all the
loopback classes. This is very good start.

For the next steps we should do something like below. Say we have the
below as the sample class

/**
 * License
 */
public class LoopbackConnector extends Connector{

       public Connection getConnection(){
               //TODO: fill in the code
       }
}

then we need to make this into a template such as

/**
 * ${License}
 */
public class ${project-name}Connector extends Connector{

       public Connection getConnection(){
               //TODO: fill in the code
       }
}


where the "loopback" code is only used to drive the initial "template"
then we derive the actual code by replacing the variables in those
templates. These variables can be eclipse defined or we can come up with
some. so, once the variable replacement is done the code will look as
actual java code. This should be the function of the wizard. We do not
need to take all methods as is from "looback" code either, we just need
to put in connector-api required method stubs.
>> Sanjay: This will be a pretty easy change. Please attach the template files in the format you want; I shall replace the existing ones with yours and fill in the $ substitutions. Let me know the $License substitution; I can have it in properties file to get picked up.
 
2) Let's only maintain one version of the "cdk" in the svn repository
for now. As we talked before we really need to point this plugin to a
"teiid" install somewhere on the disk and it should resolve it. Or on
the wizard we can ask the user to point to a CDK distribution, that way
we do not have to have these in the SVN at all. Keeping these in SVN is
verbose.
>>Sanjay: That's the next plan I have anyway. I would propose to keep the plugin functionality as is and also be able to pick up  from a directory. In that way, both options will be at disposal. You may then choose not to have cdk-dist-plugin.
 
3) "ra.xml" need to be treated same way as template. This needs to live
in "src/main/rar/META-INF/ra.xml".
>>Sanjay: Will it have substitution ? If it does, send me the template and the substituions that needs to be used.
 
4) Then we need to bundle this project into a RAR file. Where the format
looks like

           connector-custom.rar
               \--connector-custom.jar
               \--dependencies-1.jar
               \--dependencies-2.jar
               \META-INF
                  ra.xml
We need to write a some kind of "export" function of this. If we do not
want write custom "export" may be we can just use eclipse "maven"
plug-in to build this for us. All that takes is invoking a "run-as" on
the pom.xml, which may be sufficient. Or there may be eclipse plugin to
build a RAR file?
>>Sanjay: I think having a eclipse menu would be much better to build the RAR. What would be these connector-custom.jar, dependencies-1.jar, etc ? Won't the jar contain the compiled classes ? Where should be this jar kept ? A build directory ?
 
Let me know what you think?

Thanks again for all your help.

Ramesh..