modelcontextprotocol / modelcontextprotocol/java-sdk
Expose Nullable / Nonnull on public properties / methods
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 3.7k
- Forks
- 1.1k
- Ø Merge
- 1 T. 15 Std.
- Gemergte PRs (30 T.)
- 9
Beschreibung
Expected Behavior
Certain fields in MCP are mandatory, some are optional. I would expect to be able to know whether a certain property or function could be or return null from the Java SDK API.
Current Behavior
It is opaque to me what can be null or not.
Context
One example is CallToolResult, where isError() or Content.priority() are wrapped primitive types that can be null. However, since they don't have an @Nullable annotation, those facts are not obvious to the dev and can cause bugs (most notably null pointer exceptions).
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der Überprüfung der öffentlichen Java-SDK-APIs rund um CallToolResult.isError() und Content.priority(), die das Issue als nullable identifiziert, obwohl sie umschlossene primitive Typen verwenden. Ermittle, welche öffentlichen Eigenschaften und Methoden null zurückgeben können, und überprüfe anschließend, dass ihre Nullbarkeit durch Annotationen ausdrücklich offengelegt wird, damit Aufrufer nullable Werte erkennen können.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- api
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100