/*
 * Copyright (C) 2020  Prasoon Joshi
 *
 *     This program is free software: you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation, either version 3 of the License, or
 *     (at your option) any later version.
 *
 *     This program is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 *
 *     You should have received a copy of the GNU General Public License
 *     along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */

package models

case class AmCommonAttrbsVertex(id: Option[String],
  altRender: Option[String],
  audience: Option[String],
  lang: Option[String],
  script: Option[String])

object AmCommonAttrbsVertex {
  def fromParentClass(parent: AmCommonAttrbs): AmCommonAttrbsVertex =
    AmCommonAttrbsVertex(parent.id,
      parent.altRender,
      parent.audience.map(v => v.toString),
      parent.lang,
      parent.script)
}

case class EadVertex(id: Option[Long],
  //amCommonAttrbs: AmCommonAttrbsVertex,
  relatedEncoding: Option[String],
  base: Option[String],
  control: ControlVertex) 

case class RecordIdVertex(instanceUrl: Option[String],
  text: String)

case class ControlVertex(relatedEncoding: Option[String],
  recordId: RecordIdVertex)
/*  otherRecordId: Seq[OtherRecordId] = Nil,
  representation: Seq[Representation] = Nil)
  fileDesc: FileDesc)
  maintenanceStatus: MaintenanceStatus,
  publicationStatus: Option[PublicationStatus],
  maintenanceAgency: MaintenanceAgency,
  languageDeclaration: Seq[LanguageDeclaration] = Nil,
  conventionDeclaration: Seq[ConventionDeclaration] = Nil,
  rightsDeclaration: Seq[RightsDeclaration] = Nil,
  localTypeDeclaration: Seq[LocalTypeDeclaration] = Nil,
  localControl: Seq[LocalControl] = Nil,
  maintenanceHistory: Seq[MaintenanceHistory] = Nil,
  sources: Option[Sources])
  */    



