mirror of
https://github.com/aljazceru/lnd-manageJ.git
synced 2026-01-20 22:44:31 +01:00
make x default in compact form, remove unused endpoint from legacy controller, add compact forms to channel details
This commit is contained in:
@@ -16,8 +16,6 @@ import java.util.Set;
|
||||
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_3;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_COMPACT;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_COMPACT_3;
|
||||
import static de.cotto.lndmanagej.model.CoopClosedChannelFixtures.CLOSED_CHANNEL;
|
||||
import static de.cotto.lndmanagej.model.CoopClosedChannelFixtures.CLOSED_CHANNEL_3;
|
||||
import static de.cotto.lndmanagej.model.ForceClosingChannelFixtures.FORCE_CLOSING_CHANNEL;
|
||||
@@ -74,13 +72,6 @@ class LegacyControllerIT {
|
||||
.andExpect(content().string(CHANNEL_ID + "\n" + CHANNEL_ID_3));
|
||||
}
|
||||
|
||||
@Test
|
||||
void getOpenChannelIdsCompact() throws Exception {
|
||||
when(channelService.getOpenChannels()).thenReturn(Set.of(LOCAL_OPEN_CHANNEL, LOCAL_OPEN_CHANNEL_3));
|
||||
mockMvc.perform(get("/legacy/open-channels/compact"))
|
||||
.andExpect(content().string(CHANNEL_ID_COMPACT + "\n" + CHANNEL_ID_COMPACT_3));
|
||||
}
|
||||
|
||||
@Test
|
||||
void getOpenChannelIdsPretty() throws Exception {
|
||||
when(channelService.getOpenChannels()).thenReturn(Set.of(LOCAL_OPEN_CHANNEL, LOCAL_OPEN_CHANNEL_3));
|
||||
|
||||
@@ -61,14 +61,6 @@ public class LegacyController {
|
||||
.collect(Collectors.joining(NEWLINE));
|
||||
}
|
||||
|
||||
@GetMapping("/open-channels/compact")
|
||||
public String getOpenChannelIdsCompact() {
|
||||
mark("getOpenChannelIdsCompact");
|
||||
return getOpenChannelIdsSorted()
|
||||
.map(ChannelId::getCompactForm)
|
||||
.collect(Collectors.joining(NEWLINE));
|
||||
}
|
||||
|
||||
@GetMapping("/open-channels/pretty")
|
||||
public String getOpenChannelIdsPretty() {
|
||||
mark("getOpenChannelIdsPretty");
|
||||
|
||||
@@ -6,8 +6,20 @@ import de.cotto.lndmanagej.model.Pubkey;
|
||||
|
||||
public record ChannelDetailsDto(
|
||||
ChannelId channelId,
|
||||
String channelIdCompact,
|
||||
String channelIdCompactLnd,
|
||||
Pubkey remotePubkey,
|
||||
String remoteAlias,
|
||||
@JsonProperty("private") boolean privateChannel
|
||||
) {
|
||||
public ChannelDetailsDto(ChannelId channelId, Pubkey remotePubkey, String remoteAlias, boolean privateChannel) {
|
||||
this(
|
||||
channelId,
|
||||
channelId.getCompactForm(),
|
||||
channelId.getCompactFormLnd(),
|
||||
remotePubkey,
|
||||
remoteAlias,
|
||||
privateChannel
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,6 @@ import static de.cotto.lndmanagej.model.ChannelFixtures.CAPACITY_2;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_3;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_COMPACT;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_COMPACT_3;
|
||||
import static de.cotto.lndmanagej.model.ChannelIdFixtures.CHANNEL_ID_COMPACT_4;
|
||||
import static de.cotto.lndmanagej.model.CoopClosedChannelFixtures.CLOSED_CHANNEL;
|
||||
import static de.cotto.lndmanagej.model.CoopClosedChannelFixtures.CLOSED_CHANNEL_3;
|
||||
@@ -93,15 +92,6 @@ class LegacyControllerTest {
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
void getOpenChannelIdsCompact() {
|
||||
when(channelService.getOpenChannels()).thenReturn(Set.of(LOCAL_OPEN_CHANNEL, LOCAL_OPEN_CHANNEL_3));
|
||||
assertThat(legacyController.getOpenChannelIdsCompact()).isEqualTo(
|
||||
CHANNEL_ID_COMPACT + "\n" + CHANNEL_ID_COMPACT_3
|
||||
);
|
||||
verify(metrics).mark(argThat(name -> name.endsWith(".getOpenChannelIdsCompact")));
|
||||
}
|
||||
|
||||
@Test
|
||||
void getOpenChannelIdsPretty() {
|
||||
when(nodeService.getAlias(PUBKEY_2)).thenReturn(ALIAS_2);
|
||||
|
||||
@@ -4,10 +4,11 @@ import javax.annotation.Nonnull;
|
||||
import java.util.Objects;
|
||||
|
||||
public final class ChannelId implements Comparable<ChannelId> {
|
||||
private final long shortChannelId;
|
||||
private static final int EXPECTED_NUMBER_OF_SEGMENTS = 3;
|
||||
private static final long NOT_BEFORE = 430_103_660_018_532_352L; // January 1st 2016
|
||||
|
||||
private final long shortChannelId;
|
||||
|
||||
private ChannelId(long shortChannelId) {
|
||||
this.shortChannelId = shortChannelId;
|
||||
}
|
||||
@@ -33,10 +34,11 @@ public final class ChannelId implements Comparable<ChannelId> {
|
||||
}
|
||||
|
||||
public String getCompactForm() {
|
||||
long block = shortChannelId >> 40;
|
||||
long transaction = shortChannelId >> 16 & 0xFFFFFF;
|
||||
long output = shortChannelId & 0xFFFF;
|
||||
return block + ":" + transaction + ":" + output;
|
||||
return getCompactFormWithDelimiter("x");
|
||||
}
|
||||
|
||||
public String getCompactFormLnd() {
|
||||
return getCompactFormWithDelimiter(":");
|
||||
}
|
||||
|
||||
public long getShortChannelId() {
|
||||
@@ -69,4 +71,11 @@ public final class ChannelId implements Comparable<ChannelId> {
|
||||
public int compareTo(@Nonnull ChannelId other) {
|
||||
return Long.compare(shortChannelId, other.shortChannelId);
|
||||
}
|
||||
|
||||
private String getCompactFormWithDelimiter(String delimiter) {
|
||||
long block = shortChannelId >> 40;
|
||||
long transaction = shortChannelId >> 16 & 0xFFFFFF;
|
||||
long output = shortChannelId & 0xFFFF;
|
||||
return block + delimiter + transaction + delimiter + output;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,6 +132,11 @@ class ChannelIdTest {
|
||||
assertThat(CHANNEL_ID.getCompactForm()).isEqualTo(CHANNEL_ID_COMPACT);
|
||||
}
|
||||
|
||||
@Test
|
||||
void getCompactFormLnd() {
|
||||
assertThat(CHANNEL_ID.getCompactFormLnd()).isEqualTo("712345:123:1");
|
||||
}
|
||||
|
||||
@Test
|
||||
void testEquals() {
|
||||
EqualsVerifier.forClass(ChannelId.class).verify();
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
package de.cotto.lndmanagej.model;
|
||||
|
||||
public class ChannelIdFixtures {
|
||||
public static final String CHANNEL_ID_COMPACT = "712345:123:1";
|
||||
public static final String CHANNEL_ID_COMPACT_2 = "799999:456:2";
|
||||
public static final String CHANNEL_ID_COMPACT_3 = "799999:456:3";
|
||||
public static final String CHANNEL_ID_COMPACT_4 = "799999:456:4";
|
||||
public static final String CHANNEL_ID_COMPACT = "712345x123x1";
|
||||
public static final String CHANNEL_ID_COMPACT_2 = "799999x456x2";
|
||||
public static final String CHANNEL_ID_COMPACT_3 = "799999x456x3";
|
||||
public static final String CHANNEL_ID_COMPACT_4 = "799999x456x4";
|
||||
public static final ChannelId CHANNEL_ID = ChannelId.fromCompactForm(CHANNEL_ID_COMPACT);
|
||||
public static final ChannelId CHANNEL_ID_2 = ChannelId.fromCompactForm(CHANNEL_ID_COMPACT_2);
|
||||
public static final ChannelId CHANNEL_ID_3 = ChannelId.fromCompactForm(CHANNEL_ID_COMPACT_3);
|
||||
|
||||
Reference in New Issue
Block a user