From 05205b0954b4b7ee3667f7c17bbb7d37b4040404 Mon Sep 17 00:00:00 2001 From: Federico Igne Date: Thu, 19 May 2022 17:05:46 +0100 Subject: fix(cli): pass data path to PAGOdA's properties This is not the ideal way to deal with this an a more general integration solution should be used. Regardless, it works for now. --- src/main/scala/uk/ac/ox/cs/acqua/Main.scala | 7 +++++++ src/main/scala/uk/ac/ox/cs/acqua/util/AcquaConfig.scala | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'src/main/scala') diff --git a/src/main/scala/uk/ac/ox/cs/acqua/Main.scala b/src/main/scala/uk/ac/ox/cs/acqua/Main.scala index e4bdc87..b16f03a 100644 --- a/src/main/scala/uk/ac/ox/cs/acqua/Main.scala +++ b/src/main/scala/uk/ac/ox/cs/acqua/Main.scala @@ -40,6 +40,13 @@ object Acqua extends App { val ontology = Ontology(ontopath, datapath).normalize(new Normalizer) val properties = new PagodaProperties() + /* TODO: find a better way to integrate CLI options from different + * tools. A good idea would be to have [[util.AcquaConfig]] handle the + * CLI and have methods to convert it into other "config" classes to + * use with tool-specific interfaces. + */ + if (config contains 'pagodata) + properties setDataPath config('pagodata).get[String] val performMultiStages = true val considerEqualities = true diff --git a/src/main/scala/uk/ac/ox/cs/acqua/util/AcquaConfig.scala b/src/main/scala/uk/ac/ox/cs/acqua/util/AcquaConfig.scala index ec550c2..5417b77 100644 --- a/src/main/scala/uk/ac/ox/cs/acqua/util/AcquaConfig.scala +++ b/src/main/scala/uk/ac/ox/cs/acqua/util/AcquaConfig.scala @@ -163,7 +163,7 @@ object AcquaConfig { os.walk(data).filter(os.isFile).toList }else exit(s"'${_data}' is not a valid path.") - parse(tail, config += ('data -> files)) + parse(tail, config += ('data -> files) += ('pagodata -> _data)) } case a => exit(s"Invalid sequence of arguments '${a.mkString(" ")}'.") } @@ -201,6 +201,7 @@ object AcquaConfig { } case 'answers => Logger print s"Path to answers: ${v.get[os.Path]}" case 'transitive => Logger print s"Include property chain axioms: ${v.get[Boolean]}" + case _ => { } }} } } -- cgit v1.2.3