예제 #1
0
 private Value CheckKind(ValueTypeOneofCase expectedCase)
 {
     if (ValueTypeCase != expectedCase)
     {
         throw new InvalidOperationException($"Cannot convert value; expected kind {expectedCase}; was {ValueTypeCase}");
     }
     return(this);
 }
예제 #2
0
 private static Value CheckKindForNonNullable(Value value, ValueTypeOneofCase expectedCase)
 {
     GaxPreconditions.CheckNotNull(value, nameof(value));
     if (value.ValueTypeCase != expectedCase)
     {
         throw new InvalidOperationException($"Cannot convert value; expected kind {expectedCase}; was {value.ValueTypeCase}");
     }
     return(value);
 }
예제 #3
0
 private static Value CheckKindForNonNullable(Value value, ValueTypeOneofCase expectedCase)
 {
     if (value == null)
     {
         throw new ArgumentNullException(nameof(value));
     }
     if (value.ValueTypeCase != expectedCase)
     {
         throw new InvalidOperationException($"Cannot convert value; expected kind {expectedCase}; was {value.ValueTypeCase}");
     }
     return(value);
 }
예제 #4
0
        private Value CheckKind(ValueTypeOneofCase expectedCase)
        {
            var typeCase = ValueTypeCase;

            // Treat a value of type Null as if it were a null reference.
            if (typeCase == ValueTypeOneofCase.NullValue)
            {
                return(null);
            }
            if (typeCase != expectedCase)
            {
                throw new InvalidOperationException($"Cannot convert value; expected kind {expectedCase}; was {ValueTypeCase}");
            }
            return(this);
        }
예제 #5
0
 public void ClearValueType()
 {
     valueTypeCase_ = ValueTypeOneofCase.None;
     valueType_     = null;
 }
예제 #6
0
        public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    input.SkipLastField();
                    break;

                case 8: {
                    BooleanValue = input.ReadBool();
                    break;
                }

                case 16: {
                    IntegerValue = input.ReadInt64();
                    break;
                }

                case 25: {
                    DoubleValue = input.ReadDouble();
                    break;
                }

                case 42: {
                    ReferenceValue = input.ReadString();
                    break;
                }

                case 50: {
                    global::Google.Cloud.Firestore.V1Beta1.MapValue subBuilder = new global::Google.Cloud.Firestore.V1Beta1.MapValue();
                    if (valueTypeCase_ == ValueTypeOneofCase.MapValue)
                    {
                        subBuilder.MergeFrom(MapValue);
                    }
                    input.ReadMessage(subBuilder);
                    MapValue = subBuilder;
                    break;
                }

                case 66: {
                    global::Google.Type.LatLng subBuilder = new global::Google.Type.LatLng();
                    if (valueTypeCase_ == ValueTypeOneofCase.GeoPointValue)
                    {
                        subBuilder.MergeFrom(GeoPointValue);
                    }
                    input.ReadMessage(subBuilder);
                    GeoPointValue = subBuilder;
                    break;
                }

                case 74: {
                    global::Google.Cloud.Firestore.V1Beta1.ArrayValue subBuilder = new global::Google.Cloud.Firestore.V1Beta1.ArrayValue();
                    if (valueTypeCase_ == ValueTypeOneofCase.ArrayValue)
                    {
                        subBuilder.MergeFrom(ArrayValue);
                    }
                    input.ReadMessage(subBuilder);
                    ArrayValue = subBuilder;
                    break;
                }

                case 82: {
                    global::Google.Protobuf.WellKnownTypes.Timestamp subBuilder = new global::Google.Protobuf.WellKnownTypes.Timestamp();
                    if (valueTypeCase_ == ValueTypeOneofCase.TimestampValue)
                    {
                        subBuilder.MergeFrom(TimestampValue);
                    }
                    input.ReadMessage(subBuilder);
                    TimestampValue = subBuilder;
                    break;
                }

                case 88: {
                    valueType_     = input.ReadEnum();
                    valueTypeCase_ = ValueTypeOneofCase.NullValue;
                    break;
                }

                case 138: {
                    StringValue = input.ReadString();
                    break;
                }

                case 146: {
                    BytesValue = input.ReadBytes();
                    break;
                }
                }
            }
        }