From 41cdc37a4bfe2f90353bfdb7b647bacbb3d7972f Mon Sep 17 00:00:00 2001 From: Eric T Date: Sun, 12 Oct 2025 22:10:46 +0100 Subject: [PATCH] fix: enforce string nip metadata --- .../src/test/java/nostr/api/unit/JsonParseTest.java | 2 +- nostr-java-base/src/main/java/nostr/base/IElement.java | 4 ++-- .../src/main/java/nostr/event/impl/GenericEvent.java | 10 +++++----- .../main/java/nostr/event/message/BaseAuthMessage.java | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/nostr-java-api/src/test/java/nostr/api/unit/JsonParseTest.java b/nostr-java-api/src/test/java/nostr/api/unit/JsonParseTest.java index 91bbd1be..1d6de5df 100644 --- a/nostr-java-api/src/test/java/nostr/api/unit/JsonParseTest.java +++ b/nostr-java-api/src/test/java/nostr/api/unit/JsonParseTest.java @@ -304,7 +304,7 @@ public void testClassifiedListingTagSerializer() throws JsonProcessingException GenericEvent event = new GenericEventDecoder<>().decode(classifiedListingEventJson); EventMessage message = NIP01.createEventMessage(event, "1"); - assertEquals(1, message.getNip()); + assertEquals("1", message.getNip()); String encoded = new BaseEventEncoder<>((BaseEvent) message.getEvent()).encode(); assertEquals( "{\"id\":\"28f2fc030e335d061f0b9d03ce0e2c7d1253e6fadb15d89bd47379a96b2c861a\",\"kind\":30402,\"content\":\"content" diff --git a/nostr-java-base/src/main/java/nostr/base/IElement.java b/nostr-java-base/src/main/java/nostr/base/IElement.java index 4a8c1595..30ada927 100644 --- a/nostr-java-base/src/main/java/nostr/base/IElement.java +++ b/nostr-java-base/src/main/java/nostr/base/IElement.java @@ -5,7 +5,7 @@ */ public interface IElement { - default Integer getNip() { - return 1; + default String getNip() { + return "1"; } } diff --git a/nostr-java-event/src/main/java/nostr/event/impl/GenericEvent.java b/nostr-java-event/src/main/java/nostr/event/impl/GenericEvent.java index c2019c8c..74ae092d 100644 --- a/nostr-java-event/src/main/java/nostr/event/impl/GenericEvent.java +++ b/nostr-java-event/src/main/java/nostr/event/impl/GenericEvent.java @@ -135,7 +135,7 @@ public class GenericEvent extends BaseEvent implements ISignable, Deleteable { @JsonIgnore @EqualsAndHashCode.Exclude private byte[] _serializedEvent; - @JsonIgnore @EqualsAndHashCode.Exclude private Integer nip; + @JsonIgnore @EqualsAndHashCode.Exclude private String nip; public GenericEvent() { this.tags = new ArrayList<>(); @@ -322,7 +322,7 @@ public static class GenericEventBuilder { private String content = ""; private Long createdAt; private Signature signature; - private Integer nip; + private String nip; public GenericEventBuilder id(String id) { this.id = id; return this; } public GenericEventBuilder pubKey(PublicKey pubKey) { this.pubKey = pubKey; return this; } @@ -332,7 +332,7 @@ public static class GenericEventBuilder { public GenericEventBuilder content(String content) { this.content = content; return this; } public GenericEventBuilder createdAt(Long createdAt) { this.createdAt = createdAt; return this; } public GenericEventBuilder signature(Signature signature) { this.signature = signature; return this; } - public GenericEventBuilder nip(Integer nip) { this.nip = nip; return this; } + public GenericEventBuilder nip(String nip) { this.nip = nip; return this; } public GenericEvent build() { GenericEvent event = new GenericEvent(); @@ -498,11 +498,11 @@ protected void addStandardTag(BaseTag tag) { Optional.ofNullable(tag).ifPresent(this::addTag); } - protected void addGenericTag(String key, Integer nip, Object value) { + protected void addGenericTag(String key, String nip, Object value) { Optional.ofNullable(value).ifPresent(s -> addTag(BaseTag.create(key, s.toString()))); } - protected void addStringListTag(String label, Integer nip, List tag) { + protected void addStringListTag(String label, String nip, List tag) { Optional.ofNullable(tag).ifPresent(tagList -> BaseTag.create(label, tagList)); } diff --git a/nostr-java-event/src/main/java/nostr/event/message/BaseAuthMessage.java b/nostr-java-event/src/main/java/nostr/event/message/BaseAuthMessage.java index a918d20a..52bb12d4 100644 --- a/nostr-java-event/src/main/java/nostr/event/message/BaseAuthMessage.java +++ b/nostr-java-event/src/main/java/nostr/event/message/BaseAuthMessage.java @@ -12,7 +12,7 @@ public BaseAuthMessage(String command) { } @Override - public Integer getNip() { - return 42; + public String getNip() { + return "42"; } }