Skip to main content Inicio Creadores beko2210 firstbrain azure-eventgrid-java
azure-eventgrid-java Build event-driven applications with Azure Event Grid SDK for Java. Use when publishing events, implementing pub/sub patterns, or integrating with Azure services via events.
Ir a la instalación Skills Marketplace Descubre y explora habilidades de IA creadas por la comunidad.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Copiar promptMostrar detalles del prompt Un comando directo omite el prompt de revisión. Revisa el origen antes de ejecutarlo.
npx skills add https://github.com/BEKO2210/Firstbrain --skill azure-eventgrid-javaEl comando permanece en una sola línea. Desplázate horizontalmente para revisarlo antes de copiarlo.
¿Prefieres una copia local? Descarga los archivos que SkillsMP tiene disponibles ahora.
Descargar Zip Descargando... Ocupaciones relacionadas SOC
Basado en la clasificación ocupacional SOC
name azure-eventgrid-java description Build event-driven applications with Azure Event Grid SDK for Java. Use when publishing events, implementing pub/sub patterns, or integrating with Azure services via events. type skill created 2026-02-27T00:00:00.000Z domain cloud-infrastructure category azure risk unknown source community tags ["skill","cloud-infrastructure","azure","eventgrid"]
Azure Event Grid SDK for Java
Build event-driven applications using the Azure Event Grid SDK for Java.
Installation
<dependency >
<groupId > com.azure</groupId >
<artifactId > azure-messaging-eventgrid</artifactId >
<version > 4.27.0</version >
</dependency >
Client Creation
EventGridPublisherClient
import com.azure.messaging.eventgrid.EventGridPublisherClient;
import com.azure.messaging.eventgrid.EventGridPublisherClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
EventGridPublisherClient<EventGridEvent> client = new EventGridPublisherClientBuilder ()
.endpoint("<topic-endpoint>" )
.credential(new AzureKeyCredential ("<access-key>" ))
.buildEventGridEventPublisherClient();
EventGridPublisherClient<CloudEvent> cloudClient = new EventGridPublisherClientBuilder ()
.endpoint("<topic-endpoint>" )
.credential(new AzureKeyCredential ("<access-key>" ))
.buildCloudEventPublisherClient();
With DefaultAzureCredential
import com.azure.identity.DefaultAzureCredentialBuilder;
EventGridPublisherClient<EventGridEvent> client = new EventGridPublisherClientBuilder ()
.endpoint("<topic-endpoint>" )
.credential( ().build())
.buildEventGridEventPublisherClient();
new
DefaultAzureCredentialBuilder
Async Client import com.azure.messaging.eventgrid.EventGridPublisherAsyncClient;
EventGridPublisherAsyncClient<EventGridEvent> asyncClient = new EventGridPublisherClientBuilder ()
.endpoint("<topic-endpoint>" )
.credential(new AzureKeyCredential ("<access-key>" ))
.buildEventGridEventPublisherAsyncClient();
Event Types Type Description EventGridEventAzure Event Grid native schema CloudEventCNCF CloudEvents 1.0 specification BinaryDataCustom schema events
Core Patterns
Publish EventGridEvent import com.azure.messaging.eventgrid.EventGridEvent;
import com.azure.core.util.BinaryData;
EventGridEvent event = new EventGridEvent (
"resource/path" ,
"MyApp.Events.OrderCreated" ,
BinaryData.fromObject(new OrderData ("order-123" , 99.99 )),
"1.0"
);
client.sendEvent(event);
Publish Multiple Events List<EventGridEvent> events = Arrays.asList(
new EventGridEvent ("orders/1" , "Order.Created" ,
BinaryData.fromObject(order1), "1.0" ),
new EventGridEvent ("orders/2" , "Order.Created" ,
BinaryData.fromObject(order2), "1.0" )
);
client.sendEvents(events);
Publish CloudEvent import com.azure.core.models.CloudEvent;
import com.azure.core.models.CloudEventDataFormat;
CloudEvent cloudEvent = new CloudEvent (
"/myapp/orders" ,
"order.created" ,
BinaryData.fromObject(orderData),
CloudEventDataFormat.JSON
);
cloudEvent.setSubject("orders/12345" );
cloudEvent.setId(UUID.randomUUID().toString());
cloudClient.sendEvent(cloudEvent);
Publish CloudEvents Batch List<CloudEvent> cloudEvents = Arrays.asList(
new CloudEvent ("/app" , "event.type1" , BinaryData.fromString("data1" ), CloudEventDataFormat.JSON),
new CloudEvent ("/app" , "event.type2" , BinaryData.fromString("data2" ), CloudEventDataFormat.JSON)
);
cloudClient.sendEvents(cloudEvents);
Async Publishing asyncClient.sendEvent(event)
.subscribe(
unused -> System.out.println("Event sent successfully" ),
error -> System.err.println("Error: " + error.getMessage())
);
asyncClient.sendEvents(events)
.doOnSuccess(unused -> System.out.println("All events sent" ))
.doOnError(error -> System.err.println("Failed: " + error))
.block();
Custom Event Data Class public class OrderData {
private String orderId;
private double amount;
private String customerId;
public OrderData (String orderId, double amount) {
this .orderId = orderId;
this .amount = amount;
}
}
OrderData order = new OrderData ("ORD-123" , 150.00 );
EventGridEvent event = new EventGridEvent (
"orders/" + order.getOrderId(),
"MyApp.Order.Created" ,
BinaryData.fromObject(order),
"1.0"
);
Receiving Events
Parse EventGridEvent import com.azure.messaging.eventgrid.EventGridEvent;
String jsonPayload = "[{\"id\": \"...\", ...}]" ;
List<EventGridEvent> events = EventGridEvent.fromString(jsonPayload);
for (EventGridEvent event : events) {
System.out.println("Event Type: " + event.getEventType());
System.out.println("Subject: " + event.getSubject());
System.out.println("Event Time: " + event.getEventTime());
BinaryData data = event.getData();
OrderData orderData = data.toObject(OrderData.class);
}
Parse CloudEvent import com.azure.core.models.CloudEvent;
String cloudEventJson = "[{\"specversion\": \"1.0\", ...}]" ;
List<CloudEvent> cloudEvents = CloudEvent.fromString(cloudEventJson);
for (CloudEvent event : cloudEvents) {
System.out.println("Type: " + event.getType());
System.out.println("Source: " + event.getSource());
System.out.println("ID: " + event.getId());
MyEventData data = event.getData().toObject(MyEventData.class);
}
Handle System Events import com.azure.messaging.eventgrid.systemevents.*;
for (EventGridEvent event : events) {
if (event.getEventType().equals("Microsoft.Storage.BlobCreated" )) {
StorageBlobCreatedEventData blobData =
event.getData().toObject(StorageBlobCreatedEventData.class);
System.out.println("Blob URL: " + blobData.getUrl());
}
}
Event Grid Namespaces (MQTT/Pull)
Receive from Namespace Topic import com.azure.messaging.eventgrid.namespaces.EventGridReceiverClient;
import com.azure.messaging.eventgrid.namespaces.EventGridReceiverClientBuilder;
import com.azure.messaging.eventgrid.namespaces.models.*;
EventGridReceiverClient receiverClient = new EventGridReceiverClientBuilder ()
.endpoint("<namespace-endpoint>" )
.credential(new AzureKeyCredential ("<key>" ))
.topicName("my-topic" )
.subscriptionName("my-subscription" )
.buildClient();
ReceiveResult result = receiverClient.receive(10 , Duration.ofSeconds(30 ));
for (ReceiveDetails detail : result.getValue()) {
CloudEvent event = detail.getEvent();
System.out.println("Event: " + event.getType());
receiverClient.acknowledge(Arrays.asList(detail.getBrokerProperties().getLockToken()));
}
Reject or Release Events
receiverClient.reject(Arrays.asList(lockToken));
receiverClient.release(Arrays.asList(lockToken));
receiverClient.release(Arrays.asList(lockToken),
new ReleaseOptions ().setDelay(ReleaseDelay.BY_60_SECONDS));
Error Handling import com.azure.core.exception.HttpResponseException;
try {
client.sendEvent(event);
} catch (HttpResponseException e) {
System.out.println("Status: " + e.getResponse().getStatusCode());
System.out.println("Error: " + e.getMessage());
}
Environment Variables EVENT_GRID_TOPIC_ENDPOINT=https://<topic-name>.<region>.eventgrid.azure.net/api/events
EVENT_GRID_ACCESS_KEY=<your-access-key>
Best Practices
Batch Events : Send multiple events in one call when possible
Idempotency : Include unique event IDs for deduplication
Schema Validation : Use strongly-typed event data classes
Retry Logic : Built-in, but consider dead-letter for failures
Event Size : Keep events under 1MB (64KB for basic tier)
Trigger Phrases
"Event Grid Java"
"publish events Azure"
"CloudEvent SDK"
"event-driven messaging"
"pub/sub Azure"
"webhook events"
When to Use This skill is applicable to execute the workflow or actions described in the overview.
Connections
Domain: [[Cloud & Infrastruktur]]
Kategorie: [[Microsoft Azure]]
Navigation: [[Skills Uebersicht]], [[Home]]