[Feat]: Simplification of the client API?
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 65/100
Direzione di ricerca
Esamina l'API client nel modulo spec, concentrandoti sui metodi che utilizzano oggetti XXXParams come TaskIdParams. Esamina il metodo sendMessage esistente come riferimento per il pattern. Identifica tutti i metodi che potrebbero essere semplificati, quindi crea versioni sovraccaricate che accettino parametri primitivi e deleghino alle implementazioni esistenti. Assicurati la compatibilità con le versioni precedenti e testa le modifiche.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Is your feature request related to a problem? Please describe.
The client API is a thin wrapper around the domain objects in the spec module.
I wonder if we could not make the API a bit simpler while retaining all the capabilities it exposes.
Describe the solution you'd like
For example, a lot of calls wrap their parameters in XXXParams object:
public Task cancelTask(TaskIdParams request)
but TaskIdParams is composed of a taskId and a metadata map.
Could the call simply be:
public Task cancelTask(String taskId, Map<String, Object> metadata) {
return clientTransport.cancelTask(new TaskIdParams(taskId, metadata), request, context);
}
and a default method:
public default Task cancelTask(String taskId) {
return cancelTask(taskId, emptyMap();
}
This way, the TaskIdParams does not leak to the Client API (making it bigger than it needs to be.
The API is already to that for its sendMessage methods that hides the internal MessageSendParams.
This is a pattern that should be applied to other methods as well
Describe alternatives you've considered
No response
Additional context
No response
Code of Conduct
- I agree to follow this project's Code of Conduct
- Lingua principale
- Java
- Stelle
- 504
- Fork
- 184
- Merge medio
- 1g 9h
- PR unite (30g)
- 25
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di a2aproject/a2a-java
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
a2aproject/a2a-java#1012 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
a2aproject/a2a-java#464 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Create a sample that demonstrates how to use a shared contextId across multiple tasksForse di nuovo libera @tanish111 l’ha presa 356 giorni fa e non c’è nessuna pull request aperta. Apertasample
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
a2aproject/a2a-java#375 · 5 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 28/100
a2aproject/a2a-java#1211 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
a2aproject/a2a-java#1207 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di a2aproject/a2a-java
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
apache/rocketmq-dashboard#6610 ·
I maintainer di solito rispondono entro 3 giorni
-
`RedisList.reversed()` view returns an empty `range` and `trim` removes all elementsForse già presa @CCCLL l’ha presa oggi. Apertastatus: waiting-for-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
spring-projects/spring-data-redis#3461 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
javapathfinder/jpf-core#649 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
devops-thiago/ThrillhouseBot#1093 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
wimdeblauwe/htmx-spring-boot#205 ·