我们在 play 2.5.x 应用程序中使用 graph-json 1.11.0 和 graph-core-1.11.5 。
用于指导图表的toJson和fromJson的用户指南示例,请不要使用当前稳定的1.11.0版本。 参考:http://www.scala-graph.org/guides/json.html
我们在应用程序中使用了一个简单的字符串图 图表[String,DiEdge] 。
我们设法将图形写入json转换部分,但无法确定新稳定版本的确切fromJson语法。
以下是我们的应用程序中使用的示例代码。有人可以帮助我们如何将json转换为图形。
import play.api.libs.json.{JsValue, Json}
import scalax.collection.Graph
import scalax.collection.GraphEdge.DiEdge
import scalax.collection.io.json.JsonGraph
import scalax.collection.io.json.descriptor.Descriptor
import scalax.collection.io.json.descriptor.predefined.Di
import scalax.collection.io.json.descriptor.{Descriptor, StringNodeDescriptor}
object HierarchyGraph {
val descriptor = new Descriptor(StringNodeDescriptor,Di.descriptor[String]())
def toJson(graph : Graph[String, DiEdge]) : JsValue = {
val jsText = JsonGraph(graph).toJson(descriptor)
try {
Json.parse(jsText)
} catch {
case e : Exception => Json.toJson(Json.obj())
}
}
def fromJson(graphAsJsValue : JsValue) : Graph[String,DiEdge] = {
// json to graph conversion code here
}
}