/* * Copyright 2015-2018 Rosendo Valero, Fawzi Mohamed, Ankit Kariryaa * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package eu.nomad_lab.parsers import eu.{ nomad_lab => lab } import eu.nomad_lab.DefaultPythonInterpreter import org.{ json4s => jn } import scala.collection.breakOut object GaussianParser extends SimpleExternalParserGenerator( name = "GaussianParser", parserInfo = jn.JObject( ("name" -> jn.JString("GaussianParser")) :: ("parserId" -> jn.JString("GaussianParser" + lab.GaussianVersionInfo.version)) :: ("versionInfo" -> jn.JObject( ("nomadCoreVersion" -> jn.JObject(lab.NomadCoreVersionInfo.toMap.map { case (k, v) => k -> jn.JString(v.toString) }(breakOut): List[(String, jn.JString)])) :: (lab.GaussianVersionInfo.toMap.map { case (key, value) => (key -> jn.JString(value.toString)) }(breakOut): List[(String, jn.JString)]) )) :: Nil ), mainFileTypes = Seq("text/.*"), mainFileRe = """\s*Gaussian, Inc\. All Rights Reserved\.\s* \s* \s*This is part of the Gaussian\(R\) [0-9]* program.""".r, cmd = Seq(DefaultPythonInterpreter.pythonExe(), "${envDir}/parsers/gaussian/parser/parser-gaussian/parser_gaussian.py", "--uri", "${mainFileUri}", "${mainFilePath}"), resList = Seq( "parser-gaussian/parser_gaussian.py", "parser-gaussian/setup_paths.py", "nomad_meta_info/public.nomadmetainfo.json", "nomad_meta_info/common.nomadmetainfo.json", "nomad_meta_info/meta_types.nomadmetainfo.json", "nomad_meta_info/gaussian.nomadmetainfo.json" ) ++ DefaultPythonInterpreter.commonFiles(), dirMap = Map( "parser-gaussian" -> "parsers/gaussian/parser/parser-gaussian", "nomad_meta_info" -> "nomad-meta-info/meta_info/nomad_meta_info", "python" -> "python-common/common/python/nomadcore" ) ++ DefaultPythonInterpreter.commonDirMapping() )