View Javadoc
1   package org.apache.maven.wagon;
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 org.apache.maven.wagon.authorization.AuthorizationException;
23  import org.codehaus.plexus.util.FileUtils;
24  
25  import java.io.File;
26  import java.io.IOException;
27  import java.util.LinkedList;
28  
29  /**
30   * @author <a href="mailto:mmaczka@interia.pl">Michal Maczka</a>
31   *
32   * @deprecated
33   */
34  public final class WagonUtils
35  {
36      private WagonUtils()
37      {
38      }
39  
40      public static String toString( String resource, Wagon wagon )
41          throws IOException, TransferFailedException, ResourceDoesNotExistException, AuthorizationException
42      {
43  
44          File file = null;
45  
46          try
47          {
48              file = File.createTempFile( "wagon", "tmp" );
49  
50              wagon.get( resource, file );
51  
52              return FileUtils.fileRead( file );
53          }
54          finally
55          {
56              if ( file != null )
57              {
58                  boolean deleted = file.delete();
59  
60                  if ( !deleted )
61                  {
62                      file.deleteOnExit();
63                  }
64              }
65          }
66  
67      }
68  
69  
70      public static void putDirectory( File dir, Wagon wagon, boolean includeBasdir )
71          throws ResourceDoesNotExistException, TransferFailedException, AuthorizationException
72      {
73  
74          LinkedList queue = new LinkedList();
75  
76          if ( includeBasdir )
77          {
78              queue.add( dir.getName() );
79          }
80          else
81          {
82              queue.add( "" );
83          }
84  
85          while ( !queue.isEmpty() )
86          {
87              String path = (String) queue.removeFirst();
88  
89              File currentDir = new File( dir, path );
90  
91              File[] files = currentDir.listFiles();
92  
93              for ( int i = 0; i < files.length; i++ )
94              {
95                  File file = files[i];
96  
97                  String resource;
98  
99                  if ( path.length() > 0 )
100                 {
101                     resource = path + "/" + file.getName();
102                 }
103                 else
104                 {
105                     resource = file.getName();
106                 }
107 
108                 if ( file.isDirectory() )
109                 {
110                     queue.add( resource );
111                 }
112                 else
113                 {
114                     wagon.put( file, resource );
115                 }
116 
117             }
118 
119         }
120 
121     }
122 }