public class EhcacheHCatDependencyCache extends Object implements HCatDependencyCache, net.sf.ehcache.event.CacheEventListener
Modifier and Type | Field and Description |
---|---|
static String |
CONF_CACHE_NAME |
Constructor and Description |
---|
EhcacheHCatDependencyCache() |
Modifier and Type | Method and Description |
---|---|
void |
addMissingDependency(HCatURI hcatURI,
String actionID)
Add a missing partition dependency and the actionID waiting on it
|
String |
canonicalizeHostname(String name) |
Object |
clone() |
void |
destroy()
Destroy the cache
|
void |
dispose() |
Collection<String> |
getAvailableDependencyURIs(String actionID)
Get a list of available dependency URIs for a actionID
|
Collection<String> |
getWaitingActions(HCatURI hcatURI)
Get the list of actionIDs waiting for a partition
|
void |
init(org.apache.hadoop.conf.Configuration conf)
Initialize the cache with configuration
|
Collection<String> |
markDependencyAvailable(String server,
String db,
String table,
Map<String,String> partitions)
Mark a partition dependency as available
|
void |
notifyElementEvicted(net.sf.ehcache.Ehcache cache,
net.sf.ehcache.Element element) |
void |
notifyElementExpired(net.sf.ehcache.Ehcache cache,
net.sf.ehcache.Element element) |
void |
notifyElementPut(net.sf.ehcache.Ehcache arg0,
net.sf.ehcache.Element arg1) |
void |
notifyElementRemoved(net.sf.ehcache.Ehcache arg0,
net.sf.ehcache.Element arg1) |
void |
notifyElementUpdated(net.sf.ehcache.Ehcache arg0,
net.sf.ehcache.Element arg1) |
void |
notifyRemoveAll(net.sf.ehcache.Ehcache arg0) |
boolean |
removeAvailableDependencyURIs(String actionID,
Collection<String> dependencyURIs)
Remove the list of available dependency URIs for a actionID once the missing dependencies are processed.
|
void |
removeCoordActionWithDependenciesAvailable(String coordAction)
Remove coordAction when all dependencies met
|
boolean |
removeMissingDependency(HCatURI hcatURI,
String actionID)
Remove a missing partition dependency associated with a actionID
|
void |
removeNonWaitingCoordActions(Set<String> staleActions)
Purge stale actions
|
public static String CONF_CACHE_NAME
public EhcacheHCatDependencyCache()
public void init(org.apache.hadoop.conf.Configuration conf)
HCatDependencyCache
init
in interface HCatDependencyCache
conf
- configurationpublic void addMissingDependency(HCatURI hcatURI, String actionID)
HCatDependencyCache
addMissingDependency
in interface HCatDependencyCache
hcatURI
- dependency URIactionID
- ID of action which is waiting for the dependencypublic boolean removeMissingDependency(HCatURI hcatURI, String actionID)
HCatDependencyCache
removeMissingDependency
in interface HCatDependencyCache
hcatURI
- dependency URIactionID
- ID of action which is waiting for the dependencypublic Collection<String> getWaitingActions(HCatURI hcatURI)
HCatDependencyCache
getWaitingActions
in interface HCatDependencyCache
hcatURI
- dependency URIpublic Collection<String> markDependencyAvailable(String server, String db, String table, Map<String,String> partitions)
HCatDependencyCache
markDependencyAvailable
in interface HCatDependencyCache
server
- host:port of the serverdb
- name of the databasetable
- name of the tablepartitions
- list of available partitionspublic Collection<String> getAvailableDependencyURIs(String actionID)
HCatDependencyCache
getAvailableDependencyURIs
in interface HCatDependencyCache
actionID
- action idpublic boolean removeAvailableDependencyURIs(String actionID, Collection<String> dependencyURIs)
HCatDependencyCache
removeAvailableDependencyURIs
in interface HCatDependencyCache
actionID
- action iddependencyURIs
- set of dependency URIspublic void destroy()
HCatDependencyCache
destroy
in interface HCatDependencyCache
public Object clone() throws CloneNotSupportedException
clone
in interface net.sf.ehcache.event.CacheEventListener
clone
in class Object
CloneNotSupportedException
public void dispose()
dispose
in interface net.sf.ehcache.event.CacheEventListener
public void notifyElementExpired(net.sf.ehcache.Ehcache cache, net.sf.ehcache.Element element)
notifyElementExpired
in interface net.sf.ehcache.event.CacheEventListener
public void notifyElementPut(net.sf.ehcache.Ehcache arg0, net.sf.ehcache.Element arg1) throws net.sf.ehcache.CacheException
notifyElementPut
in interface net.sf.ehcache.event.CacheEventListener
net.sf.ehcache.CacheException
public void notifyElementRemoved(net.sf.ehcache.Ehcache arg0, net.sf.ehcache.Element arg1) throws net.sf.ehcache.CacheException
notifyElementRemoved
in interface net.sf.ehcache.event.CacheEventListener
net.sf.ehcache.CacheException
public void notifyElementUpdated(net.sf.ehcache.Ehcache arg0, net.sf.ehcache.Element arg1) throws net.sf.ehcache.CacheException
notifyElementUpdated
in interface net.sf.ehcache.event.CacheEventListener
net.sf.ehcache.CacheException
public void notifyRemoveAll(net.sf.ehcache.Ehcache arg0)
notifyRemoveAll
in interface net.sf.ehcache.event.CacheEventListener
public void notifyElementEvicted(net.sf.ehcache.Ehcache cache, net.sf.ehcache.Element element)
notifyElementEvicted
in interface net.sf.ehcache.event.CacheEventListener
public void removeNonWaitingCoordActions(Set<String> staleActions)
HCatDependencyCache
removeNonWaitingCoordActions
in interface HCatDependencyCache
staleActions
- the actions to purgepublic void removeCoordActionWithDependenciesAvailable(String coordAction)
HCatDependencyCache
removeCoordActionWithDependenciesAvailable
in interface HCatDependencyCache
coordAction
- the actions to removepublic String canonicalizeHostname(String name)
Copyright © 2018 Apache Software Foundation. All rights reserved.