private def categoriseIdList()

in src/main/scala/com/gu/contentapi/porter/graphql/AlternateIdParameters.scala [61:90]


  private def categoriseIdList(allIdList:Seq[String]):Map[AlternateId.Value, String] =
    allIdList.foldLeft(Map[AlternateId.Value, String]())((map, elem)=>{
      elem match {
        case xtractor(lead, trail)=>
          lead match {
            case "p"=>
              map + (AlternateId.shortcode -> elem)
            case "internal-code"=>
              trail match {
                case "composer"=>
                  map + (AlternateId.composer -> elem)
                case "page"=>
                  map + (AlternateId.page -> elem)
                case "octopus"=>
                  map + (AlternateId.octopus -> elem)
                case "pluto"=>
                  map + (AlternateId.pluto -> elem)
                case "tag" =>
                  map + (AlternateId.tag -> elem)
                case _=>
                  logger.warn(s"Unrecognised internal code type: $trail")
                  map
              }
            case _=>
              map + (AlternateId.urlpath -> elem)
          }
        case _=>
          map + (AlternateId.urlpath -> elem)
      }
    })