Author: sisbell Date: Sun Dec 31 13:25:57 2006 New Revision: 491492 URL: http://svn.apache.org/viewvc?view=rev&rev=491492 Log: Support for starting and stopping Mono XSP server.
Added: incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java (with props) incubator/nmaven/trunk/plugins/maven-xsp-plugin/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml (with props) incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java (with props) incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java (with props) Modified: incubator/nmaven/trunk/components/dotnet-core/src/main/resources/META-INF/nmaven/executable-plugins.xml incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/NetExecutableFactoryImpl.java incubator/nmaven/trunk/maven-dotnet.iml incubator/nmaven/trunk/plugins/pom.xml Modified: incubator/nmaven/trunk/components/dotnet-core/src/main/resources/META-INF/nmaven/executable-plugins.xml URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/dotnet-core/src/main/resources/META-INF/nmaven/executable-plugins.xml?view=diff&rev=491492&r1=491491&r2=491492 ============================================================================== --- incubator/nmaven/trunk/components/dotnet-core/src/main/resources/META-INF/nmaven/executable-plugins.xml (original) +++ incubator/nmaven/trunk/components/dotnet-core/src/main/resources/META-INF/nmaven/executable-plugins.xml Sun Dec 31 13:25:57 2006 @@ -1,173 +1,201 @@ <executablePlugins> - <executablePlugin> - <identifier>MONO:XSD</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MONO</vendor> - <executable>xsd</executable> - <profile>XSD:SCHEMA</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - <platform> - <operatingSystem>Mac OS X</operatingSystem> - </platform> - <platform> - <operatingSystem>Linux</operatingSystem> - </platform> - <platform> - <operatingSystem>Solaris</operatingSystem> - </platform> - <platform> - <operatingSystem>FreeBSD</operatingSystem> - </platform> - </platforms> - <commandFilter> - <includes> - <include>classes</include> - <include>dataset</include> - <include>element</include> - <include>namespace</include> - <include>language</include> - <include>generator</include> - <include>o</include> - <include>type</include> - <include>uri</include> - </includes> - </commandFilter> - </executablePlugin> - <executablePlugin> - <identifier>MONO:XSD:XML_INSTANCE</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MONO</vendor> - <executable>xsd</executable> - <profile>XSD:XML_INSTANCE</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - <platform> - <operatingSystem>Mac OS X</operatingSystem> - </platform> - <platform> - <operatingSystem>Linux</operatingSystem> - </platform> - <platform> - <operatingSystem>Solaris</operatingSystem> - </platform> - <platform> - <operatingSystem>FreeBSD</operatingSystem> - </platform> - </platforms> - <commandFilter> - <includes> - <include>o</include> - </includes> - </commandFilter> - </executablePlugin> - <executablePlugin> - <identifier>MS:XSD:XML_INSTANCE</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MICROSOFT</vendor> - <executable>xsd</executable> - <profile>XSD:XML_INSTANCE</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - </platforms> - <commandFilter> - <includes> - <include>o</include> - </includes> - </commandFilter> - </executablePlugin> - <executablePlugin> - <identifier>MS:XSD:SCHEMA</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MICROSOFT</vendor> - <executable>xsd</executable> - <profile>XSD:SCHEMA</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - </platforms> - <commandFilter> - <includes> - <include>classes</include> - <include>dataset</include> - <include>element</include> - <include>fields</include> - <include>enableDataBinding</include> - <include>namespace</include> - <include>language</include> - <include>out</include> - <include>o</include> - <include>type</include> - <include>uri</include> - <include>parameters</include> - </includes> - </commandFilter> - </executablePlugin> - <executablePlugin> - <identifier>MS:RESGEN</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MICROSOFT</vendor> - <executable>resgen</executable> - <profile>RESGEN</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - </platforms> - </executablePlugin> - <executablePlugin> - <identifier>MONO:RESGEN</identifier> - <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> - <vendor>MONO</vendor> - <executable>resgen</executable> - <profile>RESGEN</profile> - <frameworkVersions> - <frameworkVersion>2.0.50727</frameworkVersion> - <frameworkVersion>1.1.4322</frameworkVersion> - </frameworkVersions> - <platforms> - <platform> - <operatingSystem>Windows</operatingSystem> - </platform> - <platform> - <operatingSystem>Mac OS X</operatingSystem> - </platform> - <platform> - <operatingSystem>Linux</operatingSystem> - </platform> - <platform> - <operatingSystem>Solaris</operatingSystem> - </platform> - <platform> - <operatingSystem>FreeBSD</operatingSystem> - </platform> - </platforms> - </executablePlugin> + <executablePlugin> + <identifier>MONO:XSP</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.ThreadedNetExecutable</pluginClass> + <vendor>MONO</vendor> + <executable>startXSP</executable> + <profile>XSP:START</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + <platform> + <operatingSystem>Mac OS X</operatingSystem> + </platform> + <platform> + <operatingSystem>Linux</operatingSystem> + </platform> + <platform> + <operatingSystem>Solaris</operatingSystem> + </platform> + <platform> + <operatingSystem>FreeBSD</operatingSystem> + </platform> + </platforms> + </executablePlugin> + <executablePlugin> + <identifier>MONO:XSD</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MONO</vendor> + <executable>xsd</executable> + <profile>XSD:SCHEMA</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + <platform> + <operatingSystem>Mac OS X</operatingSystem> + </platform> + <platform> + <operatingSystem>Linux</operatingSystem> + </platform> + <platform> + <operatingSystem>Solaris</operatingSystem> + </platform> + <platform> + <operatingSystem>FreeBSD</operatingSystem> + </platform> + </platforms> + <commandFilter> + <includes> + <include>classes</include> + <include>dataset</include> + <include>element</include> + <include>namespace</include> + <include>language</include> + <include>generator</include> + <include>o</include> + <include>type</include> + <include>uri</include> + </includes> + </commandFilter> + </executablePlugin> + <executablePlugin> + <identifier>MONO:XSD:XML_INSTANCE</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MONO</vendor> + <executable>xsd</executable> + <profile>XSD:XML_INSTANCE</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + <platform> + <operatingSystem>Mac OS X</operatingSystem> + </platform> + <platform> + <operatingSystem>Linux</operatingSystem> + </platform> + <platform> + <operatingSystem>Solaris</operatingSystem> + </platform> + <platform> + <operatingSystem>FreeBSD</operatingSystem> + </platform> + </platforms> + <commandFilter> + <includes> + <include>o</include> + </includes> + </commandFilter> + </executablePlugin> + <executablePlugin> + <identifier>MS:XSD:XML_INSTANCE</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MICROSOFT</vendor> + <executable>xsd</executable> + <profile>XSD:XML_INSTANCE</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + </platforms> + <commandFilter> + <includes> + <include>o</include> + </includes> + </commandFilter> + </executablePlugin> + <executablePlugin> + <identifier>MS:XSD:SCHEMA</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MICROSOFT</vendor> + <executable>xsd</executable> + <profile>XSD:SCHEMA</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + </platforms> + <commandFilter> + <includes> + <include>classes</include> + <include>dataset</include> + <include>element</include> + <include>fields</include> + <include>enableDataBinding</include> + <include>namespace</include> + <include>language</include> + <include>out</include> + <include>o</include> + <include>type</include> + <include>uri</include> + <include>parameters</include> + </includes> + </commandFilter> + </executablePlugin> + <executablePlugin> + <identifier>MS:RESGEN</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MICROSOFT</vendor> + <executable>resgen</executable> + <profile>RESGEN</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + </platforms> + </executablePlugin> + <executablePlugin> + <identifier>MONO:RESGEN</identifier> + <pluginClass>org.apache.maven.dotnet.executable.impl.DefaultNetExecutable</pluginClass> + <vendor>MONO</vendor> + <executable>resgen</executable> + <profile>RESGEN</profile> + <frameworkVersions> + <frameworkVersion>2.0.50727</frameworkVersion> + <frameworkVersion>1.1.4322</frameworkVersion> + </frameworkVersions> + <platforms> + <platform> + <operatingSystem>Windows</operatingSystem> + </platform> + <platform> + <operatingSystem>Mac OS X</operatingSystem> + </platform> + <platform> + <operatingSystem>Linux</operatingSystem> + </platform> + <platform> + <operatingSystem>Solaris</operatingSystem> + </platform> + <platform> + <operatingSystem>FreeBSD</operatingSystem> + </platform> + </platforms> + </executablePlugin> </executablePlugins> Modified: incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/NetExecutableFactoryImpl.java URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/NetExecutableFactoryImpl.java?view=diff&rev=491492&r1=491491&r2=491492 ============================================================================== --- incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/NetExecutableFactoryImpl.java (original) +++ incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/NetExecutableFactoryImpl.java Sun Dec 31 13:25:57 2006 @@ -133,6 +133,8 @@ throws PlatformUnsupportedException { + if(commands == null) commands = new ArrayList<String>(); + try { processor.process( vendorInfo ); Added: incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java?view=auto&rev=491492 ============================================================================== --- incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java (added) +++ incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java Sun Dec 31 13:25:57 2006 @@ -0,0 +1,79 @@ +package org.apache.maven.dotnet.executable.impl; + +import org.apache.maven.dotnet.executable.NetExecutable; +import org.apache.maven.dotnet.executable.ExecutableContext; +import org.apache.maven.dotnet.executable.ExecutionException; +import org.apache.maven.dotnet.executable.CommandFilter; +import org.apache.maven.dotnet.executable.CommandExecutor; +import org.apache.maven.dotnet.NMavenContext; +import org.apache.maven.project.MavenProject; +import org.codehaus.plexus.logging.Logger; + +import java.util.List; +import java.io.File; + + +public class ThreadedNetExecutable + implements NetExecutable, Runnable +{ + private ExecutableContext executableContext; + + private MavenProject project; + + private Logger logger; + + public void run() + { + CommandExecutor commandExecutor = CommandExecutor.Factory.createDefaultCommmandExecutor(); + try + { + commandExecutor.setLogger( logger ); + commandExecutor.executeCommand( getExecutable(), getCommands(), getExecutionPath(), true ); + } + catch ( ExecutionException e ) + { + // throw new ExecutionException( "NMAVEN-063-000: Command = " + commands, e ); + } + if ( commandExecutor.getStandardOut().contains( "error" ) ) + { + // t/w new ExecutionException( "NMAVEN-063-001: Command = " + commands ); + } + } + + public List<String> getCommands() + throws ExecutionException + { + CommandFilter filter = executableContext.getCommandFilter(); + return filter.filter( executableContext.getExecutableConfig().getCommands() ); + } + + public File getExecutionPath() + { + return ( executableContext.getExecutableConfig().getExecutionPath() != null ) ? new File( + executableContext.getExecutableConfig().getExecutionPath() ) : null; + } + + public void execute() + throws ExecutionException + { + } + + + public String getExecutable() + throws ExecutionException + { + if ( executableContext == null ) + { + throw new ExecutionException( "NMAVEN-063-002: Executable has not been initialized with a context" ); + } + return executableContext.getExecutableCapability().getExecutable(); + } + + + public void init( NMavenContext nmavenContext ) + { + this.executableContext = (ExecutableContext) nmavenContext; + this.project = executableContext.getMavenProject(); + this.logger = executableContext.getLogger(); + } +} Propchange: incubator/nmaven/trunk/components/dotnet-executable/src/main/java/org/apache/maven/dotnet/executable/impl/ThreadedNetExecutable.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: incubator/nmaven/trunk/maven-dotnet.iml URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/maven-dotnet.iml?view=diff&rev=491492&r1=491491&r2=491492 ============================================================================== --- incubator/nmaven/trunk/maven-dotnet.iml (original) +++ incubator/nmaven/trunk/maven-dotnet.iml Sun Dec 31 13:25:57 2006 @@ -27,6 +27,7 @@ <sourceFolder url="file://$MODULE_DIR$/plugins/maven-webapp-plugin/src/main/java" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/plugins/maven-wsdl-plugin/src/main/java" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/plugins/maven-xsd-plugin/src/main/java" isTestSource="false" /> + <sourceFolder url="file://$MODULE_DIR$/plugins/maven-xsp-plugin/src/main/java" isTestSource="false" /> </content> <orderEntry type="inheritedJdk" /> <orderEntry type="sourceFolder" forTests="false" /> Added: incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml?view=auto&rev=491492 ============================================================================== --- incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml (added) +++ incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml Sun Dec 31 13:25:57 2006 @@ -0,0 +1,16 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache.maven.dotnet.plugins</groupId> + <version>0.14-SNAPSHOT</version> + <artifactId>maven-dotnet-plugins</artifactId> + </parent> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.maven.dotnet.plugins</groupId> + <artifactId>maven-xsp-plugin</artifactId> + <packaging>maven-plugin</packaging> + <version>0.14-SNAPSHOT</version> + <name>maven-xsp-plugin</name> + <description> + Maven Plugin for .NET + </description> +</project> \ No newline at end of file Propchange: incubator/nmaven/trunk/plugins/maven-xsp-plugin/pom.xml ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java?view=auto&rev=491492 ============================================================================== --- incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java (added) +++ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java Sun Dec 31 13:25:57 2006 @@ -0,0 +1,90 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ +package org.apache.maven.dotnet.plugin.xsp; + +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.dotnet.PlatformUnsupportedException; +import org.apache.maven.dotnet.vendor.Vendor; +import org.apache.maven.project.MavenProject; + +import java.io.File; +import java.util.ArrayList; + +/** + * @author Shane Isbell + * @goal start-xsp + * @phase pre-integration-test + */ +public class XspStarterMojo + extends AbstractMojo +{ + /** + * The maven project. + * + * @parameter expression="${project}" + * @required + */ + private MavenProject project; + + /** + * The home directory of your .NET SDK. + * + * @parameter expression="${netHome}" + */ + private File netHome; + + /** + * @parameter expression = "${frameworkVersion}" + */ + private String frameworkVersion; + + /** + * The profile that the executable should use. + * + * @parameter expression = "${profile}" default-value = "XSD:SCHEMA" + */ + private String profile; + + /** + * @component + */ + private org.apache.maven.dotnet.executable.NetExecutableFactory netExecutableFactory; + + public void execute() + throws MojoExecutionException + { + try + { + Runnable executable = (Runnable) netExecutableFactory.getNetExecutableFor( Vendor.MONO.getVendorName(), + frameworkVersion, "XSP:START", + project, new ArrayList<String>(), + netHome ); + Thread thread = new Thread( executable ); + getPluginContext().put( "xspThread", thread); + thread.start(); + + } + catch ( PlatformUnsupportedException e ) + { + throw new MojoExecutionException( "NMAVEN-1400-001: Platform Unsupported: Vendor " + + ", frameworkVersion = " + frameworkVersion + ", Profile = " + profile, e ); + } + } +} Propchange: incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStarterMojo.java ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java?view=auto&rev=491492 ============================================================================== --- incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java (added) +++ incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java Sun Dec 31 13:25:57 2006 @@ -0,0 +1,73 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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. + */ +package org.apache.maven.dotnet.plugin.xsp; + +import org.apache.maven.project.MavenProject; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.AbstractMojo; + +import java.io.File; + +/** + * @author Shane Isbell + * @goal stop-xsp + * @phase post-integration-test + */ +public class XspStopperMojo + extends AbstractMojo +{ + /** + * The maven project. + * + * @parameter expression="${project}" + * @required + */ + private MavenProject project; + + /** + * The home directory of your .NET SDK. + * + * @parameter expression="${netHome}" + */ + private File netHome; + + /** + * @parameter expression = "${frameworkVersion}" + */ + private String frameworkVersion; + + /** + * The profile that the executable should use. + * + * @parameter expression = "${profile}" default-value = "XSD:SCHEMA" + */ + private String profile; + + /** + * @component + */ + private org.apache.maven.dotnet.executable.NetExecutableFactory netExecutableFactory; + + public void execute() + throws MojoExecutionException + { + Thread thread = (Thread) getPluginContext().get( "xspThread"); + thread.stop(); + } +} Propchange: incubator/nmaven/trunk/plugins/maven-xsp-plugin/src/main/java/org/apache/maven/dotnet/plugin/xsp/XspStopperMojo.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: incubator/nmaven/trunk/plugins/pom.xml URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/pom.xml?view=diff&rev=491492&r1=491491&r2=491492 ============================================================================== --- incubator/nmaven/trunk/plugins/pom.xml (original) +++ incubator/nmaven/trunk/plugins/pom.xml Sun Dec 31 13:25:57 2006 @@ -12,6 +12,7 @@ <module>maven-test-plugin</module> <module>maven-webapp-plugin</module> <module>maven-xsd-plugin</module> + <module>maven-xsp-plugin</module> <module>maven-wsdl-plugin</module> <module>maven-install-plugin</module> <module>maven-resgen-plugin</module>