Author: jgbutler
Date: Wed Feb 24 22:28:06 2010
New Revision: 916007

URL: http://svn.apache.org/viewvc?rev=916007&view=rev
Log:
[Ibator] More Eclipse Build Improvements

Added:
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/customBuildCallbacks.xml
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/LICENSE
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/NOTICE
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/feature.properties
Modified:
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.properties
    ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.xml
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/build.properties
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.core/META-INF/MANIFEST.MF
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/META-INF/MANIFEST.MF
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/plugin.xml
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/IbatorClasspathVariableInitializer.java
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/actions/AddIbatorAction.java
    
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/content/AdapterFactory.java
    ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/build.properties
    ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/feature.xml

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.properties
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.properties?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.properties
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.properties
 Wed Feb 24 22:28:06 2010
@@ -36,7 +36,7 @@
 #archiveNamePrefix=
 
 # The prefix that will be used in the generated archive.
-archivePrefix=eclipse
+archivePrefix=
 
 # The location underwhich all of the build output will be collected.
 collectingFolder=${archivePrefix}

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.xml
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.xml?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.xml 
(original)
+++ ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.build/build.xml 
Wed Feb 24 22:28:06 2010
@@ -1,36 +1,11 @@
-<!--
-       This program and the accompanying materials are made available
-       under the terms of the Eclipse Public License v1.0 which
-       accompanies this distribution, and is available at
-       http://www.eclipse.org/legal/epl-v10.html
-       
-       This build script creates a build directory containing the plugins
-       and features to be built, and then kicks off the PDE build process.
-       You could just as easily do this from a shell script or cron job.
-       
-       Also, the script can be run inside the Eclipse IDE by choosing 
-       Run As -> Ant Build from the context menu. It could obviously be
-       run outside of the IDE if you have ANT installed on your path.
-       
-       If you have any questions about this build, feel free to contact me
-       at patr...@rcpquickstart.com.
--->
 <project name="org.apache.ibatis.ibator.build" default="build">
        <property file="build.properties" />
 
-       <!--
-               PDE Build expects that the build directory contains a "plugins" 
-               directory and a "features" directory. These directories should 
contain
-               the various plug-ins and features to be built.
-               
-               It's possible to use the CVS checkout process that is built 
into 
-               PDE Build. This is done with map files and is beyond the scope 
of 
-               this tutorial. 
-               
-               This tutorial simply copies the projects directly from your 
workspace
-               into the appropriate build directory folders.
-       -->
        <target name="init">
+               <!-- First, regenerate the documentation -->
+               <ant 
antfile="../org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml"
+                 dir="../org.apache.ibatis.ibator.eclipse.doc" />
+               
                <mkdir dir="${buildDirectory}" />
                <mkdir dir="${buildDirectory}/plugins" />
                <mkdir dir="${buildDirectory}/features" />
@@ -58,9 +33,6 @@
        <!--
                This target actually executes the PDE Build process by 
launching the 
                Eclipse antRunner application.
-               
-               NOTE: If you are using Eclipse 3.2, switch out the pathelement 
below
-               with the one that is commented out.
        -->
        <target name="pde-build">
                <dirname file="build.properties" property="builder"/>
@@ -83,4 +55,18 @@
        </target>
        
        <target name="build" depends="clean, init, pde-build" />
-</project>
\ No newline at end of file
+       
+       <target name="jeffDev">
+               <delete dir="C:/JavaTools/eclipse" failonerror="false"/>
+               <delete dir="C:/EclipseWorkspaces/IbatorTest" 
failonerror="false"/>
+               <mkdir dir="C:/EclipseWorkspaces/IbatorTest"/>
+               <unzip dest="C:/Apache/Ibator/eclipse/IbatorUpdateSite"
+                       
src="C:/Temp/ibator.build/I.TestBuild/org.apache.ibatis.ibator-TestBuild.zip"
+                       overwrite="true" />
+               <unzip dest="C:/JavaTools"
+                       src="C:/Downloads/Eclipse/eclipse-SDK-3.5.1-win32.zip" 
/>
+       </target>
+       
+       <target name="buildInDev" depends="build, jeffDev" />
+       
+</project>

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/build.properties
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/build.properties?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/build.properties 
(original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/build.properties 
Wed Feb 24 22:28:06 2010
@@ -8,3 +8,4 @@
 src.includes = LICENSE,\
                NOTICE\
 
+customBuildCallbacks=customBuildCallbacks.xml

Added: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/customBuildCallbacks.xml
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/customBuildCallbacks.xml?rev=916007&view=auto
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/customBuildCallbacks.xml
 (added)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.core/customBuildCallbacks.xml
 Wed Feb 24 22:28:06 2010
@@ -0,0 +1,163 @@
+<!-- ===================================================================== -->
+<!-- Custom targets called from a project's generated build.xml            -->
+<!-- Set customBuildCallbacks=<path/to/this/file> in your build.properties.-->
+<!-- ===================================================================== -->
+<project name="Build specific targets and properties" default="noDefault">
+
+       <!-- 
===================================================================== -->
+       <!-- Default target                                                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="noDefault">
+               <echo message="This file must be called with explicit targets" 
/>
+       </target>
+       
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target build.jars                           
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder to contain the build results        
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.build.jars">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target build.jars                            
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder to contain the build results        
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.build.jars">
+       </target>
+       
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target build.sources                        
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder to contain the build results        
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.build.sources">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target build.sources                         
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder to contain the build results        
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.build.sources">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the compilation target <name>                   
   -->
+       <!-- Substitute "name" with the name of the compilation target, eg @dot 
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   source.foldern : n = 1 ... N, the source folders                 
   -->
+       <!--   target.folder  : where the results of the compilation go         
   -->
+       <!--   <name>.classpath : name = name of the compilation target. A      
   -->
+       <!--                      reference to the classpath structure.         
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.name">
+       </target>
+
+       <target name="p...@dot">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do during the compilation target <name>, after the 
compile   -->
+       <!-- but before jaring.  Substitute "name" with the name of the 
compilation-->
+       <!-- target, eg @dot                                                    
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   source.foldern : n = 1 ... N, the source folders                 
   -->
+       <!--   target.folder  : where the results of the compilation go         
   -->
+       <!--   <name>.classpath : name = name of the compilation target. A      
   -->
+       <!--                      reference to the classpath structure.         
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.compile.name">
+       </target>
+
+       <target name="post.compi...@dot">
+       </target>
+       
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the compilation target <name>                    
   -->
+       <!-- Substitute "name" with the name of the compilation target, eg @dot 
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   jar.location - the location of the compilation results           
   -->
+       <!--   <name>.classpath : name = name of the compilation target. A      
   -->
+       <!--                      reference to the classpath structure.         
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.name">
+       </target>
+
+       <target name="po...@dot">
+       </target>
+       
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target gather.bin.parts                     
    -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder containing the build results        
   -->
+       <!--   target.folder - destination folder                               
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.gather.bin.parts">
+       </target>
+               
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target gather.bin.parts                      
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   build.result.folder - folder containing the build results        
   -->
+       <!--   target.folder - destination folder                               
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.gather.bin.parts">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target gather.sources                       
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   destination.temp.folder - destination folder                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.gather.sources">
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target gather.sources                        
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   destination.temp.folder - destination folder                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.gather.sources">
+               <copy todir="${destination.temp.folder}">
+                       <fileset dir="src/main/resources">
+                               <include name="**/*.*"/>
+                       </fileset>
+               </copy>
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target gather.logs                          
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   destination.temp.folder - destination folder                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.gather.logs">        
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target gather.logs                           
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   destination.temp.folder - destination folder                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.gather.logs">       
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do before the target clean                                
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   destination.temp.folder - destination folder                     
   -->
+       <!-- 
===================================================================== -->
+       <target name="pre.clean">              
+       </target>
+
+       <!-- 
===================================================================== -->
+       <!-- Steps to do after the target clean                                 
   -->
+       <!-- Available parameters :                                             
   -->
+       <!--   plugin.destination - final destination of the build              
   -->
+       <!--   build.result.folder - results of the compilation                 
   -->
+       <!--   temp.folder - temporary folder                                   
   -->
+       <!-- 
===================================================================== -->
+       <target name="post.clean">             
+       </target>
+</project>

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.core/META-INF/MANIFEST.MF
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.core/META-INF/MANIFEST.MF?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.core/META-INF/MANIFEST.MF
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.core/META-INF/MANIFEST.MF
 Wed Feb 24 22:28:06 2010
@@ -11,4 +11,4 @@
  org.eclipse.jface.text;bundle-version="3.4.1",
  org.eclipse.core.resources;bundle-version="3.4.1",
  org.eclipse.core.runtime;bundle-version="3.4.0",
- org.apache.ibatis.ibator.core;bundle-version="1.2.0"
+ org.apache.ibatis.ibator.core;bundle-version="1.2.2"

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.doc/buildDoc.xml
 Wed Feb 24 22:28:06 2010
@@ -1,4 +1,4 @@
-<project default="refresh">
+<project default="refresh" basedir=".">
   <path id="org.abache.ibatis.ibator.doc.javadocclasspath">
        <pathelement location="../org.apache.ibatis.ibator.eclipse.ui/bin"/>
        <pathelement location="../org.apache.ibatis.ibator.core/ibator.jar"/>

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/META-INF/MANIFEST.MF
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/META-INF/MANIFEST.MF?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/META-INF/MANIFEST.MF
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/META-INF/MANIFEST.MF
 Wed Feb 24 22:28:06 2010
@@ -12,8 +12,8 @@
  org.eclipse.ant.core;bundle-version="3.2.0",
  org.eclipse.core.resources;bundle-version="3.4.1",
  org.eclipse.core.runtime;bundle-version="3.4.0",
- org.apache.ibatis.ibator.eclipse.core;bundle-version="1.2.0",
- org.apache.ibatis.ibator.core;bundle-version="1.2.0",
+ org.apache.ibatis.ibator.eclipse.core;bundle-version="1.2.2",
+ org.apache.ibatis.ibator.core;bundle-version="1.2.2",
  org.eclipse.jdt.core;bundle-version="3.4.2"
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
 Bundle-ActivationPolicy: lazy

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/plugin.xml
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/plugin.xml?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/plugin.xml 
(original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/plugin.xml 
Wed Feb 24 22:28:06 2010
@@ -94,12 +94,12 @@
       <classpathVariableInitializer
             
class="org.apache.ibatis.ibator.eclipse.ui.IbatorClasspathVariableInitializer"
             readOnly="true"
-            variable="IBATOR_JAR">
+            variable="IBATOR_HOME">
       </classpathVariableInitializer>
       <classpathVariableInitializer
             
class="org.apache.ibatis.ibator.eclipse.ui.IbatorClasspathVariableInitializer"
             readOnly="true"
-            variable="IBATOR_JAR_SRC">
+            variable="IBATOR_SRC_HOME">
       </classpathVariableInitializer>
    </extension>
 </plugin>

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/IbatorClasspathVariableInitializer.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/IbatorClasspathVariableInitializer.java?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/IbatorClasspathVariableInitializer.java
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/IbatorClasspathVariableInitializer.java
 Wed Feb 24 22:28:06 2010
@@ -17,9 +17,11 @@
 
 import java.io.File;
 import java.io.IOException;
+import java.net.URISyntaxException;
 import java.net.URL;
 
 import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.Path;
 import org.eclipse.core.runtime.Platform;
 import org.eclipse.jdt.core.ClasspathVariableInitializer;
@@ -34,8 +36,8 @@
 public class IbatorClasspathVariableInitializer extends
         ClasspathVariableInitializer {
 
-    public static final String IBATOR_JAR = "IBATOR_JAR"; //$NON-NLS-1$
-    public static final String IBATOR_JAR_SRC = "IBATOR_JAR_SRC"; //$NON-NLS-1$
+    public static final String IBATOR_HOME = "IBATOR_HOME"; //$NON-NLS-1$
+    public static final String IBATOR_SRC_HOME = "IBATOR_SRC_HOME"; 
//$NON-NLS-1$
     
     /**
      * 
@@ -49,54 +51,76 @@
      */
     @Override
     public void initialize(String variable) {
-        if (IBATOR_JAR.equals(variable)) {
+        if (IBATOR_HOME.equals(variable)) {
             initializeIbatorJar();
-        } else if (IBATOR_JAR_SRC.equals(variable)) {
+        } else if (IBATOR_SRC_HOME.equals(variable)) {
             initializeIbatorJarSource();
         }
     }
     
     private void initializeIbatorJar() {
-        Bundle bundle= Platform.getBundle("org.apache.ibatis.ibator.core"); 
//$NON-NLS-1$
-        if (bundle == null) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR, null);
+       IPath path = IbatorClasspathVariableInitializer.getIbatorPath();
+        if (path == null) {
+            JavaCore.removeClasspathVariable(IBATOR_HOME, null);
             return;
         }
-        URL installLocation= bundle.getEntry("/ibator.jar"); //$NON-NLS-1$
-        URL local= null;
+        
         try {
-            local= FileLocator.toFileURL(installLocation);
-        } catch (IOException e) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR, null);
+               JavaCore.setClasspathVariable(IBATOR_HOME, path, null);
+        } catch (JavaModelException e) {
+            JavaCore.removeClasspathVariable(IBATOR_HOME, null);
+        }
+    }
+
+    private void initializeIbatorJarSource() {
+       IPath path = IbatorClasspathVariableInitializer.getIbatorSourcePath();
+        if (path == null) {
+            JavaCore.removeClasspathVariable(IBATOR_SRC_HOME, null);
             return;
         }
+
         try {
-            String fullPath= new File(local.getPath()).getAbsolutePath();
-            JavaCore.setClasspathVariable(IBATOR_JAR, new Path(fullPath), 
null);
+            JavaCore.setClasspathVariable(IBATOR_SRC_HOME, path, null);
         } catch (JavaModelException e1) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR, null);
+            JavaCore.removeClasspathVariable(IBATOR_SRC_HOME, null);
         }
     }
-
-    private void initializeIbatorJarSource() {
+    
+    public static IPath getIbatorPath() {
         Bundle bundle= Platform.getBundle("org.apache.ibatis.ibator.core"); 
//$NON-NLS-1$
         if (bundle == null) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR_SRC, null);
-            return;
+            return null;
         }
-        URL installLocation= bundle.getEntry("/ibator-src.zip"); //$NON-NLS-1$
-        URL local= null;
+        
         try {
-            local= FileLocator.toFileURL(installLocation);
+            URL devPath = bundle.getEntry("bin/");
+            File fullPath;
+            if (devPath != null) {
+                devPath = FileLocator.toFileURL(devPath);
+                fullPath = new File(devPath.toURI());
+            } else {
+                fullPath = FileLocator.getBundleFile(bundle);
+            }
+            
+               return new Path(fullPath.getAbsolutePath());
         } catch (IOException e) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR_SRC, null);
-            return;
+            return null;
+        } catch (URISyntaxException e) {
+            return null;
         }
+    }
+    
+    public static IPath getIbatorSourcePath() {
+        Bundle bundle= 
Platform.getBundle("org.apache.ibatis.ibator.core.source"); //$NON-NLS-1$
+        if (bundle == null) {
+            return null;
+        }
+        
         try {
-            String fullPath= new File(local.getPath()).getAbsolutePath();
-            JavaCore.setClasspathVariable(IBATOR_JAR_SRC, new Path(fullPath), 
null);
-        } catch (JavaModelException e1) {
-            JavaCore.removeClasspathVariable(IBATOR_JAR_SRC, null);
+               File fullPath = FileLocator.getBundleFile(bundle);
+               return new Path(fullPath.getAbsolutePath());
+        } catch (IOException e) {
+               return null;
         }
     }
 }

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/actions/AddIbatorAction.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/actions/AddIbatorAction.java?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/actions/AddIbatorAction.java
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/actions/AddIbatorAction.java
 Wed Feb 24 22:28:06 2010
@@ -19,7 +19,6 @@
 import org.apache.ibatis.ibator.eclipse.ui.IbatorClasspathVariableInitializer;
 import org.apache.ibatis.ibator.eclipse.ui.content.JavaProjectAdapter;
 import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
 import org.eclipse.jdt.core.IClasspathEntry;
 import org.eclipse.jdt.core.IJavaProject;
 import org.eclipse.jdt.core.JavaCore;
@@ -47,10 +46,10 @@
      * @see 
org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
      */
     public void run(IAction action) {
-        IPath jarPath = new 
Path(IbatorClasspathVariableInitializer.IBATOR_JAR);
-        IPath srcPath = new 
Path(IbatorClasspathVariableInitializer.IBATOR_JAR_SRC);
+        IPath jarPath = IbatorClasspathVariableInitializer.getIbatorPath();
+        IPath srcPath = 
IbatorClasspathVariableInitializer.getIbatorSourcePath();
         
-        IClasspathEntry newEntry = JavaCore.newVariableEntry(jarPath, srcPath, 
null);
+        IClasspathEntry newEntry = JavaCore.newLibraryEntry(jarPath, srcPath, 
null);
         
         try {
             IClasspathEntry[] oldClasspath = iJavaProject.getRawClasspath();

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/content/AdapterFactory.java
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/content/AdapterFactory.java?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/content/AdapterFactory.java
 (original)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator.eclipse.ui/src/org/apache/ibatis/ibator/eclipse/ui/content/AdapterFactory.java
 Wed Feb 24 22:28:06 2010
@@ -113,7 +113,7 @@
                 }
                 
                 IPath path = iClasspathEntry.getPath();
-                if 
(path.segment(0).equals(IbatorClasspathVariableInitializer.IBATOR_JAR)) {
+                if 
(path.segment(0).equals(IbatorClasspathVariableInitializer.IBATOR_HOME)) {
                     rc = true;
                     break;
                 }

Modified: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/build.properties
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/build.properties?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/build.properties 
(original)
+++ ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/build.properties 
Wed Feb 24 22:28:06 2010
@@ -2,5 +2,10 @@
                feature.properties,\
                LICENSE,\
                NOTICE
+src.includes = feature.properties,\
+               LICENSE,\
+               NOTICE
 
 generate.feat...@org.apache.ibatis.ibator.source=org.apache.ibatis.ibator
+
+

Modified: ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/feature.xml
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/feature.xml?rev=916007&r1=916006&r2=916007&view=diff
==============================================================================
--- ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/feature.xml 
(original)
+++ ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/feature.xml Wed 
Feb 24 22:28:06 2010
@@ -50,6 +50,7 @@
          id="org.apache.ibatis.ibator.eclipse.ui"
          download-size="0"
          install-size="0"
-         version="0.0.0"/>
+         version="0.0.0"
+         unpack="false"/>
 
 </feature>

Added: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/LICENSE
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/LICENSE?rev=916007&view=auto
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/LICENSE
 (added)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/LICENSE
 Wed Feb 24 22:28:06 2010
@@ -0,0 +1,201 @@
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.

Added: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/NOTICE
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/NOTICE?rev=916007&view=auto
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/NOTICE
 (added)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/NOTICE
 Wed Feb 24 22:28:06 2010
@@ -0,0 +1,5 @@
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).
+
+This product includes the EqualsUtil and HashCodeUtil classes
+from http://www.javapractices.com.

Added: 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/feature.properties
URL: 
http://svn.apache.org/viewvc/ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/feature.properties?rev=916007&view=auto
==============================================================================
--- 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/feature.properties
 (added)
+++ 
ibatis/java/ibator/trunk/eclipse/org.apache.ibatis.ibator/sourceTemplateFeature/feature.properties
 Wed Feb 24 22:28:06 2010
@@ -0,0 +1,229 @@
+###############################################################################
+#   Copyright 2008 The Apache Software Foundation
+#
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+###############################################################################
+# feature.properties
+# contains externalized strings for feature.xml
+# "%foo" in feature.xml corresponds to the key "foo" in this file
+
+# "featureName" property - name of the feature
+featureName=Apache iBATIS Ibator Source Feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=The Apache Software Foundation
+
+# "updateSiteName" property - label for the update site
+updateSiteName=Apache iBATIS Ibator Update Site
+
+# "description" property - description of the feature
+description=Apache iBATIS Ibator - a code generator for iBATIS
+
+# "copyright" property - text of the "Feature Update Copyright"
+copyright=\
+Copyright 2008 The Apache Software Foundation\n\
+Licensed under the Apache License, Version 2.0 (the "License");\n\
+you may not use this file except in compliance with the License.\n\
+You may obtain a copy of the License at\n\
+\n\
+http://www.apache.org/licenses/LICENSE-2.0\n\
+\n\
+Unless required by applicable law or agreed to in writing, software\n\
+distributed under the License is distributed on an "AS IS" BASIS,\n\
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n\
+See the License for the specific language governing permissions and\n\
+limitations under the License.\n
+################ end of copyright property ####################################
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=http://www.apache.org/licenses/LICENSE-2.0
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+                                 Apache License\n\
+                           Version 2.0, January 2004\n\
+                        http://www.apache.org/licenses/\n\
+\n\
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\
+\n\
+   1. Definitions.\n\
+\n\
+      "License" shall mean the terms and conditions for use, reproduction,\n\
+      and distribution as defined by Sections 1 through 9 of this document.\n\
+\n\
+      "Licensor" shall mean the copyright owner or entity authorized by\n\
+      the copyright owner that is granting the License.\n\
+\n\
+      "Legal Entity" shall mean the union of the acting entity and all\n\
+      other entities that control, are controlled by, or are under common\n\
+      control with that entity. For the purposes of this definition,\n\
+      "control" means (i) the power, direct or indirect, to cause the\n\
+      direction or management of such entity, whether by contract or\n\
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n\
+      outstanding shares, or (iii) beneficial ownership of such entity.\n\
+\n\
+      "You" (or "Your") shall mean an individual or Legal Entity\n\
+      exercising permissions granted by this License.\n\
+\n\
+      "Source" form shall mean the preferred form for making modifications,\n\
+      including but not limited to software source code, documentation\n\
+      source, and configuration files.\n\
+\n\
+      "Object" form shall mean any form resulting from mechanical\n\
+      transformation or translation of a Source form, including but\n\
+      not limited to compiled object code, generated documentation,\n\
+      and conversions to other media types.\n\
+\n\
+      "Work" shall mean the work of authorship, whether in Source or\n\
+      Object form, made available under the License, as indicated by a\n\
+      copyright notice that is included in or attached to the work\n\
+      (an example is provided in the Appendix below).\n\
+\n\
+      "Derivative Works" shall mean any work, whether in Source or Object\n\
+      form, that is based on (or derived from) the Work and for which the\n\
+      editorial revisions, annotations, elaborations, or other modifications\n\
+      represent, as a whole, an original work of authorship. For the 
purposes\n\
+      of this License, Derivative Works shall not include works that remain\n\
+      separable from, or merely link (or bind by name) to the interfaces of,\n\
+      the Work and Derivative Works thereof.\n\
+\n\
+      "Contribution" shall mean any work of authorship, including\n\
+      the original version of the Work and any modifications or additions\n\
+      to that Work or Derivative Works thereof, that is intentionally\n\
+      submitted to Licensor for inclusion in the Work by the copyright owner\n\
+      or by an individual or Legal Entity authorized to submit on behalf of\n\
+      the copyright owner. For the purposes of this definition, "submitted"\n\
+      means any form of electronic, verbal, or written communication sent\n\
+      to the Licensor or its representatives, including but not limited to\n\
+      communication on electronic mailing lists, source code control 
systems,\n\
+      and issue tracking systems that are managed by, or on behalf of, the\n\
+      Licensor for the purpose of discussing and improving the Work, but\n\
+      excluding communication that is conspicuously marked or otherwise\n\
+      designated in writing by the copyright owner as "Not a Contribution."\n\
+\n\
+      "Contributor" shall mean Licensor and any individual or Legal Entity\n\
+      on behalf of whom a Contribution has been received by Licensor and\n\
+      subsequently incorporated within the Work.\n\
+\n\
+   2. Grant of Copyright License. Subject to the terms and conditions of\n\
+      this License, each Contributor hereby grants to You a perpetual,\n\
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n\
+      copyright license to reproduce, prepare Derivative Works of,\n\
+      publicly display, publicly perform, sublicense, and distribute the\n\
+      Work and such Derivative Works in Source or Object form.\n\
+\n\
+   3. Grant of Patent License. Subject to the terms and conditions of\n\
+      this License, each Contributor hereby grants to You a perpetual,\n\
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n\
+      (except as stated in this section) patent license to make, have made,\n\
+      use, offer to sell, sell, import, and otherwise transfer the Work,\n\
+      where such license applies only to those patent claims licensable\n\
+      by such Contributor that are necessarily infringed by their\n\
+      Contribution(s) alone or by combination of their Contribution(s)\n\
+      with the Work to which such Contribution(s) was submitted. If You\n\
+      institute patent litigation against any entity (including a\n\
+      cross-claim or counterclaim in a lawsuit) alleging that the Work\n\
+      or a Contribution incorporated within the Work constitutes direct\n\
+      or contributory patent infringement, then any patent licenses\n\
+      granted to You under this License for that Work shall terminate\n\
+      as of the date such litigation is filed.\n\
+\n\
+   4. Redistribution. You may reproduce and distribute copies of the\n\
+      Work or Derivative Works thereof in any medium, with or without\n\
+      modifications, and in Source or Object form, provided that You\n\
+      meet the following conditions:\n\
+\n\
+      (a) You must give any other recipients of the Work or\n\
+          Derivative Works a copy of this License; and\n\
+\n\
+      (b) You must cause any modified files to carry prominent notices\n\
+          stating that You changed the files; and\n\
+\n\
+      (c) You must retain, in the Source form of any Derivative Works\n\
+          that You distribute, all copyright, patent, trademark, and\n\
+          attribution notices from the Source form of the Work,\n\
+          excluding those notices that do not pertain to any part of\n\
+          the Derivative Works; and\n\
+\n\
+      (d) If the Work includes a "NOTICE" text file as part of its\n\
+          distribution, then any Derivative Works that You distribute must\n\
+          include a readable copy of the attribution notices contained\n\
+          within such NOTICE file, excluding those notices that do not\n\
+          pertain to any part of the Derivative Works, in at least one\n\
+          of the following places: within a NOTICE text file distributed\n\
+          as part of the Derivative Works; within the Source form or\n\
+          documentation, if provided along with the Derivative Works; or,\n\
+          within a display generated by the Derivative Works, if and\n\
+          wherever such third-party notices normally appear. The contents\n\
+          of the NOTICE file are for informational purposes only and\n\
+          do not modify the License. You may add Your own attribution\n\
+          notices within Derivative Works that You distribute, alongside\n\
+          or as an addendum to the NOTICE text from the Work, provided\n\
+          that such additional attribution notices cannot be construed\n\
+          as modifying the License.\n\
+\n\
+      You may add Your own copyright statement to Your modifications and\n\
+      may provide additional or different license terms and conditions\n\
+      for use, reproduction, or distribution of Your modifications, or\n\
+      for any such Derivative Works as a whole, provided Your use,\n\
+      reproduction, and distribution of the Work otherwise complies with\n\
+      the conditions stated in this License.\n\
+\n\
+   5. Submission of Contributions. Unless You explicitly state otherwise,\n\
+      any Contribution intentionally submitted for inclusion in the Work\n\
+      by You to the Licensor shall be under the terms and conditions of\n\
+      this License, without any additional terms or conditions.\n\
+      Notwithstanding the above, nothing herein shall supersede or modify\n\
+      the terms of any separate license agreement you may have executed\n\
+      with Licensor regarding such Contributions.\n\
+\n\
+   6. Trademarks. This License does not grant permission to use the trade\n\
+      names, trademarks, service marks, or product names of the Licensor,\n\
+      except as required for reasonable and customary use in describing the\n\
+      origin of the Work and reproducing the content of the NOTICE file.\n\
+\n\
+   7. Disclaimer of Warranty. Unless required by applicable law or\n\
+      agreed to in writing, Licensor provides the Work (and each\n\
+      Contributor provides its Contributions) on an "AS IS" BASIS,\n\
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n\
+      implied, including, without limitation, any warranties or conditions\n\
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n\
+      PARTICULAR PURPOSE. You are solely responsible for determining the\n\
+      appropriateness of using or redistributing the Work and assume any\n\
+      risks associated with Your exercise of permissions under this License.\n\
+\n\
+   8. Limitation of Liability. In no event and under no legal theory,\n\
+      whether in tort (including negligence), contract, or otherwise,\n\
+      unless required by applicable law (such as deliberate and grossly\n\
+      negligent acts) or agreed to in writing, shall any Contributor be\n\
+      liable to You for damages, including any direct, indirect, special,\n\
+      incidental, or consequential damages of any character arising as a\n\
+      result of this License or out of the use or inability to use the\n\
+      Work (including but not limited to damages for loss of goodwill,\n\
+      work stoppage, computer failure or malfunction, or any and all\n\
+      other commercial damages or losses), even if such Contributor\n\
+      has been advised of the possibility of such damages.\n\
+\n\
+   9. Accepting Warranty or Additional Liability. While redistributing\n\
+      the Work or Derivative Works thereof, You may choose to offer,\n\
+      and charge a fee for, acceptance of support, warranty, indemnity,\n\
+      or other liability obligations and/or rights consistent with this\n\
+      License. However, in accepting such obligations, You may act only\n\
+      on Your own behalf and on Your sole responsibility, not on behalf\n\
+      of any other Contributor, and only if You agree to indemnify,\n\
+      defend, and hold each Contributor harmless for any liability\n\
+      incurred by, or claims asserted against, such Contributor by reason\n\
+      of your accepting any such warranty or additional liability.\n
+########### end of license property ##########################################


Reply via email to