private object ReadFieldValue(ClassMetadata classMetadata, FieldMetadata field)
 {
     if (!classMetadata.SeekToField(this, field))
     {
         return(null);
     }
     return(field.Read(this));
 }
Beispiel #2
0
        private object ReadFieldValue(int id, FieldMetadata field)
        {
            ByteArrayBuffer buffer         = BufferFor(id);
            HandlerVersion  handlerVersion = field.ContainingClass().SeekToField(_transaction,
                                                                                 buffer, field);

            if (handlerVersion == HandlerVersion.Invalid)
            {
                return(null);
            }
            QueryingReadContext context = new QueryingReadContext(_transaction, handlerVersion
                                                                  ._number, buffer, id);

            return(field.Read(context));
        }
Beispiel #3
0
 // TODO: This is only used for Evaluations. Handling may need
 // to be different for collections also.
 internal virtual object Value(bool a_activate)
 {
     if (_member == null)
     {
         if (_fieldMetadata == null)
         {
             ReadThis(a_activate);
         }
         else
         {
             int offset = CurrentOffSet();
             _member = _fieldMetadata.Read(NewQueryingReadContext());
             Seek(offset);
             CheckInstanceOfCompare();
         }
     }
     return(_member);
 }
Beispiel #4
0
 private object ReadFieldValue(int id, FieldMetadata field)
 {
     var buffer = BufferFor(id);
     var handlerVersion = field.ContainingClass().SeekToField(_transaction,
         buffer, field);
     if (handlerVersion == HandlerVersion.Invalid)
     {
         return null;
     }
     var context = new QueryingReadContext(_transaction, handlerVersion
         ._number, buffer, id);
     return field.Read(context);
 }
Beispiel #5
0
 private object ReadFieldValue(ClassMetadata classMetadata, FieldMetadata field)
 {
     if (!classMetadata.SeekToField(this, field))
     {
         return null;
     }
     return field.Read(this);
 }