@@ -0,0 +1,1358 @@
+package de.crowdcode.speedauction.repository.inmemory;%0A%0A%0Aimport de.crowdcode.speedauction.commons.Identifiable;%0Aimport org.slf4j.Logger;%0Aimport org.slf4j.LoggerFactory;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.HashMap;%0Aimport java.util.List;%0Aimport java.util.Map;%0A%0Apublic class InMemoryStore%3CT extends Identifiable%3E %7B%0A%0A    private static final Logger logger = LoggerFactory%0A            .getLogger(InMemoryStore.class);%0A%0A    private Map%3CLong, T%3E store;%0A%0A    private Long sequence = 0l;%0A%0A    public InMemoryStore() %7B%0A        store = new HashMap%3CLong, T%3E();%0A    %7D%0A%0A    public void init() %7B%0A        logger.info(%22init in memory store%22);%0A        sequence = System.currentTimeMillis();%0A    %7D%0A%0A    public void save(T entity) %7B%0A        if (entity.getId() == null) %7B%0A            entity.setId(nextId());%0A        %7D%0A        store.put(entity.getId(), entity);%0A    %7D%0A%0A    public void delete(long id) %7B%0A        store.remove(id);%0A    %7D%0A%0A    public List%3CT%3E loadAll() %7B%0A        return new ArrayList%3CT%3E(store.values());%0A    %7D%0A%0A    public T load(long id) %7B%0A        return store.get(id);%0A    %7D%0A%0A    synchronized public long nextId() %7B%0A        return sequence++;%0A    %7D%0A%0A    public long getSequence() %7B%0A        return sequence;%0A    %7D%0A%0A    public void setSequence(long sequence) %7B%0A        this.sequence = sequence;%0A    %7D%0A%0A    public void clear() %7B%0A        store.clear();%0A    %7D%0A%7D

Add generic InMemoryStore