1 21 package com.db4o; 22 23 import com.db4o.inside.ix.*; 24 import com.db4o.inside.marshall.*; 25 import com.db4o.reflect.*; 26 27 30 public interface TypeHandler4 extends Indexable4 31 { 32 33 boolean canHold(ReflectClass claxx); 34 35 void cascadeActivation(Transaction a_trans, Object a_object, int a_depth, boolean a_activate); 36 37 ReflectClass classReflector(); 38 39 Object coerce(ReflectClass claxx, Object obj); 40 41 void copyValue(Object a_from, Object a_to); 43 44 void deleteEmbedded(MarshallerFamily mf, YapWriter a_bytes); 45 46 int getID(); 47 48 boolean equals(TypeHandler4 a_dataType); 50 boolean hasFixedLength(); 51 52 boolean indexNullHandling(); 53 54 int isSecondClass(); 55 56 69 void calculateLengths(Transaction trans, ObjectHeaderAttributes header, boolean topLevel, Object obj, boolean withIndirection); 70 71 Object indexEntryToObject(Transaction trans, Object indexEntry); 72 73 void prepareComparison(Transaction a_trans, Object obj); 74 75 ReflectClass primitiveClassReflector(); 76 77 Object read(MarshallerFamily mf, YapWriter writer, boolean redirect) throws CorruptionException; 78 79 Object readIndexEntry(MarshallerFamily mf, YapWriter writer) throws CorruptionException; 80 81 Object readQuery(Transaction trans, MarshallerFamily mf, boolean withRedirection, YapReader reader, boolean toArray) throws CorruptionException; 82 83 boolean supportsIndex(); 84 85 Object writeNew(MarshallerFamily mf, Object a_object, boolean topLevel, YapWriter a_bytes, boolean withIndirection, boolean restoreLinkOffset); 86 87 public int getTypeID (); 88 89 YapClass getYapClass(YapStream a_stream); 90 91 94 boolean readArray(Object array, YapReader reader); 95 96 void readCandidates(MarshallerFamily mf, YapReader reader, QCandidates candidates); 97 98 TypeHandler4 readArrayHandler(Transaction a_trans, MarshallerFamily mf, YapReader[] a_bytes); 99 100 103 boolean writeArray(Object array, YapReader reader); 104 105 QCandidate readSubCandidate(MarshallerFamily mf, YapReader reader, QCandidates candidates, boolean withIndirection); 106 107 void defrag(MarshallerFamily mf, ReaderPair readers, boolean redirect); 108 } 109 | Popular Tags |