|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.isi.pegasus.planner.catalog.replica.impl.MRC
public class MRC
A multiple replica catalog implementation that allows users to query different multiple catalogs at the same time.
To use it set
pegasus.catalog.replica MRCEach associated replica catalog can be configured via properties as follows.
The user associates a variable name referred to as [value] for each of the catalogs, where [value] is any legal identifier (concretely [A-Za-z][_A-Za-z0-9]*) For each associated replica catalogs the user specifies the following properties.
pegasus.catalog.replica.mrc.[value] to specify the type of replica catalog.
pegasus.catalog.replica.mrc.[value].key to specify a property name key for a
particular catalog
For example, if a user wants to query two lrc's at the same time he/she can specify as follows
pegasus.catalog.replica.mrc.lrc1 LRC
pegasus.catalog.replica.mrc.lrc2.url rls://sukhna
pegasus.catalog.replica.mrc.lrc2 LRC
pegasus.catalog.replica.mrc.lrc2.url rls://smarty
In the above example, lrc1, lrc2 are any valid identifier names and url is the property key that needed to be specified.
| Field Summary | |
|---|---|
protected LogManager |
mLogger
The handle to the logging manager. |
protected List |
mRCList
The list of replica catalogs that need to be queried for. |
static String |
PROPERTY_PREFIX
The prefix for the property subset for connecting to the individual catalogs. |
static String |
TYPE_KEY
The property key that designates the type of replica catalog to connect to. |
| Fields inherited from interface edu.isi.pegasus.planner.catalog.ReplicaCatalog |
|---|
BATCH_KEY, c_prefix, DB_PREFIX |
| Fields inherited from interface edu.isi.pegasus.planner.catalog.Catalog |
|---|
DB_ALL_PREFIX |
| Constructor Summary | |
|---|---|
MRC()
The default constructor. |
|
| Method Summary | |
|---|---|
int |
clear()
Removes everything from the catalogs. |
void |
close()
Explicitely free resources before the garbage collection hits. |
boolean |
connect(Properties props)
Establishes a link between the implementation and the thing the implementation is build upon. |
protected boolean |
connect(String name,
Properties properties)
Connects to an individual replica catalog. |
int |
delete(Map x,
boolean matchAttributes)
Deletes multiple mappings into the replica catalog. |
int |
delete(String lfn,
ReplicaCatalogEntry tuple)
Deletes a very specific mapping from the replica catalog. |
int |
delete(String lfn,
String pfn)
Deletes a specific mapping from the replica catalog. |
int |
delete(String lfn,
String name,
Object value)
Deletes all PFN entries for a given LFN from the replica catalog where the PFN attribute is found, and matches exactly the object value. |
int |
deleteByResource(String lfn,
String handle)
Deletes all PFN entries for a given LFN from the replica catalog where the resource handle is found. |
protected String |
getKey(String key,
String prefix)
Returns the key with the prefix stripped off. |
protected String |
getName(String key)
Returns the name from the key. |
int |
insert(Map x)
Inserts multiple mappings into the replica catalog. |
int |
insert(String lfn,
ReplicaCatalogEntry tuple)
Inserts a new mapping into the replica catalog. |
int |
insert(String lfn,
String pfn,
String handle)
Inserts a new mapping into the replica catalog. |
boolean |
isClosed()
Predicate to check, if the connection with the catalog's implementation is still active. |
Set |
list()
Lists all logical filenames in the catalog. |
Set |
list(String constraint)
Lists a subset of all logical filenames in the catalog. |
Map |
lookup(Map constraints)
Retrieves multiple entries for a given logical filename, up to the complete catalog. |
Map |
lookup(Set lfns)
Retrieves multiple entries for a given logical filename, up to the complete catalog. |
Map |
lookup(Set lfns,
String handle)
Retrieves multiple entries for a given logical filename, up to the complete catalog. |
Collection |
lookup(String lfn)
Retrieves all entries for a given LFN from the replica catalog. |
String |
lookup(String lfn,
String handle)
Retrieves the entry for a given filename and resource handle from the replica catalog. |
Map |
lookupNoAttributes(Set lfns)
Retrieves multiple entries for a given logical filename, up to the complete catalog. |
Map |
lookupNoAttributes(Set lfns,
String handle)
Retrieves multiple entries for a given logical filename, up to the complete catalog. |
Set |
lookupNoAttributes(String lfn)
Retrieves all entries for a given LFN from the replica catalog. |
protected Iterator |
rcIterator()
Returns an iterator to iterate through the list of ReplicaCatalogs that MRC is associated with. |
int |
remove(Set lfns)
Removes all mappings for a set of LFNs. |
int |
remove(String lfn)
Removes all mappings for an LFN from the replica catalog. |
int |
removeByAttribute(String handle)
Removes all entries associated with a particular resource handle. |
int |
removeByAttribute(String name,
Object value)
Removes all entries from the replica catalog where the PFN attribute is found, and matches exactly the object value. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String PROPERTY_PREFIX
public static final String TYPE_KEY
protected List mRCList
protected LogManager mLogger
| Constructor Detail |
|---|
public MRC()
| Method Detail |
|---|
public int clear()
clear in interface ReplicaCatalogpublic void close()
close in interface Catalogpublic boolean connect(Properties props)
connect in interface Catalogprops - contains all necessary data to establish the link.
protected boolean connect(String name,
Properties properties)
name - the name given by the user in the properties file.properties - the properties to use for connecting.
protected Iterator rcIterator()
protected String getName(String key)
key - String
protected String getKey(String key,
String prefix)
key - the keyprefix - String
TYPE_KEY
public int delete(String lfn,
String name,
Object value)
delete in interface ReplicaCataloglfn - is the logical filename to look for.name - is the PFN attribute name to look for.value - is an exact match of the attribute value to match.
public int delete(String lfn,
ReplicaCatalogEntry tuple)
delete in interface ReplicaCataloglfn - is the logical filename in the tuple.tuple - is a description of the PFN and its attributes.
public int delete(Map x,
boolean matchAttributes)
delete in interface ReplicaCatalogx - is a map from logical filename string to list of replica
catalog entries.matchAttributes - whether mapping should be deleted only if all
attributes match.
ReplicaCatalogEntry
public int delete(String lfn,
String pfn)
delete in interface ReplicaCataloglfn - is the logical filename in the tuple.pfn - is the physical filename in the tuple.
public int deleteByResource(String lfn,
String handle)
deleteByResource in interface ReplicaCataloglfn - is the logical filename to look for.handle - is the resource handle
public int insert(String lfn,
String pfn,
String handle)
insert in interface ReplicaCataloglfn - is the logical filename under which to book the entry.pfn - is the physical filename associated with it.handle - is a resource handle where the PFN resides.
UnsupportedOperationExceptionReplicaCatalog.insert( String, ReplicaCatalogEntry ),
ReplicaCatalogEntry
public int insert(String lfn,
ReplicaCatalogEntry tuple)
insert in interface ReplicaCataloglfn - is the logical filename under which to book the entry.tuple - is the physical filename and associated PFN attributes.
UnsupportedOperationExceptionpublic int insert(Map x)
insert in interface ReplicaCatalogx - is a map from logical filename string to list of replica
catalog entries.
UnsupportedOperationExceptionReplicaCatalogEntrypublic boolean isClosed()
isClosed in interface CatalogCatalog.close()public Set list(String constraint)
list in interface ReplicaCatalogconstraint - is a constraint for the logical filename only. It
is a string that has some meaning to the implementing system. This
can be a SQL wildcard for queries, or a regular expression for
Java-based memory collections.
public Set list()
list in interface ReplicaCatalog
public String lookup(String lfn,
String handle)
lookup in interface ReplicaCataloglfn - is the logical filename to obtain information for.handle - is the resource handle to obtain entries for.
null
if no match was found.public Collection lookup(String lfn)
lookup in interface ReplicaCataloglfn - is the logical filename to obtain information for.
ReplicaCatalogEntry
public Map lookup(Set lfns,
String handle)
lookup in interface ReplicaCataloglfns - is a set of logical filename strings to look up.handle - is the resource handle, restricting the LFNs.
ReplicaCatalogEntrypublic Map lookup(Map constraints)
lookup in interface ReplicaCatalogconstraints - is mapping of keys 'lfn', 'pfn', or any attribute
name, e.g. the resource handle 'site', to a string that has some
meaning to the implementing system. This can be a SQL wildcard for
queries, or a regular expression for Java-based memory collections.
Unknown keys are ignored. Using an empty map requests the complete
catalog.
ReplicaCatalogEntrypublic Map lookup(Set lfns)
lookup in interface ReplicaCataloglfns - is a set of logical filename strings to look up.
ReplicaCatalogEntrypublic Set lookupNoAttributes(String lfn)
lookupNoAttributes in interface ReplicaCataloglfn - is the logical filename to obtain information for.
public Map lookupNoAttributes(Set lfns)
lookupNoAttributes in interface ReplicaCataloglfns - is a set of logical filename strings to look up.
public Map lookupNoAttributes(Set lfns,
String handle)
lookupNoAttributes in interface ReplicaCataloglfns - is a set of logical filename strings to look up.handle - is the resource handle, restricting the LFNs.
public int remove(String lfn)
remove in interface ReplicaCataloglfn - is the logical filename to remove all mappings for.
public int remove(Set lfns)
remove in interface ReplicaCataloglfns - is a set of logical filename to remove all mappings for.
public int removeByAttribute(String name,
Object value)
removeByAttribute in interface ReplicaCatalogname - is the PFN attribute name to look for.value - is an exact match of the attribute value to match.
public int removeByAttribute(String handle)
removeByAttribute in interface ReplicaCataloghandle - is the site handle to remove all entries for.
ReplicaCatalog.removeByAttribute( String, Object )
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||