From f71b71cd91a28ac8345a56a9c9117c804cd65cb5 Mon Sep 17 00:00:00 2001 From: Valthor Halldorsson Date: Sun, 19 Mar 2017 15:09:24 +0000 Subject: Fix exception caused by attempting to serialize NonEntity values - Added explicit checking for NonEntity when serializing DefaultParams --- .../tools/dottydoc/staticsite/DefaultParams.scala | 49 ++++++++++++---------- 1 file changed, 28 insertions(+), 21 deletions(-) (limited to 'doc-tool') diff --git a/doc-tool/src/dotty/tools/dottydoc/staticsite/DefaultParams.scala b/doc-tool/src/dotty/tools/dottydoc/staticsite/DefaultParams.scala index 066b23e0b..a53f6f0d4 100644 --- a/doc-tool/src/dotty/tools/dottydoc/staticsite/DefaultParams.scala +++ b/doc-tool/src/dotty/tools/dottydoc/staticsite/DefaultParams.scala @@ -17,27 +17,34 @@ case class DefaultParams( ) { import model.JavaConverters._ - def toMap: Map[String, AnyRef] = Map( - "docs" -> docs, - - "originalDocs" -> originalDocs, - - "page" -> Map( - "url" -> page.url, - "date" -> page.date, - "path" -> page.path - ), - - "site" -> Map( - "baseurl" -> site.baseurl, - "posts" -> site.posts.map(_.toMap), - "project" -> site.projectTitle - ).asJava, - - "sidebar" -> sidebar.titles.asJava, - - "entity" -> entity.asJava() - ) + def toMap: Map[String, AnyRef] = { + val base = Map( + "docs" -> docs, + + "originalDocs" -> originalDocs, + + "page" -> Map( + "url" -> page.url, + "date" -> page.date, + "path" -> page.path + ), + + "site" -> Map( + "baseurl" -> site.baseurl, + "posts" -> site.posts.map(_.toMap), + "project" -> site.projectTitle + ).asJava, + + "sidebar" -> sidebar.titles.asJava + ) + val entityMap = entity match { + case NonEntity => Map.empty + case _ => Map( + "entity" -> entity.asJava + ) + } + base ++ entityMap + } def withPosts(posts: Array[BlogPost]): DefaultParams = copy(site = SiteInfo(site.baseurl, site.projectTitle, posts)) -- cgit v1.2.3