All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.clickntap.tool.cache.MemoryCache Maven / Gradle / Ivy

There is a newer version: 1.189
Show newest version
package com.clickntap.tool.cache;

import java.io.Serializable;

public class MemoryCache implements Cache {

  private MemoryLruMap memory;

  public MemoryCache() {
    memory = new MemoryLruMap(999999);
  }

  public Serializable get(Serializable key) throws Exception {
    synchronized (memory) {
      return memory.get(key);
    }
  }

  public Serializable put(Serializable key, Serializable value) throws Exception {
    if (contains(key))
      return value;
    synchronized (memory) {
      return memory.put(key, value);
    }
  }

  public void remove(Serializable key) throws Exception {
    synchronized (memory) {
      memory.remove(key);
    }
  }

  public void removeAll() throws Exception {
    synchronized (memory) {
      memory.clear();
    }
  }

  public boolean contains(Serializable key) throws Exception {
    synchronized (memory) {
      return memory.containsKey(key);
    }
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy