package net.ion.craken.node; import java.io.IOException; import java.util.List; import net.ion.framework.schedule.IExecutor; import org.apache.lucene.analysis.Analyzer; import org.infinispan.remoting.transport.Address; import org.infinispan.util.logging.Log; public interface Repository { public Repository start() throws IOException ; public Repository shutdown() ; public IExecutor executor() ; public ReadSession login(String wsname) throws IOException ; public ReadSession login(String wsname, Analyzer analyzer) throws IOException ; public ReadSession login(Credential credential, String wsname, Analyzer analyzer) throws IOException ; public <T> T getAttribute(String key, Class<T> clz) ; public Repository putAttribute(String key, Object value) ; public String addressId() ; public String memberId() ; public List<Address> memberAddress(); public Log getLogger() ; // public Repository defineWorkspace(String wsName) throws IOException; // public Repository createWorkspace(String string, OldFileConfigBuilder distMode) ; // public Central central(String wsName); // public RepositoryListener listener(); }