public void writeField(
                ExportContext ctx, ExportingReflectiveTypeData sourceTypeData, object source)
            {
                if (_fieldId == -1) {
                _fieldId = sourceTypeData.getNextFieldId();
                //                this.logInfo("Writing new field",
                //                        "fieldId", _fieldId,
                //                        "name", _name,
                //                        "type", _type);
                ctx.writeId(_fieldId);
                ctx.writeString(_name);
                ctx.writeType(_type);

                } else {
                ctx.writeId(_fieldId);
                }
                ctx.writeObject(_field.GetValue(source), _type);
            }