View Javadoc

1   /**
2    * Copyright 2008-2012 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.codehaus.mojo.wagon.shared;
17  
18  import java.io.IOException;
19  
20  import org.apache.maven.plugin.logging.Log;
21  import org.apache.maven.wagon.Wagon;
22  import org.apache.maven.wagon.WagonException;
23  
24  /**
25   *
26   */
27  public interface WagonCopy {
28      String ROLE = WagonCopy.class.getName();
29  
30      /**
31       * Transfer files between 2 Wagon URLs. If download directory is not given in the fileset a temporary one will be
32       * created.
33       *
34       * @param fromWagon
35       *            - source Wagon
36       * @param fileset
37       * @param toWagon
38       *            - target Wagon
39       * @param optimize
40       *            - locally compressed and remotely uncompress for scp only
41       * @param logger
42       * @throws WagonException
43       */
44      void copy(Wagon fromWagon, WagonFileSet fileset, Wagon toWagon, boolean optimize, Log logger)
45              throws WagonException, IOException;
46  
47  }