@Override
  public void notifyEntryPut(PortalCache<K, V> portalCache, K key, V value, int timeToLive)
      throws PortalCacheException {

    if (!_replicatePuts) {
      return;
    }

    PortalCacheManager<K, V> portalCacheManager = portalCache.getPortalCacheManager();

    PortalCacheClusterEvent portalCacheClusterEvent =
        new PortalCacheClusterEvent(
            portalCacheManager.getName(),
            portalCache.getName(),
            key,
            PortalCacheClusterEventType.PUT);

    if (_replicatePutsViaCopy) {
      portalCacheClusterEvent.setElementValue(value);
      portalCacheClusterEvent.setTimeToLive(timeToLive);
    }

    PortalCacheClusterLinkUtil.sendEvent(portalCacheClusterEvent);
  }