/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ package com.github.geophile.erdo.map.mergescan; import com.github.geophile.erdo.AbstractRecord; import com.github.geophile.erdo.map.MapCursor; public abstract class AbstractMultiRecord extends AbstractRecord { // Object interface @Override public String toString() { return key().toString(); } // AbstractRecord interface // Should be final, but needs to be overridden by TestMultiRecord @Override public long estimatedSizeBytes() { assert false; return -1L; } @Override public final AbstractRecord copy() { throw new UnsupportedOperationException(); } // AbstractMultiRecord interface public abstract void append(AbstractRecord record); public abstract MapCursor cursor(); // For use by subclasses protected AbstractMultiRecord(MultiRecordKey multiRecordKey) { super(multiRecordKey); } }