public void JaegerThriftOperationSamplingStrategy_FromThrift() { var pss = new JaegerThriftProbabilisticSamplingStrategy(0.75); var strat = new JaegerThriftOperationSamplingStrategy("opName", pss); var from = strat.FromThrift(); Assert.Equal(strat.Operation, from.Operation); Assert.Equal(pss.SamplingRate, from.ProbabilisticSampling.SamplingRate); }
public OperationSamplingStrategy DeepCopy() { var tmp4 = new OperationSamplingStrategy(); if ((Operation != null)) { tmp4.Operation = this.Operation; } if ((ProbabilisticSampling != null)) { tmp4.ProbabilisticSampling = (global::Jaeger.Thrift.Agent.ProbabilisticSamplingStrategy) this.ProbabilisticSampling.DeepCopy(); } return(tmp4); }
public async Task ReadAsync(TProtocol iprot, CancellationToken cancellationToken) { iprot.IncrementRecursionDepth(); try { bool isset_defaultSamplingProbability = false; bool isset_defaultLowerBoundTracesPerSecond = false; bool isset_perOperationStrategies = false; TField field; await iprot.ReadStructBeginAsync(cancellationToken); while (true) { field = await iprot.ReadFieldBeginAsync(cancellationToken); if (field.Type == TType.Stop) { break; } switch (field.ID) { case 1: if (field.Type == TType.Double) { DefaultSamplingProbability = await iprot.ReadDoubleAsync(cancellationToken); isset_defaultSamplingProbability = true; } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 2: if (field.Type == TType.Double) { DefaultLowerBoundTracesPerSecond = await iprot.ReadDoubleAsync(cancellationToken); isset_defaultLowerBoundTracesPerSecond = true; } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 3: if (field.Type == TType.List) { { PerOperationStrategies = new List <OperationSamplingStrategy>(); TList _list0 = await iprot.ReadListBeginAsync(cancellationToken); for (int _i1 = 0; _i1 < _list0.Count; ++_i1) { OperationSamplingStrategy _elem2; _elem2 = new OperationSamplingStrategy(); await _elem2.ReadAsync(iprot, cancellationToken); PerOperationStrategies.Add(_elem2); } await iprot.ReadListEndAsync(cancellationToken); } isset_perOperationStrategies = true; } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; case 4: if (field.Type == TType.Double) { DefaultUpperBoundTracesPerSecond = await iprot.ReadDoubleAsync(cancellationToken); } else { await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); } break; default: await TProtocolUtil.SkipAsync(iprot, field.Type, cancellationToken); break; } await iprot.ReadFieldEndAsync(cancellationToken); } await iprot.ReadStructEndAsync(cancellationToken); if (!isset_defaultSamplingProbability) { throw new TProtocolException(TProtocolException.INVALID_DATA); } if (!isset_defaultLowerBoundTracesPerSecond) { throw new TProtocolException(TProtocolException.INVALID_DATA); } if (!isset_perOperationStrategies) { throw new TProtocolException(TProtocolException.INVALID_DATA); } } finally { iprot.DecrementRecursionDepth(); } }