A B C D E F G H I L O P Q R S T

A

add(I) - Method in interface org.exoplatform.services.cache.concurrent.Queue
Add the item to the head of the list.
add(I) - Method in class org.exoplatform.services.cache.concurrent.SynchronizedQueue
Add the item to the head of the list.
addCacheListener(CacheListener) - Method in class org.exoplatform.services.cache.BaseExoCache
 
addCacheListener(CacheListener) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
addCacheListener(CacheListener) - Method in interface org.exoplatform.services.cache.ExoCache
 
addExoCacheConfig(ExoCacheConfigPlugin) - Method in interface org.exoplatform.services.cache.CacheService
 
addExoCacheConfig(ComponentPlugin) - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
addExoCacheConfig(ExoCacheConfigPlugin) - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
assertConsistency() - Method in class org.exoplatform.services.cache.concurrent.SynchronizedQueue
 
assertConsistent() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 

B

BaseExoCache - Class in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sat, Sep 13, 2003 @ Time: 1:12:22 PM
BaseExoCache() - Constructor for class org.exoplatform.services.cache.BaseExoCache
 
BaseExoCache(int) - Constructor for class org.exoplatform.services.cache.BaseExoCache
 
BaseExoCache(String, int) - Constructor for class org.exoplatform.services.cache.BaseExoCache
 

C

CachedObjectSelector - Interface in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Thuannd nhudinhthuan@yahoo.com Apr 4, 2006
CacheListener - Interface in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sep 19, 2005
CacheService - Interface in org.exoplatform.services.cache
Created by The eXo Platform SAS.
CacheServiceImpl - Class in org.exoplatform.services.cache.impl
Created by The eXo Platform SAS.
CacheServiceImpl(InitParams) - Constructor for class org.exoplatform.services.cache.impl.CacheServiceImpl
 
CacheServiceImpl(InitParams, ExoCacheFactory) - Constructor for class org.exoplatform.services.cache.impl.CacheServiceImpl
 
CacheServiceManaged - Class in org.exoplatform.services.cache.impl
 
CacheServiceManaged(CacheServiceImpl) - Constructor for class org.exoplatform.services.cache.impl.CacheServiceManaged
 
clearCache() - Method in class org.exoplatform.services.cache.BaseExoCache
 
clearCache() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
clearCache() - Method in interface org.exoplatform.services.cache.ExoCache
Clears the cache.
clearCaches() - Method in class org.exoplatform.services.cache.impl.CacheServiceManaged
 
clone() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
ConcurrentFIFOExoCache - Class in org.exoplatform.services.cache.concurrent
An ExoCache implementation based on ConcurrentHashMap that minimize locking.
ConcurrentFIFOExoCache() - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
ConcurrentFIFOExoCache(Log) - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
ConcurrentFIFOExoCache(int) - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
ConcurrentFIFOExoCache(int, Log) - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
ConcurrentFIFOExoCache(String, int) - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
ConcurrentFIFOExoCache(String, int, Log) - Constructor for class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
createCache(ExoCacheConfig) - Method in interface org.exoplatform.services.cache.ExoCacheFactory
Creates a new instance of ExoCache
createObjectCacheInfo(long, Object) - Method in class org.exoplatform.services.cache.BaseExoCache
 
createObjectCacheInfo(long, Object) - Method in class org.exoplatform.services.cache.FIFOExoCache
 
createObjectCacheInfo(long, Object) - Method in class org.exoplatform.services.cache.SimpleExoCache
 

D

DistributedCacheListener - Class in org.exoplatform.services.cache.impl
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sep 19, 2005
DistributedCacheListener(CommunicationService) - Constructor for class org.exoplatform.services.cache.impl.DistributedCacheListener
 

E

equals(Object) - Method in class org.exoplatform.services.cache.concurrent.Item
This is final on purpose, we rely on object equality in the concurrent has
ExoCache - Interface in org.exoplatform.services.cache
Created by The eXo Platform SAS.
ExoCacheConfig - Class in org.exoplatform.services.cache
This class defines the main configuration properties of an ExoCache
ExoCacheConfig() - Constructor for class org.exoplatform.services.cache.ExoCacheConfig
 
ExoCacheConfigPlugin - Class in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Jan 6, 2006
ExoCacheConfigPlugin(InitParams) - Constructor for class org.exoplatform.services.cache.ExoCacheConfigPlugin
 
ExoCacheFactory - Interface in org.exoplatform.services.cache
This class allows you to create a new instance of ExoCache Created by The eXo Platform SAS Author : eXoPlatform exo@exoplatform.com 15 juil. 2009
ExoCacheInitException - Exception in org.exoplatform.services.cache
An exception that represents any type of exception that prevent the initialization of the ExoCache Created by The eXo Platform SAS Author : eXoPlatform exo@exoplatform.com 15 juil. 2009
ExoCacheInitException(String) - Constructor for exception org.exoplatform.services.cache.ExoCacheInitException
ExoCacheInitException(Throwable) - Constructor for exception org.exoplatform.services.cache.ExoCacheInitException
ExoCacheInitException(String, Throwable) - Constructor for exception org.exoplatform.services.cache.ExoCacheInitException
ExpireKeyStartWithSelector - Class in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Thuannd nhudinhthuan@yahoo.com Apr 4, 2006
ExpireKeyStartWithSelector(String) - Constructor for class org.exoplatform.services.cache.ExpireKeyStartWithSelector
 

F

FIFOExoCache - Class in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sat, Sep 13, 2003 @ Time: 1:12:22 PM
FIFOExoCache() - Constructor for class org.exoplatform.services.cache.FIFOExoCache
 
FIFOExoCache(int) - Constructor for class org.exoplatform.services.cache.FIFOExoCache
 
FIFOExoCache(String, int) - Constructor for class org.exoplatform.services.cache.FIFOExoCache
 
FIFOExoCache.ObjectCacheInfoImpl - Class in org.exoplatform.services.cache
 
FIFOExoCache.ObjectCacheInfoImpl(long, Object) - Constructor for class org.exoplatform.services.cache.FIFOExoCache.ObjectCacheInfoImpl
 

G

get(Serializable) - Method in class org.exoplatform.services.cache.BaseExoCache
 
get(Serializable) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
get(Serializable) - Method in interface org.exoplatform.services.cache.ExoCache
Performs a lookup operation.
get() - Method in class org.exoplatform.services.cache.FIFOExoCache.ObjectCacheInfoImpl
 
get() - Method in interface org.exoplatform.services.cache.ObjectCacheInfo
 
getAllCacheInstances() - Method in interface org.exoplatform.services.cache.CacheService
 
getAllCacheInstances() - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
getCachedObjects() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getCachedObjects() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getCachedObjects() - Method in interface org.exoplatform.services.cache.ExoCache
Returns a list of cached object that are considered as valid when the method is called.
getCachedObjects() - Method in class org.exoplatform.services.cache.FIFOExoCache
 
getCacheHit() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getCacheHit() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getCacheHit() - Method in interface org.exoplatform.services.cache.ExoCache
 
getCacheInstance(String) - Method in interface org.exoplatform.services.cache.CacheService
 
getCacheInstance(String) - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
getCacheKey() - Method in class org.exoplatform.services.cache.impl.SynchronizeCacheMessage
 
getCacheMiss() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getCacheMiss() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getCacheMiss() - Method in interface org.exoplatform.services.cache.ExoCache
 
getCacheName() - Method in class org.exoplatform.services.cache.impl.SynchronizeCacheMessage
 
getCacheSize() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getCacheSize() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getCacheSize() - Method in interface org.exoplatform.services.cache.ExoCache
 
getCacheValue() - Method in class org.exoplatform.services.cache.impl.SynchronizeCacheMessage
 
getConfigs() - Method in class org.exoplatform.services.cache.ExoCacheConfigPlugin
 
getExpireTime() - Method in class org.exoplatform.services.cache.FIFOExoCache.ObjectCacheInfoImpl
 
getExpireTime() - Method in interface org.exoplatform.services.cache.ObjectCacheInfo
 
getExpireTime() - Method in class org.exoplatform.services.cache.SimpleExoCache.CacheSoftReference
 
getImplementation() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
getLabel() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getLabel() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getLabel() - Method in interface org.exoplatform.services.cache.ExoCache
 
getLabel() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
getLiveTime() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getLiveTime() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getLiveTime() - Method in interface org.exoplatform.services.cache.ExoCache
 
getLiveTime() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
getLiveTimeMillis() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getMaxSize() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getMaxSize() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getMaxSize() - Method in interface org.exoplatform.services.cache.ExoCache
 
getMaxSize() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
getName() - Method in class org.exoplatform.services.cache.BaseExoCache
 
getName() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
getName() - Method in interface org.exoplatform.services.cache.ExoCache
 
getName() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 

H

handle(Message) - Method in class org.exoplatform.services.cache.impl.SynchronizeCacheMessageHandler
 
hashCode() - Method in class org.exoplatform.services.cache.concurrent.Item
This is final on purpose, we rely on object equality in the concurrent has

I

IDENTIFIER - Static variable in class org.exoplatform.services.cache.impl.SynchronizeCacheMessageHandler
 
isDistributed() - Method in class org.exoplatform.services.cache.BaseExoCache
 
isDistributed() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
isDistributed() - Method in interface org.exoplatform.services.cache.ExoCache
 
isDistributed() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
isLogEnabled() - Method in class org.exoplatform.services.cache.BaseExoCache
 
isLogEnabled() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
isLogEnabled() - Method in interface org.exoplatform.services.cache.ExoCache
 
isLogEnabled() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
isRepicated() - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
isReplicated() - Method in class org.exoplatform.services.cache.BaseExoCache
 
isReplicated() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
isReplicated() - Method in interface org.exoplatform.services.cache.ExoCache
 
Item - Class in org.exoplatform.services.cache.concurrent
 
Item() - Constructor for class org.exoplatform.services.cache.concurrent.Item
 

L

localClear() - Method in class org.exoplatform.services.cache.BaseExoCache
 
localPut(Serializable, Object) - Method in class org.exoplatform.services.cache.BaseExoCache
 
localRemove(Serializable) - Method in class org.exoplatform.services.cache.BaseExoCache
 
LoggingCacheListener - Class in org.exoplatform.services.cache.impl
Created by The eXo Platform SAS Author : eXoPlatform exo@exoplatform.com Oct 4, 2008
LoggingCacheListener() - Constructor for class org.exoplatform.services.cache.impl.LoggingCacheListener
 

O

ObjectCacheInfo - Interface in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sep 19, 2005
onClearCache(ExoCache) - Method in interface org.exoplatform.services.cache.CacheListener
 
onClearCache(ExoCache) - Method in class org.exoplatform.services.cache.impl.DistributedCacheListener
 
onClearCache(ExoCache) - Method in class org.exoplatform.services.cache.impl.LoggingCacheListener
 
onExpire(ExoCache, Serializable, Object) - Method in interface org.exoplatform.services.cache.CacheListener
 
onExpire(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.DistributedCacheListener
 
onExpire(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.LoggingCacheListener
 
onGet(ExoCache, Serializable, Object) - Method in interface org.exoplatform.services.cache.CacheListener
 
onGet(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.DistributedCacheListener
 
onGet(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.LoggingCacheListener
 
onPut(ExoCache, Serializable, Object) - Method in interface org.exoplatform.services.cache.CacheListener
 
onPut(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.DistributedCacheListener
 
onPut(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.LoggingCacheListener
 
onRemove(ExoCache, Serializable, Object) - Method in interface org.exoplatform.services.cache.CacheListener
 
onRemove(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.DistributedCacheListener
 
onRemove(ExoCache, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.LoggingCacheListener
 
onSelect(ExoCache, Serializable, ObjectCacheInfo) - Method in interface org.exoplatform.services.cache.CachedObjectSelector
 
onSelect(ExoCache, Serializable, ObjectCacheInfo) - Method in class org.exoplatform.services.cache.ExpireKeyStartWithSelector
 
org.exoplatform.services.cache - package org.exoplatform.services.cache
 
org.exoplatform.services.cache.concurrent - package org.exoplatform.services.cache.concurrent
 
org.exoplatform.services.cache.impl - package org.exoplatform.services.cache.impl
 

P

put(Serializable, Object) - Method in class org.exoplatform.services.cache.BaseExoCache
 
put(Serializable, Object) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
put(Serializable, Object) - Method in interface org.exoplatform.services.cache.ExoCache
Performs a put in the cache.
putMap(Map<Serializable, Object>) - Method in class org.exoplatform.services.cache.BaseExoCache
For whole put of items set
putMap(Map<Serializable, Object>) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
putMap(Map<Serializable, Object>) - Method in interface org.exoplatform.services.cache.ExoCache
Performs a put of all the entries provided by the map argument.

Q

Queue<I extends Item> - Interface in org.exoplatform.services.cache.concurrent
The queue needed by the concurrent FIFO cache.

R

remove(Serializable) - Method in class org.exoplatform.services.cache.BaseExoCache
 
remove(Serializable) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
remove(I) - Method in interface org.exoplatform.services.cache.concurrent.Queue
Attempt to remove an item from the queue.
remove(I) - Method in class org.exoplatform.services.cache.concurrent.SynchronizedQueue
Attempt to remove an item from the queue.
remove(Serializable) - Method in interface org.exoplatform.services.cache.ExoCache
Removes an entry from the cache.
removeCachedObjects() - Method in class org.exoplatform.services.cache.BaseExoCache
 
removeCachedObjects() - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
removeCachedObjects() - Method in interface org.exoplatform.services.cache.ExoCache
Clears the cache and returns the list of cached object that are considered as valid when the method is called.
removeCachedObjects() - Method in class org.exoplatform.services.cache.FIFOExoCache
 
removeEldestEntry(Map.Entry) - Method in class org.exoplatform.services.cache.BaseExoCache
 

S

select(CachedObjectSelector) - Method in class org.exoplatform.services.cache.BaseExoCache
 
select(Serializable, ObjectCacheInfo) - Method in interface org.exoplatform.services.cache.CachedObjectSelector
 
select(CachedObjectSelector) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
select(CachedObjectSelector) - Method in interface org.exoplatform.services.cache.ExoCache
Selects a subset of the cache.
select(Serializable, ObjectCacheInfo) - Method in class org.exoplatform.services.cache.ExpireKeyStartWithSelector
 
setContext(ManagementContext) - Method in class org.exoplatform.services.cache.impl.CacheServiceManaged
 
setDistributed(boolean) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setDistributed(boolean) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setDistributed(boolean) - Method in interface org.exoplatform.services.cache.ExoCache
 
setDistributed(boolean) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setDistributedCacheListener(DistributedCacheListener) - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
setImplementation(String) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setLabel(String) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setLabel(String) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setLabel(String) - Method in interface org.exoplatform.services.cache.ExoCache
 
setLabel(String) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setLiveTime(long) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setLiveTime(long) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setLiveTime(long) - Method in interface org.exoplatform.services.cache.ExoCache
 
setLiveTime(long) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setLiveTimeMillis(long) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setLogEnabled(boolean) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setLogEnabled(boolean) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setLogEnabled(boolean) - Method in interface org.exoplatform.services.cache.ExoCache
 
setLogEnabled(boolean) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setMaxSize(int) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setMaxSize(int) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setMaxSize(int) - Method in interface org.exoplatform.services.cache.ExoCache
 
setMaxSize(int) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setName(String) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setName(String) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setName(String) - Method in interface org.exoplatform.services.cache.ExoCache
 
setName(String) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
setReplicated(boolean) - Method in class org.exoplatform.services.cache.BaseExoCache
 
setReplicated(boolean) - Method in class org.exoplatform.services.cache.concurrent.ConcurrentFIFOExoCache
 
setReplicated(boolean) - Method in interface org.exoplatform.services.cache.ExoCache
 
setReplicated(boolean) - Method in class org.exoplatform.services.cache.ExoCacheConfig
 
SimpleExoCache - Class in org.exoplatform.services.cache
Created by The eXo Platform SAS Author : Tuan Nguyen tuan08@users.sourceforge.net Sat, Sep 13, 2003 @ Time: 1:12:22 PM
SimpleExoCache(int) - Constructor for class org.exoplatform.services.cache.SimpleExoCache
 
SimpleExoCache() - Constructor for class org.exoplatform.services.cache.SimpleExoCache
 
SimpleExoCache(String, int) - Constructor for class org.exoplatform.services.cache.SimpleExoCache
 
SimpleExoCache.CacheSoftReference - Class in org.exoplatform.services.cache
 
SimpleExoCache.CacheSoftReference(long, Object) - Constructor for class org.exoplatform.services.cache.SimpleExoCache.CacheSoftReference
 
size() - Method in interface org.exoplatform.services.cache.concurrent.Queue
Returns the queue size
size() - Method in class org.exoplatform.services.cache.concurrent.SynchronizedQueue
 
synchronize(String, Serializable, Object) - Method in interface org.exoplatform.services.cache.CacheService
 
synchronize(String, Serializable, Object) - Method in class org.exoplatform.services.cache.impl.CacheServiceImpl
 
SynchronizeCacheMessage - Class in org.exoplatform.services.cache.impl
 
SynchronizeCacheMessage(String, Serializable, Serializable) - Constructor for class org.exoplatform.services.cache.impl.SynchronizeCacheMessage
 
SynchronizeCacheMessageHandler - Class in org.exoplatform.services.cache.impl
 
SynchronizeCacheMessageHandler(CacheService) - Constructor for class org.exoplatform.services.cache.impl.SynchronizeCacheMessageHandler
 
SynchronizedQueue<I extends Item> - Class in org.exoplatform.services.cache.concurrent
 
SynchronizedQueue(Log) - Constructor for class org.exoplatform.services.cache.concurrent.SynchronizedQueue
 

T

trim(int) - Method in interface org.exoplatform.services.cache.concurrent.Queue
Attempt to trim the queue.
trim(int) - Method in class org.exoplatform.services.cache.concurrent.SynchronizedQueue
Attempt to trim the queue.

A B C D E F G H I L O P Q R S T

Copyright © 2010 eXo Platform SAS. All Rights Reserved.