1 package org.apache.maven.cli; 2 3 18 19 import org.apache.maven.wagon.WagonConstants; 20 import org.apache.maven.wagon.events.TransferEvent; 21 import org.apache.maven.wagon.events.TransferListener; 22 import org.codehaus.plexus.logging.AbstractLogEnabled; 23 24 30 public class BatchModeDownloadMonitor 31 extends AbstractLogEnabled 32 implements TransferListener 33 { 34 public void transferInitiated( TransferEvent transferEvent ) 35 { 36 String message = transferEvent.getRequestType() == TransferEvent.REQUEST_PUT ? "Uploading" : "Downloading"; 37 38 String url = transferEvent.getWagon().getRepository().getUrl(); 39 40 System.out.println( message + ": " + url + "/" + transferEvent.getResource().getName() ); 42 } 43 44 public void transferStarted( TransferEvent transferEvent ) 45 { 46 } 48 49 public void transferProgress( TransferEvent transferEvent, byte[] buffer, int length ) 50 { 51 } 53 54 public void transferCompleted( TransferEvent transferEvent ) 55 { 56 long contentLength = transferEvent.getResource().getContentLength(); 57 if ( contentLength != WagonConstants.UNKNOWN_LENGTH ) 58 { 59 String type = ( transferEvent.getRequestType() == TransferEvent.REQUEST_PUT ? "uploaded" : "downloaded" ); 60 String l = contentLength >= 1024 ? ( contentLength / 1024 ) + "K" : contentLength + "b"; 61 System.out.println( l + " " + type ); 62 } 63 } 64 65 public void transferError( TransferEvent transferEvent ) 66 { 67 transferEvent.getException().printStackTrace(); 69 } 70 71 public void debug( String message ) 72 { 73 } 76 } 77 78 79 80 | Popular Tags |