2011/08/05 - Jakarta Cactus has been retired.

For more information, please explore the Attic.

View Javadoc

1   /* 
2    * ========================================================================
3    * 
4    * Licensed to the Apache Software Foundation (ASF) under one or more
5    * contributor license agreements.  See the NOTICE file distributed with
6    * this work for additional information regarding copyright ownership.
7    * The ASF licenses this file to You under the Apache License, Version 2.0
8    * (the "License"); you may not use this file except in compliance with
9    * the License.  You may obtain a copy of the License at
10   * 
11   *   http://www.apache.org/licenses/LICENSE-2.0
12   * 
13   * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   * 
19   * ========================================================================
20   */
21  package org.apache.cactus.maven2.mojos;
22  
23  import java.io.File;
24  
25  import org.apache.maven.plugin.MojoExecutionException;
26  import org.apache.maven.plugin.logging.Log;
27  import org.apache.maven.project.MavenProject;
28  
29  /**
30   * 
31   * Dependency that we use for the lib folder add-on's.
32   *
33   */
34  public class Dependency 
35  extends org.codehaus.cargo.maven2.configuration.Dependency 
36  {
37      /**
38       * We override this mothod. 
39       * @param theProject The Maven project parameter
40       * @param theLog The Maven Log parameter
41       * @return the path to the dependency as <code>java.lang.String</code>
42       * @throws MojoExecutionException in case an error occurs
43       */
44      public String getDependencyPath(MavenProject theProject, Log theLog) 
45      throws MojoExecutionException
46      {
47          String path = getLocation();
48  
49          if (path == null)
50          {
51              if ((getGroupId() == null) || (getArtifactId() == null))
52              {
53                  throw new MojoExecutionException("You must specify a "
54                      + "groupId/artifactId or a location that points to a "
55                      + "directory or JAR");
56              }
57  
58              // Default to jar if not type is specified
59              if (getType() == null)
60              {
61                  setType("jar");
62              }
63  
64              path = findArtifactLocation(theProject.getArtifacts(), theLog);
65          }
66  
67          theLog.debug("Classpath location = [" + new File(path).getPath() + "]");
68  
69          return new File(path).getPath();
70      }
71  }