public class CachedIngester extends StdIngester
An extension of the StdIngester
that uses a Cache
to keep
track of Product
ingestion status. If the existing Cache
used
is already sync'ed to the requested File Manager (specified by the
fmUrl
parameter in hasProduct(URL, File)
or
hasProduct(URL, String)
), then the Cache
will simply return
the value of Cache.contains(String)
. Otherwise the Cache
will be re-Cache.sync()
'ed to the given File Manager before the
contains method is invoked.
FILE_LOCATION, FILE_SIZE, FILENAME, MIME_TYPE, PRODUCT_ID, PRODUCT_NAME, PRODUCT_RECEVIED_TIME, PRODUCT_STRUCTURE, PRODUCT_TYPE
Constructor and Description |
---|
CachedIngester(String transferService,
Cache cache) |
CachedIngester(String transferService,
String cacheServiceFactory,
String cachePropFile) |
Modifier and Type | Method and Description |
---|---|
boolean |
hasProduct(URL fmUrl,
File prodFile)
|
boolean |
hasProduct(URL fmUrl,
String productName)
Checks the file manager at the given
URL to see whether or not it
knows about the provided Product with the given
productName parameter. |
void |
resynsc() |
ingest, ingest, ingest
public CachedIngester(String transferService, String cacheServiceFactory, String cachePropFile) throws InstantiationException
transferService
- The underlying data transfer service to use to ingest
Product
s.cacheServiceFactory
- The CacheFactory
to use to construct this
Ingester
's Cache
.cachePropFile
- The file path to the cache properties file to load to
configure the Cache
.InstantiationException
public CachedIngester(String transferService, Cache cache) throws InstantiationException
transferService
- The underlying data transfer service to use to ingest
Product
s.cache
- The Cache
that this Ingester
will use.InstantiationException
- If any error occurs.public boolean hasProduct(URL fmUrl, File prodFile) throws CatalogException
Ingester
URL
to see whether or not it
knows about the provided Product
File
parameter. To do
this, it uses File.getName()
as the Metadata
key
Filename
.hasProduct
in interface Ingester
hasProduct
in class StdIngester
prodFile
- The File
to check for existance of within the file
manager at given URL
.CatalogException
public boolean hasProduct(URL fmUrl, String productName) throws CatalogException
Ingester
URL
to see whether or not it
knows about the provided Product
with the given
productName
parameter. To do this, it uses the provided
productName
key as the Metadata
key to search for
in the catalog.hasProduct
in interface Ingester
hasProduct
in class StdIngester
fmUrl
- The URL
pointer to the file manager service.productName
- The Product
to search for, identified by its (possibly
not unique) name.CatalogException
public void resynsc() throws CacheException
CacheException
Copyright © 1999–2017 Apache OODT. All rights reserved.