|
1 |
| -// Copyright 2023 The MathWorks, Inc. |
| 1 | +// Copyright 2023-2024 The MathWorks, Inc. |
2 | 2 |
|
3 | 3 | #include "opentelemetry-matlab/sdk/trace/TracerProviderProxy.h"
|
4 | 4 | #include "opentelemetry-matlab/sdk/trace/SpanProcessorProxy.h"
|
|
14 | 14 | #include "opentelemetry/trace/tracer_provider.h"
|
15 | 15 | #include "opentelemetry/trace/noop.h"
|
16 | 16 | #include "opentelemetry/common/key_value_iterable_view.h"
|
| 17 | +#include "opentelemetry/nostd/shared_ptr.h" |
17 | 18 |
|
18 | 19 | namespace trace_api = opentelemetry::trace;
|
19 | 20 | namespace trace_sdk = opentelemetry::sdk::trace;
|
@@ -53,9 +54,11 @@ libmexclass::proxy::MakeResult TracerProviderProxy::make(const libmexclass::prox
|
53 | 54 |
|
54 | 55 | auto resource_custom = createResource(resourcenames_mda, resourcevalues_mda);
|
55 | 56 |
|
56 |
| - out = std::make_shared<TracerProviderProxy>(nostd::shared_ptr<trace_api::TracerProvider>( |
57 |
| - std::move(trace_sdk::TracerProviderFactory::Create(std::move(processor), resource_custom, |
58 |
| - std::move(sampler))))); |
| 57 | + std::unique_ptr<trace_sdk::TracerProvider> p_sdk = trace_sdk::TracerProviderFactory::Create(std::move(processor), |
| 58 | + resource_custom, std::move(sampler)); |
| 59 | + nostd::shared_ptr<trace_sdk::TracerProvider> p_sdk_shared(std::move(p_sdk)); |
| 60 | + nostd::shared_ptr<trace_api::TracerProvider> p_api_shared(std::move(p_sdk_shared)); |
| 61 | + out = std::make_shared<TracerProviderProxy>(p_api_shared); |
59 | 62 | }
|
60 | 63 | return out;
|
61 | 64 | }
|
|
0 commit comments