mirror of
https://github.com/ACINQ/eclair.git
synced 2025-02-23 14:40:34 +01:00
dot graph are now exported as a string
This commit is contained in:
parent
3a3b8c6eb1
commit
ea3480b9f8
1 changed files with 6 additions and 8 deletions
|
@ -1,12 +1,12 @@
|
||||||
package fr.acinq.eclair.router
|
package fr.acinq.eclair.router
|
||||||
|
|
||||||
import java.io.{ByteArrayOutputStream, OutputStreamWriter}
|
import java.io.{BufferedWriter, StringWriter}
|
||||||
|
|
||||||
import akka.actor.{Actor, ActorLogging, ActorRef, Props}
|
import akka.actor.{Actor, ActorLogging, ActorRef, Props}
|
||||||
import akka.pattern.pipe
|
import akka.pattern.pipe
|
||||||
|
import fr.acinq.bitcoin.BinaryData
|
||||||
import fr.acinq.bitcoin.Crypto.PublicKey
|
import fr.acinq.bitcoin.Crypto.PublicKey
|
||||||
import fr.acinq.bitcoin.Script.{pay2wsh, write}
|
import fr.acinq.bitcoin.Script.{pay2wsh, write}
|
||||||
import fr.acinq.bitcoin.{BinaryData, Transaction}
|
|
||||||
import fr.acinq.eclair._
|
import fr.acinq.eclair._
|
||||||
import fr.acinq.eclair.blockchain.{GetTx, GetTxResponse, WatchEventSpent, WatchSpent}
|
import fr.acinq.eclair.blockchain.{GetTx, GetTxResponse, WatchEventSpent, WatchSpent}
|
||||||
import fr.acinq.eclair.channel._
|
import fr.acinq.eclair.channel._
|
||||||
|
@ -209,7 +209,7 @@ object Router {
|
||||||
.map(desc => Hop(desc.a, desc.b, updates(desc)))
|
.map(desc => Hop(desc.a, desc.b, updates(desc)))
|
||||||
}
|
}
|
||||||
|
|
||||||
def graph2dot(nodes: Map[BinaryData, NodeAnnouncement], channels: Map[Long, ChannelAnnouncement])(implicit ec: ExecutionContext): Future[BinaryData] = Future {
|
def graph2dot(nodes: Map[BinaryData, NodeAnnouncement], channels: Map[Long, ChannelAnnouncement])(implicit ec: ExecutionContext): Future[String] = Future {
|
||||||
case class DescEdge(channelId: Long) extends DefaultEdge
|
case class DescEdge(channelId: Long) extends DefaultEdge
|
||||||
val g = new SimpleGraph[BinaryData, DescEdge](classOf[DescEdge])
|
val g = new SimpleGraph[BinaryData, DescEdge](classOf[DescEdge])
|
||||||
channels.foreach(d => {
|
channels.foreach(d => {
|
||||||
|
@ -233,14 +233,12 @@ object Router {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val exporter = new DOTExporter[BinaryData, DescEdge](vertexIDProvider, null, edgeLabelProvider, vertexAttributeProvider, null)
|
val exporter = new DOTExporter[BinaryData, DescEdge](vertexIDProvider, null, edgeLabelProvider, vertexAttributeProvider, null)
|
||||||
val bos = new ByteArrayOutputStream()
|
val writer = new BufferedWriter(new StringWriter())
|
||||||
val writer = new OutputStreamWriter(bos)
|
|
||||||
try {
|
try {
|
||||||
exporter.exportGraph(g, writer)
|
exporter.exportGraph(g, writer)
|
||||||
bos.toByteArray
|
writer.toString
|
||||||
} finally {
|
} finally {
|
||||||
writer.close()
|
writer.close()
|
||||||
bos.close()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue