Mapper = require("../Mapper.js").mapper

class SingleEncounterMapper extends Mapper

  constructor: ->
    @identifier = "singleencounter"
  
  # schema will return a schema of arguments and types (and current values)
  schema: (method, action, endpoint, fun, args) ->
    switch fun.toLowerCase()
      when "activitygroupmodel", "notesforencounter", "headerforencounter", "patientdetailsforencounter", "encounterdetailsforencounter", "responsiblepersonnelforencounter"
        @map(["Encounter.Id"], args)


  applySchema: (method, action, endpoint, fun, schema) ->
    switch fun.toLowerCase()
      when "activitygroupmodel", "notesforencounter", "headerforencounter", "patientdetailsforencounter", "encounterdetailsforencounter", "responsiblepersonnelforencounter"
        @unmap(schema)
      else
        winston.warn "no such fun", fun

exports.mapper = new SingleEncounterMapper()