2525
2626package java .security ;
2727
28+ import org .jspecify .annotations .NullMarked ;
2829import org .jspecify .annotations .Nullable ;
2930
3031
5152 * @author Roland Schemers
5253 * @since 1.2
5354 */
54-
55+ @ NullMarked
5556public class CodeSource implements java .io .Serializable {
5657
5758 @ java .io .Serial
@@ -98,7 +99,7 @@ public class CodeSource implements java.io.Serializable {
9899 * @param certs the certificate(s). It may be {@code null}. The contents
99100 * of the array are copied to protect against subsequent modification.
100101 */
101- public CodeSource (URL url , java .security .cert .Certificate [] certs ) {
102+ public CodeSource (@ Nullable URL url , java .security .cert .Certificate @ Nullable [] certs ) {
102103 this .location = url ;
103104 if (url != null ) {
104105 this .locationNoFragString = URLUtil .urlNoFragString (url );
@@ -120,7 +121,7 @@ public CodeSource(URL url, java.security.cert.Certificate[] certs) {
120121 *
121122 * @since 1.5
122123 */
123- public CodeSource (URL url , CodeSigner [] signers ) {
124+ public CodeSource (@ Nullable URL url , CodeSigner @ Nullable [] signers ) {
124125 this .location = url ;
125126 if (url != null ) {
126127 this .locationNoFragString = URLUtil .urlNoFragString (url );
@@ -171,7 +172,7 @@ public boolean equals(@Nullable Object obj) {
171172 * @return the location (URL), or {@code null} if no URL was supplied
172173 * during construction.
173174 */
174- public final URL getLocation () {
175+ public final @ Nullable URL getLocation () {
175176 /* since URL is practically immutable, returning itself is not
176177 a security problem */
177178 return this .location ;
@@ -200,7 +201,7 @@ String getLocationNoFragString() {
200201 * @return a copy of the certificate array, or {@code null} if there
201202 * is none.
202203 */
203- public final java .security .cert .Certificate [] getCertificates () {
204+ public final java .security .cert .Certificate @ Nullable [] getCertificates () {
204205 if (certs != null ) {
205206 return certs .clone ();
206207
@@ -235,7 +236,7 @@ public final java.security.cert.Certificate[] getCertificates() {
235236 *
236237 * @since 1.5
237238 */
238- public final CodeSigner [] getCodeSigners () {
239+ public final CodeSigner @ Nullable [] getCodeSigners () {
239240 if (signers != null ) {
240241 return signers .clone ();
241242
@@ -334,7 +335,7 @@ public final CodeSigner[] getCodeSigners() {
334335 * @return {@code true} if the specified codesource is implied by this
335336 * codesource, {@code false} if not.
336337 */
337- public boolean implies (CodeSource codesource )
338+ public boolean implies (@ Nullable CodeSource codesource )
338339 {
339340 if (codesource == null )
340341 return false ;
0 commit comments