You are viewing a plain text version of this content. The canonical link for it is here.
Posted to nmaven-commits@incubator.apache.org by si...@apache.org on 2008/01/28 18:38:43 UTC
svn commit: r615983 - in
/incubator/nmaven/trunk/components/maven-dotnet-toolchain: ./ src/
src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/
src/main/java/org/apache/maven/ src/main/java/org/apache/maven/dotnet/
src/main/java/org/a...
Author: sisbell
Date: Mon Jan 28 10:38:41 2008
New Revision: 615983
URL: http://svn.apache.org/viewvc?rev=615983&view=rev
Log:
Initial prototype of the interfaces for a dotnet toolchain.
Added:
incubator/nmaven/trunk/components/maven-dotnet-toolchain/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java (with props)
incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java (with props)
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml Mon Jan 28 10:38:41 2008
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+<project 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</groupId>
+ <version>0.15-incubating-SNAPSHOT</version>
+ <artifactId>maven-dotnet-components</artifactId>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.apache.maven.dotnet</groupId>
+ <artifactId>maven-dotnet-toolchain</artifactId>
+ <name>maven-dotnet-toolchain</name>
+ <description>NMaven</description>
+ <dependencies>
+ </dependencies>
+</project>
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,24 @@
+package org.apache.maven.dotnet.toolchain;
+
+import org.apache.maven.toolchain.model.ToolchainModel;
+import org.apache.maven.dotnet.Vendor;
+import org.apache.maven.dotnet.ProgrammingLanguage;
+
+public class DotnetToolchain implements Toolchain
+{
+ private Vendor vendor;
+
+ public ToolchainModel getToolchainModel()
+ {
+ return null;
+ }
+
+ public Vendor getVendor(){
+ return vendor;
+ }
+
+ public ProgrammingLanguage getProgrammingLanguage()
+ {
+ return null;
+ }
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/DotnetToolchain.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,19 @@
+package org.apache.maven.dotnet.toolchain;
+
+import org.apache.maven.dotnet.ProgrammingLanguage;
+
+public class ProgrammingLanguageMatchPolicy
+ implements ToolchainMatchPolicy
+{
+ private ProgrammingLanguage programmingLanguage;
+
+ public ProgrammingLanguageMatchPolicy( ProgrammingLanguage programmingLanguage )
+ {
+ this.programmingLanguage = programmingLanguage;
+ }
+
+ public boolean match( Toolchain toolchain )
+ {
+ return false;
+ }
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ProgrammingLanguageMatchPolicy.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,8 @@
+package org.apache.maven.dotnet.toolchain;
+
+import org.apache.maven.toolchain.model.ToolchainModel;
+
+public interface Toolchain
+{
+ ToolchainModel getToolchainModel();
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/Toolchain.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,19 @@
+package org.apache.maven.dotnet.toolchain;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.ArrayList;
+
+public class ToolchainContext
+{
+ Collection<Toolchain> getToolchainsFor(Collection<ToolchainMatchPolicy> toolchainMatchPolicies)
+ {
+ //get list of toolchain models
+ //convert list of models into platform specific type
+ //match list of types to policies
+ //return list of matches
+
+ List<Toolchain> toolchains = new ArrayList<Toolchain>();
+ return toolchains;
+ }
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainContext.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,6 @@
+package org.apache.maven.dotnet.toolchain;
+
+public interface ToolchainMatchPolicy
+{
+ boolean match( Toolchain toolchain );
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/ToolchainMatchPolicy.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java?rev=615983&view=auto
==============================================================================
--- incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java (added)
+++ incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java Mon Jan 28 10:38:41 2008
@@ -0,0 +1,25 @@
+package org.apache.maven.dotnet.toolchain;
+
+import org.apache.maven.dotnet.Vendor;
+
+public class VendorMatchPolicy
+ implements ToolchainMatchPolicy
+{
+ private Vendor vendor;
+
+ public VendorMatchPolicy( Vendor vendor )
+ {
+ this.vendor = vendor;
+ }
+
+ public boolean match( Toolchain toolchain )
+ {
+ if ( toolchain == null || ! ( toolchain instanceof DotnetToolchain ) )
+ {
+ throw new IllegalArgumentException( "toolchain" );
+ }
+
+ DotnetToolchain dotnetToolchain = (DotnetToolchain) toolchain;
+ return vendor.equals(dotnetToolchain.getVendor());
+ }
+}
Propchange: incubator/nmaven/trunk/components/maven-dotnet-toolchain/src/main/java/org/apache/maven/dotnet/toolchain/VendorMatchPolicy.java
------------------------------------------------------------------------------
svn:eol-style = native