Skip to content

Commit 143d2ff

Browse files
authored
[Corehttp] Add code snippets to docstrings (#33207)
Signed-off-by: Paul Van Eck <[email protected]>
1 parent 757f877 commit 143d2ff

File tree

4 files changed

+68
-31
lines changed

4 files changed

+68
-31
lines changed

sdk/core/corehttp/corehttp/runtime/_pipeline_client.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,15 @@ class PipelineClient(PipelineClientBase, Generic[HTTPRequestType, HTTPResponseTy
6262
6363
:ivar pipeline: The Pipeline object associated with the client.
6464
:vartype pipeline: ~corehttp.runtime.pipeline.Pipeline or None
65+
66+
.. admonition:: Example:
67+
68+
.. literalinclude:: ../samples/sample_pipeline_client.py
69+
:start-after: [START build_pipeline_client]
70+
:end-before: [END build_pipeline_client]
71+
:language: python
72+
:dedent: 4
73+
:caption: Builds the pipeline client.
6574
"""
6675

6776
def __init__(

sdk/core/corehttp/corehttp/runtime/_pipeline_client_async.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,15 @@ class AsyncPipelineClient(
141141
142142
:ivar pipeline: The Pipeline object associated with the client.
143143
:vartype pipeline: ~corehttp.runtime.pipeline.Pipeline or None
144+
145+
.. admonition:: Example:
146+
147+
.. literalinclude:: ../samples/sample_async_pipeline_client.py
148+
:start-after: [START build_async_pipeline_client]
149+
:end-before: [END build_async_pipeline_client]
150+
:language: python
151+
:dedent: 4
152+
:caption: Builds the async pipeline client.
144153
"""
145154

146155
def __init__(

sdk/core/corehttp/samples/sample_async_pipeline_client.py

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,30 +23,43 @@
2323
SansIOHTTPPolicy,
2424
HeadersPolicy,
2525
UserAgentPolicy,
26-
ContentDecodePolicy,
2726
AsyncRetryPolicy,
28-
NetworkTraceLoggingPolicy,
2927
)
3028

3129

32-
async def run():
30+
async def sample_pipeline_client():
31+
# [START build_async_pipeline_client]
32+
from corehttp.runtime import AsyncPipelineClient
33+
from corehttp.rest import HttpRequest, AsyncHttpResponse
34+
from corehttp.runtime.policies import (
35+
AsyncHTTPPolicy,
36+
SansIOHTTPPolicy,
37+
HeadersPolicy,
38+
UserAgentPolicy,
39+
AsyncRetryPolicy,
40+
)
41+
3342
policies: Iterable[Union[AsyncHTTPPolicy, SansIOHTTPPolicy]] = [
3443
HeadersPolicy(),
3544
UserAgentPolicy("myuseragent"),
36-
ContentDecodePolicy(),
3745
AsyncRetryPolicy(),
38-
NetworkTraceLoggingPolicy(),
3946
]
4047
client: AsyncPipelineClient[HttpRequest, AsyncHttpResponse] = AsyncPipelineClient(
4148
"https://bing.com", policies=policies
4249
)
4350
request = HttpRequest("GET", "https://bing.com")
4451
async with client:
4552
response = await client.send_request(request)
53+
# [END build_async_pipeline_client]
54+
4655
pipeline_response = await client.pipeline.run(request)
4756
print(response)
4857
print(pipeline_response)
4958

5059

60+
async def main():
61+
await sample_pipeline_client()
62+
63+
5164
if __name__ == "__main__":
52-
asyncio.run(run())
65+
asyncio.run(main())

sdk/core/corehttp/samples/sample_pipeline_client.py

Lines changed: 31 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -15,28 +15,34 @@
1515
"""
1616

1717
from typing import Iterable, Union
18-
from corehttp.runtime import PipelineClient
19-
from corehttp.rest import HttpRequest, HttpResponse
20-
from corehttp.runtime.policies import (
21-
HTTPPolicy,
22-
SansIOHTTPPolicy,
23-
HeadersPolicy,
24-
UserAgentPolicy,
25-
ContentDecodePolicy,
26-
RetryPolicy,
27-
NetworkTraceLoggingPolicy,
28-
)
29-
30-
policies: Iterable[Union[HTTPPolicy, SansIOHTTPPolicy]] = [
31-
HeadersPolicy(),
32-
UserAgentPolicy("myuseragent"),
33-
ContentDecodePolicy(),
34-
RetryPolicy(),
35-
NetworkTraceLoggingPolicy(),
36-
]
37-
38-
client: PipelineClient[HttpRequest, HttpResponse] = PipelineClient("https://bing.com", policies=policies)
39-
request = HttpRequest("GET", "https://bing.com")
40-
response = client.send_request(request)
41-
pipeline_response = client.pipeline.run(request)
42-
print(response)
18+
19+
20+
def sample_pipeline_client():
21+
# [START build_pipeline_client]
22+
from corehttp.runtime import PipelineClient
23+
from corehttp.rest import HttpRequest, HttpResponse
24+
from corehttp.runtime.policies import (
25+
HTTPPolicy,
26+
SansIOHTTPPolicy,
27+
HeadersPolicy,
28+
UserAgentPolicy,
29+
RetryPolicy,
30+
)
31+
32+
policies: Iterable[Union[HTTPPolicy, SansIOHTTPPolicy]] = [
33+
HeadersPolicy(),
34+
UserAgentPolicy("myuseragent"),
35+
RetryPolicy(),
36+
]
37+
38+
client: PipelineClient[HttpRequest, HttpResponse] = PipelineClient("https://bing.com", policies=policies)
39+
request = HttpRequest("GET", "https://bing.com")
40+
response = client.send_request(request)
41+
# [END build_pipeline_client]
42+
43+
pipeline_response = client.pipeline.run(request)
44+
print(response)
45+
46+
47+
if __name__ == "__main__":
48+
sample_pipeline_client()

0 commit comments

Comments
 (0)