public override object getStructFieldData(object data, StructField fieldRef)
 {
     return(((FieldInfoField)fieldRef).GetFieldValue(data));
 }
 public virtual object getStructFieldData(object data, StructField fieldRef)
 {
     throw new NotImplementedException();
 }
Beispiel #3
0
 public object setStructFieldData(object @struct, StructField field, object fieldValue)
 {
     OrcStruct orcStruct = (OrcStruct)@struct;
     int offset = ((Field)field).offset;
     // if the offset is bigger than our current number of fields, grow it
     if (orcStruct.getNumFields() <= offset)
     {
         orcStruct.setNumFields(offset + 1);
     }
     orcStruct.setFieldValue(offset, fieldValue);
     return @struct;
 }
Beispiel #4
0
            public override object getStructFieldData(object @object, StructField field)
            {
                if (@object == null)
                {
                    return null;
                }
                int offset = ((Field)field).offset;
                OrcStruct @struct = (OrcStruct)@object;
                if (offset >= @struct.fields.Length)
                {
                    return null;
                }

                return @struct.fields[offset];
            }
 public override object getStructFieldData(object data, StructField fieldRef)
 {
     // For performance don't check that that the fieldRef isn't recId everytime,
     // just assume that the caller used getAllStructFieldRefs and thus doesn't have that fieldRef
     return wrapped.getStructFieldData(data, fieldRef);
 }
 public RecIdStrippingObjectInspector(ObjectInspector oi, int rowIdColNum)
 {
     if (!(oi is StructObjectInspector))
     {
         throw new InvalidOperationException("Serious problem, expected a StructObjectInspector, " +
             "but got a " + oi.GetType().Name);
     }
     wrapped = (StructObjectInspector)oi;
     IList<StructField> wrappedFields = wrapped.getAllStructFieldRefs();
     fields = new List<StructField>(wrapped.getAllStructFieldRefs().Count);
     for (int i = 0; i < wrappedFields.Count; i++)
     {
         if (i == rowIdColNum)
         {
             recId = wrappedFields[i];
         }
         else
         {
             fields.Add(wrappedFields[i]);
         }
     }
 }