Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
a25793b
move old sdk under legacy
l0lawrence Apr 24, 2023
ad72024
gen typespec code
l0lawrence Apr 24, 2023
f81c227
naming changes from archboard
l0lawrence Apr 27, 2023
486735f
samples
l0lawrence Apr 27, 2023
1fa0d92
update patch naming
l0lawrence Apr 27, 2023
e284adf
update imports with new gen
l0lawrence Apr 27, 2023
5efd365
update samples
l0lawrence Apr 27, 2023
aebdf0c
update client naming on aio
l0lawrence Apr 27, 2023
276d51a
update receive op
l0lawrence Apr 27, 2023
81161a8
update async to close client
l0lawrence Apr 27, 2023
d419cf2
Merge branch 'main' of https://github.com/Azure/azure-sdk-for-python …
l0lawrence Apr 27, 2023
32efd54
update receive()
l0lawrence May 1, 2023
b1eeca8
update gen code
l0lawrence May 1, 2023
5634655
moving around samples
l0lawrence May 1, 2023
36976bd
updating samples
l0lawrence May 1, 2023
328a71a
update samples
l0lawrence May 1, 2023
ba088a2
update patch and samples
l0lawrence May 1, 2023
bdf3bc0
patch internalmodels
l0lawrence May 1, 2023
57c6ada
spacing
l0lawrence May 1, 2023
4100767
updating model patch
l0lawrence May 1, 2023
69a61e1
update patch models
l0lawrence May 1, 2023
594ba71
add both models back
l0lawrence May 1, 2023
abd97bc
update docstring
l0lawrence May 1, 2023
cb4d9a2
update docs
l0lawrence May 1, 2023
3429e60
updating patch for receive
l0lawrence May 2, 2023
9d7cf66
old EG models
l0lawrence May 2, 2023
199542a
add reject samples
l0lawrence May 2, 2023
8f77e83
patch
l0lawrence May 2, 2023
a31e9fa
update format
l0lawrence May 2, 2023
710f8c3
update patch
l0lawrence May 4, 2023
bdec4b8
eventgrid_client exceptions
l0lawrence May 4, 2023
5bca49d
update test imports
l0lawrence May 4, 2023
b9a4d6f
update total sample
l0lawrence May 4, 2023
b0e50c3
receive patch fix
l0lawrence May 4, 2023
135b0c7
add in more tests
l0lawrence May 4, 2023
19573e2
update test file
l0lawrence May 8, 2023
24b2535
remove locktoken model
l0lawrence May 9, 2023
9a12471
Merge branch 'main' of https://github.com/Azure/azure-sdk-for-python …
l0lawrence May 9, 2023
dc2d26c
remove LockToken in patch
l0lawrence May 9, 2023
cec8bd0
remove event delivery delay
l0lawrence May 11, 2023
a26c1e7
eg client exceptions
l0lawrence May 11, 2023
cf80540
.8.5 generation, and deliveryCount
l0lawrence May 12, 2023
c1f1ae7
rename sample
l0lawrence May 15, 2023
8538458
update version for beta
l0lawrence May 15, 2023
4e7b141
changelog
l0lawrence May 15, 2023
7713d3b
updating for gen
l0lawrence May 15, 2023
e9eab96
regen
l0lawrence May 16, 2023
36ac074
generate via commit
l0lawrence May 16, 2023
b58773e
publish result
l0lawrence May 16, 2023
459b403
fix docstring
l0lawrence May 16, 2023
e091bb9
publish docstring
l0lawrence May 16, 2023
eb50871
return type
l0lawrence May 16, 2023
1edd9ac
publish result
l0lawrence May 16, 2023
7fb9946
return publish result -- is none
l0lawrence May 16, 2023
f1f18f5
format
l0lawrence May 16, 2023
1646322
update Publish result model
l0lawrence May 16, 2023
0da1768
deliverycount patch
l0lawrence May 16, 2023
7ef5bbe
update from main
l0lawrence May 16, 2023
07da8c7
Merge branch 'feature/eventgrid' of https://github.com/Azure/azure-sd…
l0lawrence May 16, 2023
ed4c53c
add copyright
l0lawrence May 16, 2023
da155ae
added to readme
l0lawrence May 16, 2023
11708ec
remove from readme
l0lawrence May 16, 2023
6acc4bc
force publish_result response
l0lawrence May 16, 2023
5c97aed
update patch tp unindent
l0lawrence May 16, 2023
994ab41
cspell
l0lawrence May 16, 2023
060c9ce
update mypy.ini
l0lawrence May 16, 2023
d72039c
import order
l0lawrence May 16, 2023
e16a255
mark livetest
l0lawrence May 16, 2023
df0430f
update operations init
l0lawrence May 16, 2023
830fd1d
rename async
l0lawrence May 16, 2023
30bc939
mypy
l0lawrence May 16, 2023
fb0479e
ignore mypy
l0lawrence May 16, 2023
2a050e1
pylint
l0lawrence May 16, 2023
26dfdef
pylint
l0lawrence May 16, 2023
37e7341
ignore pylint for now to avoid gen code errors
l0lawrence May 16, 2023
99bbe93
ignore samples until ARM setup
l0lawrence May 17, 2023
bcf7d34
update patches
l0lawrence May 17, 2023
4927ac1
remove publish result
l0lawrence May 17, 2023
4bde87e
remove PublishResult
l0lawrence May 17, 2023
78605f2
remove publishresult
l0lawrence May 17, 2023
b050474
comma
l0lawrence May 17, 2023
e0ff0ed
update publishResult
l0lawrence May 18, 2023
34ff7a3
Merge branch 'llaw/build_eventgrid' of https://github.com/l0lawrence/…
l0lawrence May 18, 2023
4f26e01
change to .value
l0lawrence May 18, 2023
80f0384
gen code " to '
l0lawrence May 18, 2023
58b4d7e
remove comment
l0lawrence May 18, 2023
fea7384
ran black
l0lawrence May 18, 2023
c557de0
update changelog
l0lawrence May 19, 2023
522e90c
update sample readme
l0lawrence May 19, 2023
7349da4
gen code without query name
l0lawrence May 19, 2023
204a6d6
gen code
l0lawrence May 19, 2023
adb9f45
update tsp commit
l0lawrence May 19, 2023
0fdc51f
remove publishresult
l0lawrence May 19, 2023
1442893
readme disclaimer
l0lawrence May 19, 2023
b820027
update changelog
l0lawrence May 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
add reject samples
  • Loading branch information
l0lawrence committed May 2, 2023
commit 199542a8573364861fd42a17077a023ac4120fc5
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import os
import asyncio
from azure.core.credentials import AzureKeyCredential
from azure.eventgrid.aio import EventGridClient
from azure.eventgrid.models import *
from azure.core.exceptions import HttpResponseError

EVENTGRID_KEY = os.environ.get("EVENTGRID_KEY")
EVENTGRID_ENDPOINT = os.environ.get("EVENTGRID_ENDPOINT")
TOPIC_NAME = os.environ.get("TOPIC_NAME")
EVENT_SUBSCRIPTION_NAME = os.environ.get("EVENT_SUBSCRIPTION_NAME")

# Create a client
client = EventGridClient(EVENTGRID_ENDPOINT, AzureKeyCredential(EVENTGRID_KEY))


async def run():
# Release a LockToken
try:
async with client:
tokens = RejectOptions(lock_tokens=["token"])
reject_events = await client.reject_cloud_events(
topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=tokens
)
print(reject_events)
except HttpResponseError:
raise



if __name__ == '__main__':
asyncio.run(run())
2 changes: 1 addition & 1 deletion sdk/eventgrid/azure-eventgrid/samples/preview_samples.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ if len(acknowledge_events) > 0:

if len(reject_events) > 0:
try:
reeject_result = client.reject_events(topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=reject_events)
reject_result = client.reject_events(topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=reject_events)
except HttpResponseError:
raise

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
import os
import asyncio
from azure.core.credentials import AzureKeyCredential
from azure.eventgrid.models import *
from azure.core.messaging import CloudEvent
from azure.core.exceptions import HttpResponseError
from azure.eventgrid import EventGridClient

EVENTGRID_KEY = os.environ.get("EVENTGRID_KEY")
EVENTGRID_ENDPOINT = os.environ.get("EVENTGRID_ENDPOINT")
TOPIC_NAME = os.environ.get("TOPIC_NAME")
EVENT_SUBSCRIPTION_NAME = os.environ.get("EVENT_SUBSCRIPTION_NAME")


# Create a client
client = EventGridClient(EVENTGRID_ENDPOINT, AzureKeyCredential(EVENTGRID_KEY))


cloud_event_reject = CloudEvent(data="reject", source="https://example.com", type="example")
cloud_event_release = CloudEvent(data="release", source="https://example.com", type="example")
cloud_event_ack = CloudEvent(data="acknowledge", source="https://example.com", type="example")

# Publish a CloudEvent
try:
client.publish_cloud_events(topic_name=TOPIC_NAME, body=cloud_event_reject)
except HttpResponseError:
raise

# Publish a list of CloudEvents
try:
list_of_cloud_events = [cloud_event_release, cloud_event_ack]
client.publish_cloud_events(topic_name=TOPIC_NAME, body=list_of_cloud_events)
except HttpResponseError:
raise

# Receive Published Cloud Events
try:
receive_results = client.receive_cloud_events(
topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, max_events=10, max_wait_time=10
)
except HttpResponseError:
raise

# Iterate through the results and collect the lock tokens for events we want to release/acknowledge/reject:

release_events = []
acknowledge_events = []
reject_events = []

for detail in receive_results.get("value"):
cloud_event = detail.get("event")
broker_properties = detail.get("brokerProperties")
if cloud_event.data == "release":
release_events.append(broker_properties.get("lockToken"))
elif cloud_event.data == "acknowledge"
acknowledge_events.append(broker_properties.get("lockToken"))
else:
reject_events.append(broker_properties.get("lockToken"))

# Release/Acknowledge/Reject events

if len(release_events) > 0:
try:
release_result = client.release_events(topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=release_events)
except HttpResponseError:
raise

for succeeded_lock_token in release_result.get("succeeded_lock_tokens"):
print(f"Succeeded Lock Token:{succeeded_lock_token}")

if len(acknowledge_events) > 0:
try:
ack_result = client.acknowledge_events(topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=acknowledge_events)
except HttpResponseError:
raise

for succeeded_lock_token in ack_result.get("succeeded_lock_tokens"):
print(f"Succeeded Lock Token:{succeeded_lock_token}")

if len(reject_events) > 0:
try:
reject_result = client.reject_events(topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=reject_events)
except HttpResponseError:
raise

for succeeded_lock_token in reject_result.get("succeeded_lock_tokens"):
print(f"Succeeded Lock Token:{succeeded_lock_token}")
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import os
from azure.core.credentials import AzureKeyCredential
from azure.eventgrid import EventGridClient
from azure.eventgrid.models import *
from azure.core.exceptions import HttpResponseError

EVENTGRID_KEY = os.environ.get("EVENTGRID_KEY")
EVENTGRID_ENDPOINT = os.environ.get("EVENTGRID_ENDPOINT")
TOPIC_NAME = os.environ.get("TOPIC_NAME")
EVENT_SUBSCRIPTION_NAME = os.environ.get("EVENT_SUBSCRIPTION_NAME")

# Create a client
client = EventGridClient(EVENTGRID_ENDPOINT, AzureKeyCredential(EVENTGRID_KEY))

# Release a LockToken
try:
lock_tokens = RejectOptions(lock_tokens=["token"])
reject_events = client.reject_cloud_events(
topic_name=TOPIC_NAME, event_subscription_name=EVENT_SUBSCRIPTION_NAME, lock_tokens=lock_tokens
)
print(reject_events)
except HttpResponseError:
raise