]> gitweb.michael.orlitzky.com - dead/htsn-import.git/blobdiff - src/TSN/XML/AutoRacingResults.hs
Update TSN.XML modules to use the new Child class.
[dead/htsn-import.git] / src / TSN / XML / AutoRacingResults.hs
index bfc07d178b52c233cc691b19c2f3bab94a7aa3c8..370ae8174c59a52992ac78eed3efebfb009e9bde 100644 (file)
@@ -60,9 +60,10 @@ import Text.XML.HXT.Core (
 import TSN.Codegen (
   tsn_codegen_config )
 import TSN.DbImport ( DbImport(..), ImportResult(..), run_dbmigrate )
-import TSN.Picklers ( xp_earnings, xp_racedate, xp_time_stamp )
+import TSN.Picklers ( xp_earnings, xp_datetime, xp_time_stamp )
 import TSN.XmlImport ( XmlImport(..), XmlImportFk(..) )
 import Xml (
+  Child(..),
   FromXml(..),
   FromXmlFk(..),
   ToDb(..),
@@ -162,7 +163,7 @@ instance XmlImport Message
 -- * AutoRacingResultsListing/AutoRacingResultsListingXml
 
 -- | Database representation of a \<Listing\> contained within a
---   \<Message\>.
+--   \<message\>.
 --
 data AutoRacingResultsListing =
   AutoRacingResultsListing {
@@ -210,12 +211,14 @@ instance ToDb AutoRacingResultsListingXml where
   type Db AutoRacingResultsListingXml = AutoRacingResultsListing
 
 
-instance FromXmlFk AutoRacingResultsListingXml where
+instance Child AutoRacingResultsListingXml where
   -- | Each 'AutoRacingResultsListingXml' is contained in (i.e. has a
   --   foreign key to) a 'AutoRacingResults'.
   --
   type Parent AutoRacingResultsListingXml = AutoRacingResults
 
+
+instance FromXmlFk AutoRacingResultsListingXml where
   -- | To convert an 'AutoRacingResultsListingXml' to an
   --   'AutoRacingResultsListing', we add the foreign key and copy
   --   everything else verbatim.
@@ -261,8 +264,8 @@ data MostLapsLeading =
   deriving (Data, Eq, Show, Typeable)
 
 
--- | Database representation of a \<Race_Information\> contained within a
---   \<Message\>.
+-- | Database representation of a \<Race_Information\> contained
+--   within a \<message\>.
 --
 data AutoRacingResultsRaceInformation =
   AutoRacingResultsRaceInformation {
@@ -311,12 +314,15 @@ instance ToDb AutoRacingResultsRaceInformationXml where
   type Db AutoRacingResultsRaceInformationXml =
     AutoRacingResultsRaceInformation
 
-instance FromXmlFk AutoRacingResultsRaceInformationXml where
+
+instance Child AutoRacingResultsRaceInformationXml where
   -- | Each 'AutoRacingResultsRaceInformationXml' is contained in
   --   (i.e. has a foreign key to) a 'AutoRacingResults'.
   --
   type Parent AutoRacingResultsRaceInformationXml = AutoRacingResults
 
+
+instance FromXmlFk AutoRacingResultsRaceInformationXml where
   -- | To convert an 'AutoRacingResultsRaceInformationXml' to an
   --   'AutoRacingResultsRaceInformartion', we add the foreign key and
   --   copy everything else verbatim.
@@ -472,7 +478,7 @@ pickle_message =
               (xpElem "category" xpText)
               (xpElem "sport" xpText)
               (xpElem "RaceID" xpInt)
-              (xpElem "RaceDate" xp_racedate)
+              (xpElem "RaceDate" xp_datetime)
               (xpElem "Title" xpText)
               (xpElem "Track_Location" xpText)
               (xpElem "Laps_Remaining" xpInt)
@@ -522,7 +528,7 @@ pickle_race_information =
     xpWrap (from_tuple, to_tuple) $
     xp11Tuple (-- I can't think of another way to get both the
                -- TrackLength and its KPH attribute. So we shove them
-               -- both in a 2-tuple.
+               -- both in a 2-tuple. This should probably be an embedded type!
                  xpElem "TrackLength" $ xpPair xpPrim (xpAttr "KPH" xpPrim) )
               (xpElem "Laps" xpInt)
               (xpOption $ xpElem "AverageSpeedMPH" xpPrim)