org.apache.ivy.plugins.repository

Class TransferEvent

public class TransferEvent extends IvyEvent

TransferEvent is used to notify TransferListeners about progress in transfer of resources form/to the respository This class is LARGELY inspired by org.apache.maven.wagon.events.TransferEvent released under the following copyright license:
 
  Copyright 2001-2005 The Apache Software Foundation.
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
 
       http://www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  
 
Orginal class written by Michal Maczka.
Field Summary
static intREQUEST_GET
Indicates GET transfer (from the repository)
static intREQUEST_PUT
Indicates PUT transfer (to the repository)
static intTRANSFER_COMPLETED
A transfer is completed.
static StringTRANSFER_COMPLETED_NAME
static intTRANSFER_ERROR
An error occured during transfer
static StringTRANSFER_ERROR_NAME
static intTRANSFER_INITIATED
A transfer was attempted, but has not yet commenced.
static StringTRANSFER_INITIATED_NAME
static intTRANSFER_PROGRESS
A transfer is in progress.
static StringTRANSFER_PROGRESS_NAME
static intTRANSFER_STARTED
A transfer was started.
static StringTRANSFER_STARTED_NAME
Constructor Summary
TransferEvent(Repository repository, Resource resource, int eventType, int requestType)
TransferEvent(Repository repository, Resource resource, Exception exception, int requestType)
TransferEvent(Repository repository, Resource resource, long length, int requestType)
Method Summary
longgetElapsedTime(int fromEventType, int toEventType)
Returns the elapsed time (in ms) between when the event entered one type until it entered another event time.
intgetEventType()
ExceptiongetException()
longgetLength()
FilegetLocalFile()
RepositorygetRepository()
intgetRequestType()
Returns the request type.
ResourcegetResource()
longgetTotalLength()
booleanisTotalLengthSet()
protected voidsetEventType(int eventType)
voidsetException(Exception exception)
protected voidsetLength(long length)
protected voidsetLocalFile(File localFile)
protected voidsetRequestType(int requestType)
Sets the request type
protected voidsetResource(Resource resource)
protected voidsetTotalLength(long totalLength)
voidsetTotalLengthSet(boolean isTotalLengthSet)

Field Detail

REQUEST_GET

public static final int REQUEST_GET
Indicates GET transfer (from the repository)

REQUEST_PUT

public static final int REQUEST_PUT
Indicates PUT transfer (to the repository)

TRANSFER_COMPLETED

public static final int TRANSFER_COMPLETED
A transfer is completed.

TRANSFER_COMPLETED_NAME

public static final String TRANSFER_COMPLETED_NAME

TRANSFER_ERROR

public static final int TRANSFER_ERROR
An error occured during transfer

TRANSFER_ERROR_NAME

public static final String TRANSFER_ERROR_NAME

TRANSFER_INITIATED

public static final int TRANSFER_INITIATED
A transfer was attempted, but has not yet commenced.

TRANSFER_INITIATED_NAME

public static final String TRANSFER_INITIATED_NAME

TRANSFER_PROGRESS

public static final int TRANSFER_PROGRESS
A transfer is in progress.

TRANSFER_PROGRESS_NAME

public static final String TRANSFER_PROGRESS_NAME

TRANSFER_STARTED

public static final int TRANSFER_STARTED
A transfer was started.

TRANSFER_STARTED_NAME

public static final String TRANSFER_STARTED_NAME

Constructor Detail

TransferEvent

public TransferEvent(Repository repository, Resource resource, int eventType, int requestType)

TransferEvent

public TransferEvent(Repository repository, Resource resource, Exception exception, int requestType)

TransferEvent

public TransferEvent(Repository repository, Resource resource, long length, int requestType)

Method Detail

getElapsedTime

public long getElapsedTime(int fromEventType, int toEventType)
Returns the elapsed time (in ms) between when the event entered one type until it entered another event time.

This is especially useful to get the elapsed transfer time:

 getElapsedTime(TransferEvent.TRANSFER_STARTED, TransferEvent.TRANSFER_COMPLETED);
 

Special cases:

Parameters: fromEventType the event type constant from which time should be measured toEventType the event type constant to which time should be measured

Returns: the elapsed time (in ms) between when the event entered fromEventType until it entered toEventType.

Throws: IllegalArgumentException if either type is not a known constant event type.

getEventType

public int getEventType()

Returns: Returns the eventType.

getException

public Exception getException()

Returns: Returns the exception.

getLength

public long getLength()

getLocalFile

public File getLocalFile()

Returns: Returns the local file.

getRepository

public Repository getRepository()

getRequestType

public int getRequestType()
Returns the request type.

Returns: Returns the request type. The Request type is one of TransferEvent.REQUEST_GET or TransferEvent.REQUEST_PUT

getResource

public Resource getResource()

Returns: Returns the resource.

getTotalLength

public long getTotalLength()

isTotalLengthSet

public boolean isTotalLengthSet()

setEventType

protected void setEventType(int eventType)

Parameters: eventType The eventType to set.

setException

public void setException(Exception exception)

setLength

protected void setLength(long length)

setLocalFile

protected void setLocalFile(File localFile)

Parameters: localFile The local file to set.

setRequestType

protected void setRequestType(int requestType)
Sets the request type

Parameters: requestType The requestType to set. The Request type value should be either TransferEvent.REQUEST_GET or TransferEvent.REQUEST_PUT.

Throws: IllegalArgumentException when

setResource

protected void setResource(Resource resource)

Parameters: resource The resource to set.

setTotalLength

protected void setTotalLength(long totalLength)

setTotalLengthSet

public void setTotalLengthSet(boolean isTotalLengthSet)