diff -Naurw j2eeserver/apichanges.xml j2eeservernew/apichanges.xml --- j2eeserver/apichanges.xml 2008-05-30 11:36:23.000000000 +0200 +++ j2eeservernew/apichanges.xml 2008-06-27 20:28:56.000000000 +0200 @@ -111,6 +111,44 @@ + + + + Support methods to allow plugin to implement deploy on save. + + + + + + +

+ SPI is enhanced by two methods isDeployOnSaveSupported and + deployOnSave in order to allow plugin to provide deploy on + save functionality. +

+
+ + +
diff -Naurw j2eeserver/nbproject/project.properties j2eeservernew/nbproject/project.properties --- j2eeserver/nbproject/project.properties 2008-05-30 11:36:23.000000000 +0200 +++ j2eeservernew/nbproject/project.properties 2008-06-26 14:55:22.000000000 +0200 @@ -39,7 +39,7 @@ is.autoload=true javac.source=1.5 -spec.version.base=1.46.0 +spec.version.base=1.47.0 javadoc.overview=${basedir}/api/doc/overview.html javadoc.arch=${basedir}/arch.xml diff -Naurw j2eeserver/src/org/netbeans/modules/j2ee/deployment/plugins/spi/IncrementalDeployment.java j2eeservernew/src/org/netbeans/modules/j2ee/deployment/plugins/spi/IncrementalDeployment.java --- j2eeserver/src/org/netbeans/modules/j2ee/deployment/plugins/spi/IncrementalDeployment.java 2008-05-27 16:47:09.000000000 +0200 +++ j2eeservernew/src/org/netbeans/modules/j2ee/deployment/plugins/spi/IncrementalDeployment.java 2008-06-27 20:16:49.000000000 +0200 @@ -53,6 +53,7 @@ import javax.enterprise.deploy.spi.status.ProgressObject; import java.io.File; import org.netbeans.modules.j2ee.deployment.devmodules.api.J2eeModule; +import org.netbeans.modules.j2ee.deployment.plugins.api.DeploymentChangeDescriptor; import org.netbeans.modules.j2ee.deployment.plugins.spi.config.ModuleConfiguration; /** @@ -175,4 +176,31 @@ public void notifyDeployment(TargetModuleID module) { //do nothing, override if needed } + + /** + * Returns true if deploy on save is supported, false + * otherwise. If this method returns true + * {@link #deployOnSave(javax.enterprise.deploy.spi.TargetModuleID, org.netbeans.modules.j2ee.deployment.plugins.api.DeploymentChangeDescriptor)} + * must provide (reasonably fast) redeploy functionality. + * + * @return true if deploy on save is supported + * @since 1.47 + */ + public boolean isDeployOnSaveSupported() { + return false; + } + + /** + * Performs reload of the artifacts when the deploy on save is requested. + * All chenged files are alredy prepared at required location before this + * call. Returns object tracking the reload. + * + * @param module module owning the artifacts + * @param desc description of changes + * @return object tracking the reload + * @since 1.47 + */ + public ProgressObject deployOnSave(TargetModuleID module, DeploymentChangeDescriptor desc) { + throw new UnsupportedOperationException("Deploy on save not supported"); + } }