Interface Repository
-
- All Known Implementing Classes:
AbstractRepository
,ChainedRepository
,FileRepository
,JarRepository
,RelativeURLRepository
,URLRepository
,VsftpRepository
public interface Repository
Represents a collection of resources available to Ivy. Ivy uses one or more repositories as both a source of resources for Ivy enabled build systems and as a distribution center for resources generated by Ivy enabled build systems.A repository supports the following fundamental operations
- retrieving a resource from the repository.
- transferring a resource to the repository.
- retrieving a listing of resources.
Resource Retrieval
get(java.lang.String, java.io.File)
retrieves a resource specified by a provided identifier creating a new file.Resource Publication
put(org.apache.ivy.core.module.descriptor.Artifact, java.io.File, java.lang.String, boolean)
transfers a file to the repository.resource Listing
list(java.lang.String)
returns a listing of file like objects belonging to a specified parent directory.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addTransferListener(TransferListener listener)
Add a listener to the repository.void
get(java.lang.String source, java.io.File destination)
Fetch a resource from the repository.java.lang.String
getFileSeparator()
Get the repository's file separator string.java.lang.String
getName()
Return the name of the repositoryResource
getResource(java.lang.String source)
Return the resource associated with a specified identifier.boolean
hasTransferListener(TransferListener listener)
Determine if a given listener is attached to the repository.java.util.List<java.lang.String>
list(java.lang.String parent)
Return a listing of resources namesvoid
put(Artifact artifact, java.io.File source, java.lang.String destination, boolean overwrite)
Transfer a resource to the repositoryvoid
removeTransferListener(TransferListener listener)
Remove a listener on the repositoryjava.lang.String
standardize(java.lang.String source)
Normalize a string.
-
-
-
Method Detail
-
getResource
Resource getResource(java.lang.String source) throws java.io.IOException
Return the resource associated with a specified identifier. If the resource does not exist, it should return a Resource with exists() returning false. An IOException should only be thrown when a real IO problem occurs, like the impossibility to connect to a server.- Parameters:
source
- A string identifying the resource.- Returns:
- The resource associated with the resource identifier.
- Throws:
java.io.IOException
- On error while trying to get resource.
-
get
void get(java.lang.String source, java.io.File destination) throws java.io.IOException
Fetch a resource from the repository.- Parameters:
source
- A string identifying the resource to be fetched.destination
- Where to place the fetched resource.- Throws:
java.io.IOException
- On retrieval failure.
-
put
void put(Artifact artifact, java.io.File source, java.lang.String destination, boolean overwrite) throws java.io.IOException
Transfer a resource to the repository- Parameters:
artifact
- The artifact to be transferred.source
- The local file to be transferred.destination
- Where to transfer the resource.overwrite
- Whether the transfer should overwrite an existing resource.- Throws:
java.io.IOException
- On publication failure.
-
list
java.util.List<java.lang.String> list(java.lang.String parent) throws java.io.IOException
Return a listing of resources names- Parameters:
parent
- The parent directory from which to generate the listing.- Returns:
- A listing of the parent directory's file content
- Throws:
java.io.IOException
- On listing failure.
-
addTransferListener
void addTransferListener(TransferListener listener)
Add a listener to the repository.- Parameters:
listener
- The listener to attach to the repository.
-
removeTransferListener
void removeTransferListener(TransferListener listener)
Remove a listener on the repository- Parameters:
listener
- The listener to remove
-
hasTransferListener
boolean hasTransferListener(TransferListener listener)
Determine if a given listener is attached to the repository.- Parameters:
listener
- The listener being queried- Returns:
true
if the provided listener is attached to the repository,false
if not.
-
getFileSeparator
java.lang.String getFileSeparator()
Get the repository's file separator string.- Returns:
- The repository's file separator delimiter
-
standardize
java.lang.String standardize(java.lang.String source)
Normalize a string.- Parameters:
source
- The string to normalize.- Returns:
- The normalized string.
-
getName
java.lang.String getName()
Return the name of the repository- Returns:
- String name
-
-