edu.isi.pegasus.planner.selector.replica
Class Local

java.lang.Object
  extended by edu.isi.pegasus.planner.selector.replica.Local
All Implemented Interfaces:
ReplicaSelector

public class Local
extends Object
implements ReplicaSelector

This replica selector only prefers replicas from the local host and that start with a file: URL scheme. It is useful, when you want to stagin files to a remote site from your submit host using the Condor file transfer mechanism.

In order to use the replica selector implemented by this class,

        - the property pegasus.selector.replica must be set to value Local
 

Version:
$Revision: 4292 $
Author:
Karan Vahi
See Also:
org.griphyn.cPlanner.transfer.implementation.Condor

Field Summary
protected static String FILE_URL_SCHEME
          The scheme name for file url.
private static String mDescription
          A short description of the replica selector.
protected  LogManager mLogger
          The handle to the logging object that is used to log the various debug messages.
protected  PegasusProperties mProps
          The properties object containing the properties passed to the planner.
static String SANITY_CHECK_ERROR_MESSAGE_PREFIX
          Sanity Check Error Message.
 
Fields inherited from interface edu.isi.pegasus.planner.selector.ReplicaSelector
LOCAL_SITE_HANDLE, VERSION
 
Constructor Summary
Local(PegasusProperties properties)
          The overloaded constructor, that is called by load method.
 
Method Summary
 String description()
          Returns a short description of the replica selector.
 ReplicaCatalogEntry selectReplica(ReplicaLocation rl, String preferredSite, boolean allowLocalFileURLs)
          Selects a random replica from all the replica's that have their site handle set to local and the pfn's start with a file url scheme.
 ReplicaLocation selectReplicas(ReplicaLocation rl, String preferredSite, boolean allowLocalFileURLs)
          This chooses a location amongst all the locations returned by the Replica Mechanism.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mDescription

private static final String mDescription
A short description of the replica selector.

See Also:
Constant Field Values

SANITY_CHECK_ERROR_MESSAGE_PREFIX

public static final String SANITY_CHECK_ERROR_MESSAGE_PREFIX
Sanity Check Error Message.

See Also:
Constant Field Values

FILE_URL_SCHEME

protected static final String FILE_URL_SCHEME
The scheme name for file url.

See Also:
Constant Field Values

mLogger

protected LogManager mLogger
The handle to the logging object that is used to log the various debug messages.


mProps

protected PegasusProperties mProps
The properties object containing the properties passed to the planner.

Constructor Detail

Local

public Local(PegasusProperties properties)
The overloaded constructor, that is called by load method.

Parameters:
properties - the PegasusProperties object containing all the properties required by Pegasus.
Method Detail

selectReplica

public ReplicaCatalogEntry selectReplica(ReplicaLocation rl,
                                         String preferredSite,
                                         boolean allowLocalFileURLs)
Selects a random replica from all the replica's that have their site handle set to local and the pfn's start with a file url scheme.

Specified by:
selectReplica in interface ReplicaSelector
Parameters:
rl - the ReplicaLocation object containing all the pfn's associated with that LFN.
preferredSite - the preffered site for picking up the replicas.
allowLocalFileURLs - indicates whether Replica Selector can select a replica on the local site / submit host.
Returns:
ReplicaCatalogEntry corresponding to the location selected.
See Also:
org.griphyn.cPlanner.classes.ReplicaLocation

selectReplicas

public ReplicaLocation selectReplicas(ReplicaLocation rl,
                                      String preferredSite,
                                      boolean allowLocalFileURLs)
This chooses a location amongst all the locations returned by the Replica Mechanism. If a location is found with re/pool attribute same as the preference pool, it is taken. This returns all the locations which match to the preference pool. This function is called to determine if a file does exist on the output pool or not beforehand. We need all the location to ensure that we are able to make a match if it so exists. Else a random location is selected and returned

Specified by:
selectReplicas in interface ReplicaSelector
Parameters:
rl - the ReplicaLocation object containing all the pfn's associated with that LFN.
preferredSite - the preffered site for picking up the replicas.
allowLocalFileURLs - indicates whether Replica Selector can select a replica on the local site / submit host.
Returns:
ReplicaLocation corresponding to the replicas selected.
See Also:
org.griphyn.cPlanner.classes.ReplicaLocation

description

public String description()
Returns a short description of the replica selector.

Specified by:
description in interface ReplicaSelector
Returns:
string corresponding to the description.


Copyright © 2011 The University of Southern California. All Rights Reserved.