/** | |
* Copyright (c) 2004 - 2011 Eike Stepper (Berlin, Germany) and others. | |
* All rights reserved. This program and the accompanying materials | |
* are made available under the terms of the Eclipse Public License v1.0 | |
* which accompanies this distribution, and is available at | |
* http://www.eclipse.org/legal/epl-v10.html | |
* | |
* Contributors: | |
* Eike Stepper - initial API and implementation | |
*/ | |
package org.eclipse.emf.cdo.server.db; | |
import org.eclipse.emf.cdo.common.id.CDOID; | |
import org.eclipse.emf.cdo.common.id.CDOID.ObjectType; | |
import org.eclipse.emf.cdo.common.protocol.CDODataInput; | |
import org.eclipse.emf.cdo.common.protocol.CDODataOutput; | |
import org.eclipse.emf.cdo.common.revision.CDORevision; | |
import org.eclipse.emf.cdo.server.db.mapping.ITypeMapping; | |
import org.eclipse.net4j.db.DBType; | |
import org.eclipse.net4j.util.om.monitor.OMMonitor; | |
import java.io.IOException; | |
import java.sql.Connection; | |
import java.sql.PreparedStatement; | |
import java.sql.ResultSet; | |
import java.sql.SQLException; | |
import java.util.Comparator; | |
import java.util.Set; | |
/** | |
* @author Eike Stepper | |
* @since 4.0 | |
* @noextend This interface is not intended to be extended by clients. | |
* @noimplement This interface is not intended to be implemented by clients. | |
*/ | |
public interface IIDHandler extends Comparator<CDOID> | |
{ | |
public IDBStore getStore(); | |
public DBType getDBType(); | |
public Set<ObjectType> getObjectIDTypes(); | |
public ITypeMapping getObjectTypeMapping(); | |
public CDOID createCDOID(String val); | |
public boolean isLocalCDOID(CDOID id); | |
public CDOID getLastObjectID(); | |
public void setLastObjectID(CDOID lastObjectID); | |
/** | |
* @since 4.1 | |
*/ | |
public void adjustLastObjectID(CDOID maxID); | |
public CDOID getNextLocalObjectID(); | |
public void setNextLocalObjectID(CDOID nextLocalObjectID); | |
public CDOID getNextCDOID(CDORevision revision); | |
public void appendCDOID(StringBuilder builder, CDOID id); | |
public void setCDOID(PreparedStatement stmt, int column, CDOID id) throws SQLException; | |
public void setCDOID(PreparedStatement stmt, int column, CDOID id, long commitTime) throws SQLException; | |
public CDOID getCDOID(ResultSet resultSet, int column) throws SQLException; | |
public CDOID getCDOID(ResultSet resultSet, String name) throws SQLException; | |
public CDOID getMinCDOID(); | |
public CDOID getMaxCDOID(); | |
public CDOID mapURI(IDBStoreAccessor accessor, String uri, long commitTime); | |
public String unmapURI(IDBStoreAccessor accessor, CDOID id); | |
public void rawExport(Connection connection, CDODataOutput out, long fromCommitTime, long toCommitTime) | |
throws IOException; | |
public void rawImport(Connection connection, CDODataInput in, long fromCommitTime, long toCommitTime, OMMonitor fork) | |
throws IOException; | |
} |