Package edu.isi.pegasus.planner.transfer
Class TPT
- java.lang.Object
-
- edu.isi.pegasus.planner.transfer.TPT
-
public class TPT extends java.lang.ObjectA common class, that builds up the third party state for the sites from the properties file.- Version:
- $Revision$
- Author:
- Karan Vahi
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classTPT.TPTStateAn inner class that holds the third party state for a particular site.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringALL_SITESThe constant to apply to all sites.static java.lang.StringALL_TPT_PROPERTYThe property name to get the sites for which all transfers need to be TPT.static java.lang.StringALL_TPT_REMOTE_PROPERTYThe property name to get the sites for which all TPT transfers need to be executed on the remote site.static java.lang.StringINTER_TPT_PROPERTYThe property name to get the sites for which inter site transfers need to be TPT.static java.lang.StringINTER_TPT_REMOTE_PROPERTYThe property name to get the sites for which inter site TPT transfers need to be executed on the remote site.private LogManagermLoggerThe handle to the logging object.private static java.util.MapmPropertyTableAn internal table that maps third party transfer type to the corresponding property.private PegasusPropertiesmPropsThe handle to the properties object holding the properties relevant to Pegasus.private java.util.MapmStateMapThe map indexed by site name, that contains the state for all the sites.static java.lang.StringSTAGE_IN_TPT_PROPERTYThe property name to get the sites for which stage-in transfers need to be TPT.static java.lang.StringSTAGE_IN_TPT_REMOTE_PROPERTYThe property name to get the sites for which stage-in TPT transfers need to be executed on the remote site.static java.lang.StringSTAGE_OUT_TPT_PROPERTYThe property name to get the sites for which stage-out transfers need to be TPT.static java.lang.StringSTAGE_OUT_TPT_REMOTE_PROPERTYThe property name to get the sites for which stage-out TPT transfers need to be executed on the remote site.
-
Constructor Summary
Constructors Constructor Description TPT()The default constructor.TPT(PegasusProperties properties)The overloaded constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbuildState()Builds up the third party state for all the sites.private voidbuildState(int type)Adds to the existing state table, state information for a particular type of transfers.private booleancontainsKey(java.lang.String site)Returns whether there is an entry for a particular site or not.private TPT.TPTStateget(java.lang.String site)Returns the TPT state for a particular site.private java.util.SetgetThirdPartySites(java.lang.String value)Returns a set of third party sites.booleaninterThirdParty(java.lang.String site)Returns a boolean indicating whether to use third party transfers for inter site transfers or not.booleaninterThirdPartyRemote(java.lang.String site)Returns a boolean indicating whether to execute third party transfers for inter site on remote site or not.voidprint()Prints out the third party state for the various sites.private static java.util.MappropertyTable()Singleton access to the type table Contains the mapping of a property to the third party transfer typeprivate voidput(java.lang.String site, TPT.TPTState state)Inserts an entry in to the State Map, that maintains state of various sites.booleanstageInThirdParty(java.lang.String site)Returns a boolean indicating whether to use third party transfers for stage-in transfers or not.booleanstageInThirdPartyRemote(java.lang.String site)Returns a boolean indicating whether to execute third party transfers for stage-in on remote site or not.booleanstageOutThirdParty(java.lang.String site)Returns a boolean indicating whether to use third party transfers for stage-out transfers or not.booleanstageOutThirdPartyRemote(java.lang.String site)Returns a boolean indicating whether to execute third party transfers for stage-out on remote site or not.
-
-
-
Field Detail
-
ALL_SITES
public static final java.lang.String ALL_SITES
The constant to apply to all sites.- See Also:
- Constant Field Values
-
ALL_TPT_PROPERTY
public static final java.lang.String ALL_TPT_PROPERTY
The property name to get the sites for which all transfers need to be TPT.- See Also:
- Constant Field Values
-
STAGE_IN_TPT_PROPERTY
public static final java.lang.String STAGE_IN_TPT_PROPERTY
The property name to get the sites for which stage-in transfers need to be TPT.- See Also:
- Constant Field Values
-
INTER_TPT_PROPERTY
public static final java.lang.String INTER_TPT_PROPERTY
The property name to get the sites for which inter site transfers need to be TPT.- See Also:
- Constant Field Values
-
STAGE_OUT_TPT_PROPERTY
public static final java.lang.String STAGE_OUT_TPT_PROPERTY
The property name to get the sites for which stage-out transfers need to be TPT.- See Also:
- Constant Field Values
-
ALL_TPT_REMOTE_PROPERTY
public static final java.lang.String ALL_TPT_REMOTE_PROPERTY
The property name to get the sites for which all TPT transfers need to be executed on the remote site.- See Also:
- Constant Field Values
-
STAGE_IN_TPT_REMOTE_PROPERTY
public static final java.lang.String STAGE_IN_TPT_REMOTE_PROPERTY
The property name to get the sites for which stage-in TPT transfers need to be executed on the remote site.- See Also:
- Constant Field Values
-
INTER_TPT_REMOTE_PROPERTY
public static final java.lang.String INTER_TPT_REMOTE_PROPERTY
The property name to get the sites for which inter site TPT transfers need to be executed on the remote site.- See Also:
- Constant Field Values
-
STAGE_OUT_TPT_REMOTE_PROPERTY
public static final java.lang.String STAGE_OUT_TPT_REMOTE_PROPERTY
The property name to get the sites for which stage-out TPT transfers need to be executed on the remote site.- See Also:
- Constant Field Values
-
mPropertyTable
private static java.util.Map mPropertyTable
An internal table that maps third party transfer type to the corresponding property.
-
mProps
private PegasusProperties mProps
The handle to the properties object holding the properties relevant to Pegasus.
-
mLogger
private LogManager mLogger
The handle to the logging object.
-
mStateMap
private java.util.Map mStateMap
The map indexed by site name, that contains the state for all the sites.
-
-
Constructor Detail
-
TPT
public TPT()
The default constructor.
-
TPT
public TPT(PegasusProperties properties)
The overloaded constructor.- Parameters:
properties- handle to the properties required.
-
-
Method Detail
-
propertyTable
private static java.util.Map propertyTable()
Singleton access to the type table Contains the mapping of a property to the third party transfer type- Returns:
- map
-
buildState
public void buildState()
Builds up the third party state for all the sites. This reflects what is set in the properties file.
-
buildState
private void buildState(int type)
Adds to the existing state table, state information for a particular type of transfers.- Parameters:
type- the type of transfer.
-
stageInThirdParty
public boolean stageInThirdParty(java.lang.String site)
Returns a boolean indicating whether to use third party transfers for stage-in transfers or not.- Returns:
- boolean
-
interThirdParty
public boolean interThirdParty(java.lang.String site)
Returns a boolean indicating whether to use third party transfers for inter site transfers or not.- Returns:
- boolean
-
stageOutThirdParty
public boolean stageOutThirdParty(java.lang.String site)
Returns a boolean indicating whether to use third party transfers for stage-out transfers or not.- Returns:
- boolean
-
stageInThirdPartyRemote
public boolean stageInThirdPartyRemote(java.lang.String site)
Returns a boolean indicating whether to execute third party transfers for stage-in on remote site or not.- Returns:
- boolean
-
interThirdPartyRemote
public boolean interThirdPartyRemote(java.lang.String site)
Returns a boolean indicating whether to execute third party transfers for inter site on remote site or not.- Returns:
- boolean
-
stageOutThirdPartyRemote
public boolean stageOutThirdPartyRemote(java.lang.String site)
Returns a boolean indicating whether to execute third party transfers for stage-out on remote site or not.- Returns:
- boolean
-
print
public void print()
Prints out the third party state for the various sites.
-
containsKey
private boolean containsKey(java.lang.String site)
Returns whether there is an entry for a particular site or not.- Parameters:
site- the site handle for a site.- Returns:
- boolean
-
put
private void put(java.lang.String site, TPT.TPTState state)Inserts an entry in to the State Map, that maintains state of various sites.- Parameters:
site- the site handle for a site.state- the thirdparty state for the site.
-
get
private TPT.TPTState get(java.lang.String site)
Returns the TPT state for a particular site.- Parameters:
site- the site handle for the site.- Returns:
- state the third party state for the site if there is an entry, else null.
-
getThirdPartySites
private java.util.Set getThirdPartySites(java.lang.String value)
Returns a set of third party sites. An empty set is returned if value is null.- Parameters:
value- the value in the properties file.- Returns:
- Set containing the names of the pools.
-
-