dapr / dapr/java-sdk

Use generic and the serializer interface to return the actual object for workflow activity

Aperta
#905 1 commento 1 reazione 0 assegnatari Vedi su GitHub
P1
Lingua principale
Java
Stelle
300
Fork
230
Merge medio
5g 1h
PR unite (30g)
5

Descrizione

This issue is to follow the discussion in PR https://github.com/dapr/java-sdk/pull/880

====================

artursouza:
Use generic and the serializer interface to return the actual object. See how it is done for DaprClient

skyao:
this run() method defined in WorkflowActivity doesn't have a input parameter, we need to call ctx.getInput() to get the input, like this:

public Object run(WorkflowActivityContext ctx) {
OrderPayload order = ctx.getInput(OrderPayload.class);
logger.info("Requesting approval for order: {}", order);

return ApprovalResult.Approved;
}
I suggest to move this input parameter from ctx to run() method:

public interface WorkflowActivity{
Output run(WorkflowActivityContext ctx, Input input);
}

artursouza: Exactly. Also, use TypeRef from the main SDK. See how we do it for Actors and state store.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia con la discussione in PR 880 e analizza i pattern esistenti in DaprClient, Actors e nel codice del state store per le interfacce dei serializer e TypeRef. Esamina WorkflowActivity e la gestione dell’input basata sul contesto, quindi allinea l’interfaccia dell’attività ai tipi generici di input e output proposti. Il lavoro è completato quando le attività di workflow possono ricevere input tipizzato e restituire l’oggetto effettivamente tipizzato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
api, backend
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.