1 21 package com.db4o; 22 23 import com.db4o.foundation.*; 24 import com.db4o.inside.marshall.*; 25 import com.db4o.reflect.*; 26 27 28 34 public abstract class YapIndependantType implements TypeHandler4 { 35 final YapStream _stream; 36 37 public YapIndependantType(YapStream stream) { 38 _stream = stream; 39 } 40 41 42 public Object coerce(ReflectClass claxx, Object obj) { 43 return canHold(claxx) ? obj : No4.INSTANCE; 44 } 45 46 public final void copyValue(Object a_from, Object a_to){ 47 } 49 50 public abstract void deleteEmbedded(MarshallerFamily mf, YapWriter a_bytes); 51 52 public boolean hasFixedLength(){ 53 return false; 54 } 55 56 public final int linkLength(){ 57 58 63 return YapConst.INT_LENGTH + YapConst.ID_LENGTH; 64 } 65 66 public final ReflectClass primitiveClassReflector(){ 67 return null; 68 } 69 70 public boolean readArray(Object array, YapReader reader) { 71 return false; 72 } 73 74 public Object readIndexEntry(MarshallerFamily mf, YapWriter a_writer) throws CorruptionException{ 75 return read(mf, a_writer, true); 76 } 77 78 public boolean writeArray(Object array, YapReader reader) { 79 return false; 80 } 81 82 public abstract boolean isGreater(Object obj); 84 public abstract YapComparable prepareComparison(Object obj); 85 public abstract int compareTo(Object obj); 86 public abstract boolean isEqual(Object obj); 87 public abstract boolean isSmaller(Object obj); 88 89 public abstract Object comparableObject(Transaction trans, Object indexEntry); 90 public abstract Object readIndexEntry(YapReader a_reader); 91 public abstract void writeIndexEntry(YapReader a_writer, Object a_object); 92 93 public abstract void defrag(MarshallerFamily mf, ReaderPair readers, boolean redirect); 94 } 95 | Popular Tags |