Return-Path: X-Original-To: apmail-maven-commits-archive@www.apache.org Delivered-To: apmail-maven-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 213AB101AE for ; Tue, 3 Dec 2013 14:25:48 +0000 (UTC) Received: (qmail 27228 invoked by uid 500); 3 Dec 2013 14:24:58 -0000 Delivered-To: apmail-maven-commits-archive@maven.apache.org Received: (qmail 26960 invoked by uid 500); 3 Dec 2013 14:24:42 -0000 Mailing-List: contact commits-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@maven.apache.org Delivered-To: mailing list commits@maven.apache.org Received: (qmail 26726 invoked by uid 99); 3 Dec 2013 14:24:26 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Dec 2013 14:24:26 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 03 Dec 2013 14:24:15 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id F1A7D2388C56 for ; Tue, 3 Dec 2013 14:23:28 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r888937 [11/13] - in /websites/production/maven/content/shared-archives/maven-verifier-1.5: ./ apidocs/ apidocs/org/ apidocs/org/apache/ apidocs/org/apache/maven/ apidocs/org/apache/maven/it/ apidocs/org/apache/maven/it/class-use/ apidocs/o... Date: Tue, 03 Dec 2013 14:23:24 -0000 To: commits@maven.apache.org From: ifedorenko@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20131203142328.F1A7D2388C56@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Added: websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/Embedded3xLauncher.html ============================================================================== --- websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/Embedded3xLauncher.html (added) +++ websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/Embedded3xLauncher.html Tue Dec 3 14:23:21 2013 @@ -0,0 +1,313 @@ + + + + +Embedded3xLauncher xref + + + +
+
+1   package org.apache.maven.it;
+2   
+3   /*
+4    * Licensed to the Apache Software Foundation (ASF) under one
+5    * or more contributor license agreements.  See the NOTICE file
+6    * distributed with this work for additional information
+7    * regarding copyright ownership.  The ASF licenses this file
+8    * to you under the Apache License, Version 2.0 (the
+9    * "License"); you may not use this file except in compliance
+10   * with the License.  You may obtain a copy of the License at
+11   *
+12   *   http://www.apache.org/licenses/LICENSE-2.0
+13   *
+14   * Unless required by applicable law or agreed to in writing,
+15   * software distributed under the License is distributed on an
+16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+17   * KIND, either express or implied.  See the License for the
+18   * specific language governing permissions and limitations
+19   * under the License.
+20   */
+21  
+22  import java.io.File;
+23  import java.io.FileInputStream;
+24  import java.io.FileOutputStream;
+25  import java.io.IOException;
+26  import java.io.InputStream;
+27  import java.io.PrintStream;
+28  import java.lang.reflect.Constructor;
+29  import java.lang.reflect.InvocationTargetException;
+30  import java.lang.reflect.Method;
+31  import java.net.MalformedURLException;
+32  import java.net.URL;
+33  import java.net.URLClassLoader;
+34  import java.util.ArrayList;
+35  import java.util.List;
+36  import java.util.Properties;
+37  
+38  import org.apache.maven.shared.utils.io.IOUtil;
+39  
+40  /**
+41   * Launches an embedded Maven 3.x instance from some Maven installation directory.
+42   * 
+43   * @author Benjamin Bentmann
+44   */
+45  class Embedded3xLauncher
+46      implements MavenLauncher
+47  {
+48  
+49      private final Object mavenCli;
+50  
+51      private final Method doMain;
+52  
+53      private Embedded3xLauncher( Object mavenCli, Method doMain )
+54      {
+55          this.mavenCli = mavenCli;
+56          this.doMain = doMain;
+57      }
+58  
+59      /**
+60       * Launches an embedded Maven 3.x instance from some Maven installation directory.
+61       */
+62      public static Embedded3xLauncher createFromMavenHome( String mavenHome, String classworldConf, List<URL> classpath )
+63          throws LauncherException
+64      {
+65          if ( mavenHome == null || mavenHome.length() <= 0 )
+66          {
+67              throw new LauncherException( "Invalid Maven home directory " + mavenHome );
+68          }
+69  
+70          System.setProperty( "maven.home", mavenHome );
+71  
+72          File config;
+73          if ( classworldConf != null )
+74          {
+75              config = new File( classworldConf );
+76          }
+77          else
+78          {
+79              config = new File( mavenHome, "bin/m2.conf" );
+80          }
+81  
+82          ClassLoader bootLoader = getBootLoader( mavenHome, classpath );
+83  
+84          ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();
+85          Thread.currentThread().setContextClassLoader( bootLoader );
+86          try
+87          {
+88              Class<?> launcherClass = bootLoader.loadClass( "org.codehaus.plexus.classworlds.launcher.Launcher" );
+89  
+90              Object launcher = launcherClass.newInstance();
+91  
+92              Method configure = launcherClass.getMethod( "configure", new Class[] { InputStream.class } );
+93  
+94              configure.invoke( launcher, new Object[] { new FileInputStream( config ) } );
+95  
+96              Method getWorld = launcherClass.getMethod( "getWorld", null );
+97              Object classWorld = getWorld.invoke( launcher, null );
+98  
+99              Method getMainClass = launcherClass.getMethod( "getMainClass", null );
+100             Class<?> cliClass = (Class<?>) getMainClass.invoke( launcher, null );
+101 
+102             Constructor<?> newMavenCli = cliClass.getConstructor( new Class[] { classWorld.getClass() } );
+103             Object mavenCli = newMavenCli.newInstance( new Object[] { classWorld } );
+104 
+105             Class<?>[] parameterTypes = { String[].class, String.class, PrintStream.class, PrintStream.class };
+106             Method doMain = cliClass.getMethod( "doMain", parameterTypes );
+107 
+108             return new Embedded3xLauncher( mavenCli, doMain );
+109         }
+110         catch ( ClassNotFoundException e )
+111         {
+112             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+113         }
+114         catch ( InstantiationException e )
+115         {
+116             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+117         }
+118         catch ( IllegalAccessException e )
+119         {
+120             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+121         }
+122         catch ( NoSuchMethodException e )
+123         {
+124             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+125         }
+126         catch ( InvocationTargetException e )
+127         {
+128             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+129         }
+130         catch ( IOException e )
+131         {
+132             throw new LauncherException( "Invalid Maven home directory " + mavenHome, e );
+133         }
+134         finally
+135         {
+136             Thread.currentThread().setContextClassLoader( oldClassLoader );
+137         }
+138     }
+139 
+140     /**
+141      * Launches an embedded Maven 3.x instance from the current class path, i.e. the Maven 3.x dependencies are assumed
+142      * to be present on the class path.
+143      */
+144     public static Embedded3xLauncher createFromClasspath()
+145         throws LauncherException
+146     {
+147         ClassLoader coreLoader = Thread.currentThread().getContextClassLoader();
+148 
+149         try
+150         {
+151             Class<?> cliClass = coreLoader.loadClass( "org.apache.maven.cli.MavenCli" );
+152 
+153             Object mavenCli = cliClass.newInstance();
+154 
+155             Class<?>[] parameterTypes = { String[].class, String.class, PrintStream.class, PrintStream.class };
+156             Method doMain = cliClass.getMethod( "doMain", parameterTypes );
+157 
+158             return new Embedded3xLauncher( mavenCli, doMain );
+159         }
+160         catch ( ClassNotFoundException e )
+161         {
+162             throw new LauncherException( e.getMessage(), e );
+163         }
+164         catch ( NoSuchMethodException e )
+165         {
+166             throw new LauncherException( e.getMessage(), e );
+167         }
+168         catch ( InstantiationException e )
+169         {
+170             throw new LauncherException( e.getMessage(), e );
+171         }
+172         catch ( IllegalAccessException e )
+173         {
+174             throw new LauncherException( e.getMessage(), e );
+175         }
+176     }
+177 
+178     private static ClassLoader getBootLoader( String mavenHome, List<URL> classpath )
+179     {
+180         List<URL> urls = classpath;
+181 
+182         if ( urls == null )
+183         {
+184             urls = new ArrayList<URL>();
+185 
+186             File bootDir = new File( mavenHome, "boot" );
+187             addUrls( urls, bootDir );
+188         }
+189 
+190         if ( urls.isEmpty() )
+191         {
+192             throw new IllegalArgumentException( "Invalid Maven home directory " + mavenHome );
+193         }
+194 
+195         URL[] ucp = (URL[]) urls.toArray( new URL[urls.size()] );
+196 
+197         return new URLClassLoader( ucp, ClassLoader.getSystemClassLoader().getParent() );
+198     }
+199 
+200     private static void addUrls( List<URL> urls, File directory )
+201     {
+202         File[] jars = directory.listFiles();
+203 
+204         if ( jars != null )
+205         {
+206             for ( int i = 0; i < jars.length; i++ )
+207             {
+208                 File jar = jars[i];
+209 
+210                 if ( jar.getName().endsWith( ".jar" ) )
+211                 {
+212                     try
+213                     {
+214                         urls.add( jar.toURI().toURL() );
+215                     }
+216                     catch ( MalformedURLException e )
+217                     {
+218                         throw (RuntimeException) new IllegalStateException().initCause( e );
+219                     }
+220                 }
+221             }
+222         }
+223     }
+224 
+225     public int run( String[] cliArgs, String workingDirectory, File logFile )
+226         throws IOException, LauncherException
+227     {
+228         PrintStream out = ( logFile != null ) ? new PrintStream( new FileOutputStream( logFile ) ) : System.out;
+229         try
+230         {
+231             Properties originalProperties = System.getProperties();
+232             System.setProperties( null );
+233             System.setProperty( "maven.home", originalProperties.getProperty( "maven.home", "" ) );
+234             System.setProperty( "user.dir", new File( workingDirectory ).getAbsolutePath() );
+235 
+236             ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
+237             Thread.currentThread().setContextClassLoader( mavenCli.getClass().getClassLoader() );
+238             try
+239             {
+240                 Object result = doMain.invoke( mavenCli, new Object[] { cliArgs, workingDirectory, out, out } );
+241 
+242                 return ( (Number) result ).intValue();
+243             }
+244             finally
+245             {
+246                 Thread.currentThread().setContextClassLoader( originalClassLoader );
+247 
+248                 System.setProperties( originalProperties );
+249             }
+250         }
+251         catch ( IllegalAccessException e )
+252         {
+253             throw new LauncherException( "Failed to run Maven: " + e.getMessage(), e );
+254         }
+255         catch ( InvocationTargetException e )
+256         {
+257             throw new LauncherException( "Failed to run Maven: " + e.getMessage(), e );
+258         }
+259         finally
+260         {
+261             if ( logFile != null )
+262             {
+263                 out.close();
+264             }
+265         }
+266     }
+267 
+268     public String getMavenVersion()
+269         throws LauncherException
+270     {
+271         Properties props = new Properties();
+272 
+273         InputStream is =
+274             mavenCli.getClass().getResourceAsStream( "/META-INF/maven/org.apache.maven/maven-core/pom.properties" );
+275         if ( is != null )
+276         {
+277             try
+278             {
+279                 props.load( is );
+280             }
+281             catch ( IOException e )
+282             {
+283                 throw new LauncherException( "Failed to read Maven version", e );
+284             }
+285             finally
+286             {
+287                 IOUtil.close( is );
+288             }
+289         }
+290 
+291         String version = props.getProperty( "version" );
+292         if ( version != null )
+293         {
+294             return version;
+295         }
+296 
+297         throw new LauncherException( "Could not determine embedded Maven version" );
+298     }
+299 
+300 }
+
+
+ Added: websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/ForkedLauncher.html ============================================================================== --- websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/ForkedLauncher.html (added) +++ websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/ForkedLauncher.html Tue Dec 3 14:23:21 2013 @@ -0,0 +1,203 @@ + + + + +ForkedLauncher xref + + + +
+
+1   package org.apache.maven.it;
+2   
+3   /*
+4    * Licensed to the Apache Software Foundation (ASF) under one
+5    * or more contributor license agreements.  See the NOTICE file
+6    * distributed with this work for additional information
+7    * regarding copyright ownership.  The ASF licenses this file
+8    * to you under the Apache License, Version 2.0 (the
+9    * "License"); you may not use this file except in compliance
+10   * with the License.  You may obtain a copy of the License at
+11   *
+12   *   http://www.apache.org/licenses/LICENSE-2.0
+13   *
+14   * Unless required by applicable law or agreed to in writing,
+15   * software distributed under the License is distributed on an
+16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+17   * KIND, either express or implied.  See the License for the
+18   * specific language governing permissions and limitations
+19   * under the License.
+20   */
+21  
+22  import java.io.File;
+23  import java.io.FileWriter;
+24  import java.io.IOException;
+25  import java.io.Writer;
+26  import java.util.Collections;
+27  import java.util.Iterator;
+28  import java.util.List;
+29  import java.util.Map;
+30  import java.util.regex.Matcher;
+31  import java.util.regex.Pattern;
+32  
+33  import org.apache.maven.shared.utils.StringUtils;
+34  import org.apache.maven.shared.utils.cli.CommandLineException;
+35  import org.apache.maven.shared.utils.cli.CommandLineUtils;
+36  import org.apache.maven.shared.utils.cli.Commandline;
+37  import org.apache.maven.shared.utils.cli.StreamConsumer;
+38  import org.apache.maven.shared.utils.cli.WriterStreamConsumer;
+39  import org.apache.maven.shared.utils.io.FileUtils;
+40  
+41  /**
+42   * @author Benjamin Bentmann
+43   */
+44  class ForkedLauncher
+45      implements MavenLauncher
+46  {
+47  
+48      private final String mavenHome;
+49  
+50      private final String executable;
+51  
+52      private final Map<String, String> envVars;
+53  
+54      public ForkedLauncher( String mavenHome )
+55      {
+56          this( mavenHome, Collections.<String, String> emptyMap(), false );
+57      }
+58  
+59      public ForkedLauncher( String mavenHome, Map<String, String> envVars, boolean debugJvm )
+60      {
+61          this.mavenHome = mavenHome;
+62          this.envVars = envVars;
+63  
+64          String script = debugJvm ? "mvnDebug" : "mvn";
+65  
+66          if ( mavenHome != null )
+67          {
+68              executable = new File( mavenHome, "bin/" + script ).getPath();
+69          }
+70          else
+71          {
+72              executable = script;
+73          }
+74      }
+75  
+76      public int run( String[] cliArgs, Map<String, String> envVars, String workingDirectory, File logFile )
+77          throws IOException, LauncherException
+78      {
+79          Commandline cmd = new Commandline();
+80  
+81          cmd.setExecutable( executable );
+82  
+83          if ( mavenHome != null )
+84          {
+85              cmd.addEnvironment( "M2_HOME", mavenHome );
+86          }
+87  
+88          if ( envVars != null )
+89          {
+90              for ( Map.Entry<String, String> envVar : envVars.entrySet() )
+91              {
+92                  cmd.addEnvironment( envVar.getKey(), envVar.getValue() );
+93              }
+94          }
+95  
+96          if ( envVars == null || envVars.get( "JAVA_HOME" ) == null )
+97          {
+98              cmd.addEnvironment( "JAVA_HOME", System.getProperty( "java.home" ) );
+99          }
+100 
+101         cmd.addEnvironment( "MAVEN_TERMINATE_CMD", "on" );
+102 
+103         cmd.setWorkingDirectory( workingDirectory );
+104 
+105         for ( String cliArg : cliArgs )
+106         {
+107             cmd.createArg().setValue( cliArg );
+108         }
+109 
+110         Writer logWriter = new FileWriter( logFile );
+111 
+112         StreamConsumer out = new WriterStreamConsumer( logWriter );
+113 
+114         StreamConsumer err = new WriterStreamConsumer( logWriter );
+115 
+116         try
+117         {
+118             return CommandLineUtils.executeCommandLine( cmd, out, err );
+119         }
+120         catch ( CommandLineException e )
+121         {
+122             throw new LauncherException( "Failed to run Maven: " + e.getMessage() + "\n" + cmd, e );
+123         }
+124         finally
+125         {
+126             logWriter.close();
+127         }
+128     }
+129 
+130     public int run( String[] cliArgs, String workingDirectory, File logFile )
+131         throws IOException, LauncherException
+132     {
+133         return run( cliArgs, envVars, workingDirectory, logFile );
+134     }
+135 
+136     public String getMavenVersion()
+137         throws IOException, LauncherException
+138     {
+139         File logFile;
+140         try
+141         {
+142             logFile = File.createTempFile( "maven", "log" );
+143         }
+144         catch ( IOException e )
+145         {
+146             throw new LauncherException( "Error creating temp file", e );
+147         }
+148 
+149         // disable EMMA runtime controller port allocation, should be harmless if EMMA is not used
+150         Map<String, String> envVars = Collections.singletonMap( "MAVEN_OPTS", "-Demma.rt.control=false" );
+151         run( new String[] { "--version" }, envVars, null, logFile );
+152 
+153         List<String> logLines = FileUtils.loadFile( logFile );
+154         // noinspection ResultOfMethodCallIgnored
+155         logFile.delete();
+156 
+157         String version = extractMavenVersion( logLines );
+158 
+159         if ( version == null )
+160         {
+161             throw new LauncherException( "Illegal Maven output: String 'Maven' not found in the following output:\n"
+162                 + StringUtils.join( logLines.iterator(), "\n" ) );
+163         }
+164         else
+165         {
+166             return version;
+167         }
+168     }
+169 
+170     static String extractMavenVersion( List<String> logLines )
+171     {
+172         String version = null;
+173 
+174         final Pattern mavenVersion = Pattern.compile( "(?i).*Maven.*? ([0-9]\\.\\S*).*" );
+175 
+176         for ( Iterator<String> it = logLines.iterator(); version == null && it.hasNext(); )
+177         {
+178             String line = it.next();
+179 
+180             Matcher m = mavenVersion.matcher( line );
+181             if ( m.matches() )
+182             {
+183                 version = m.group( 1 );
+184             }
+185         }
+186 
+187         return version;
+188     }
+189 
+190 }
+
+
+ Added: websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/LauncherException.html ============================================================================== --- websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/LauncherException.html (added) +++ websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/LauncherException.html Tue Dec 3 14:23:21 2013 @@ -0,0 +1,52 @@ + + + + +LauncherException xref + + + +
+
+1   package org.apache.maven.it;
+2   
+3   /*
+4    * Licensed to the Apache Software Foundation (ASF) under one
+5    * or more contributor license agreements.  See the NOTICE file
+6    * distributed with this work for additional information
+7    * regarding copyright ownership.  The ASF licenses this file
+8    * to you under the Apache License, Version 2.0 (the
+9    * "License"); you may not use this file except in compliance
+10   * with the License.  You may obtain a copy of the License at
+11   *
+12   *   http://www.apache.org/licenses/LICENSE-2.0
+13   *
+14   * Unless required by applicable law or agreed to in writing,
+15   * software distributed under the License is distributed on an
+16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+17   * KIND, either express or implied.  See the License for the
+18   * specific language governing permissions and limitations
+19   * under the License.
+20   */
+21  
+22  /**
+23   * @author Benjamin Bentmann
+24   */
+25  class LauncherException
+26      extends Exception
+27  {
+28  
+29      public LauncherException( String message )
+30      {
+31          super( message );
+32      }
+33  
+34      public LauncherException( String message, Throwable cause )
+35      {
+36          super( message, cause );
+37      }
+38  
+39  }
+
+
+ Added: websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/MavenLauncher.html ============================================================================== --- websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/MavenLauncher.html (added) +++ websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/MavenLauncher.html Tue Dec 3 14:23:21 2013 @@ -0,0 +1,49 @@ + + + + +MavenLauncher xref + + + +
+
+1   package org.apache.maven.it;
+2   
+3   /*
+4    * Licensed to the Apache Software Foundation (ASF) under one
+5    * or more contributor license agreements.  See the NOTICE file
+6    * distributed with this work for additional information
+7    * regarding copyright ownership.  The ASF licenses this file
+8    * to you under the Apache License, Version 2.0 (the
+9    * "License"); you may not use this file except in compliance
+10   * with the License.  You may obtain a copy of the License at
+11   *
+12   *   http://www.apache.org/licenses/LICENSE-2.0
+13   *
+14   * Unless required by applicable law or agreed to in writing,
+15   * software distributed under the License is distributed on an
+16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+17   * KIND, either express or implied.  See the License for the
+18   * specific language governing permissions and limitations
+19   * under the License.
+20   */
+21  
+22  import java.io.File;
+23  import java.io.IOException;
+24  
+25  /**
+26   * @author Benjamin Bentmann
+27   */
+28  interface MavenLauncher
+29  {
+30  
+31      int run( String[] cliArgs, String workingDirectory, File logFile )
+32          throws IOException, LauncherException;
+33  
+34      String getMavenVersion()
+35          throws IOException, LauncherException;
+36  }
+
+
+ Added: websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/VerificationException.html ============================================================================== --- websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/VerificationException.html (added) +++ websites/production/maven/content/shared-archives/maven-verifier-1.5/xref/org/apache/maven/it/VerificationException.html Tue Dec 3 14:23:21 2013 @@ -0,0 +1,60 @@ + + + + +VerificationException xref + + + +
+
+1   package org.apache.maven.it;
+2   
+3   /*
+4    * Licensed to the Apache Software Foundation (ASF) under one
+5    * or more contributor license agreements.  See the NOTICE file
+6    * distributed with this work for additional information
+7    * regarding copyright ownership.  The ASF licenses this file
+8    * to you under the Apache License, Version 2.0 (the
+9    * "License"); you may not use this file except in compliance
+10   * with the License.  You may obtain a copy of the License at
+11   *
+12   *   http://www.apache.org/licenses/LICENSE-2.0
+13   *
+14   * Unless required by applicable law or agreed to in writing,
+15   * software distributed under the License is distributed on an
+16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+17   * KIND, either express or implied.  See the License for the
+18   * specific language governing permissions and limitations
+19   * under the License.
+20   */
+21  
+22  /**
+23   * @author Jason van Zyl
+24   * @version $Id: VerificationException.java 609583 2008-01-07 12:18:57Z vsiveton $
+25   */
+26  public class VerificationException
+27      extends Exception
+28  {
+29      public VerificationException()
+30      {
+31      }
+32  
+33      public VerificationException( String message )
+34      {
+35          super( message );
+36      }
+37  
+38      public VerificationException( Throwable cause )
+39      {
+40          super( cause );
+41      }
+42  
+43      public VerificationException( String message, Throwable cause )
+44      {
+45          super( message, cause );
+46      }
+47  }
+
+
+