]> gitweb.michael.orlitzky.com - dead/htsn-import.git/commitdiff
Use HTeam/VTeam wrappers in TSN.XML.JFile.
authorMichael Orlitzky <michael@orlitzky.com>
Sun, 6 Jul 2014 03:20:05 +0000 (23:20 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Sun, 6 Jul 2014 03:20:05 +0000 (23:20 -0400)
src/TSN/XML/JFile.hs

index 51db0abfa32af3b0be591e1099803a5289b4b853..35768163cbe21eef1a5fbb01e98b973abc605d81 100644 (file)
@@ -70,7 +70,7 @@ import TSN.Picklers (
   xp_time,
   xp_time_dots,
   xp_time_stamp )
-import TSN.Team ( Team(..) )
+import TSN.Team ( Team(..), HTeam(..), VTeam(..) )
 import TSN.XmlImport (
   XmlImport(..),
   XmlImportFkTeams(..) )
@@ -234,9 +234,9 @@ data JFileGameXml =
     xml_season_type :: Maybe String,
     xml_game_date :: UTCTime,
     xml_game_time :: UTCTime,
-    xml_vteam :: Team,
+    xml_vteam :: VTeam,
     xml_vleague :: Maybe String,
-    xml_hteam :: Team,
+    xml_hteam :: HTeam,
     xml_hleague :: Maybe String,
     xml_vscore :: Int,
     xml_hscore :: Int,
@@ -325,8 +325,8 @@ instance DbImport Message where
     -- Now loop through the message's games
     forM_ (xml_games $ xml_gamelist m) $ \game -> do
       -- First we insert the home and away teams.
-      away_team_id <- insert_or_select (xml_vteam game)
-      home_team_id <- insert_or_select (xml_hteam game)
+      away_team_id <- insert_or_select (vteam $ xml_vteam game)
+      home_team_id <- insert_or_select (hteam $ xml_hteam game)
 
       -- Now insert the game keyed to the "jfile" and its teams.
       insert_xml_fk_teams_ msg_id away_team_id home_team_id game
@@ -541,7 +541,7 @@ pickle_odds_info =
 -- | (Un)pickle a home team to/from the dual XML/DB representation
 --   'Team'.
 --
-pickle_home_team :: PU Team
+pickle_home_team :: PU HTeam
 pickle_home_team =
   xpElem "hteam" $
     xpWrap (from_tuple, to_tuple) $
@@ -549,16 +549,16 @@ pickle_home_team =
              (xpAttr "abbr" (xpOption xpText)) -- Some are blank
              (xpOption xpText) -- Yup, some are nameless
   where
-    from_tuple = uncurryN Team
-    to_tuple t = (team_id t,
-                  abbreviation t,
-                  name t)
+    from_tuple = HTeam . (uncurryN Team)
+    to_tuple (HTeam t) = (team_id t,
+                          abbreviation t,
+                          name t)
 
 
 -- | (Un)pickle an away team to/from the dual XML/DB representation
 --   'Team'.
 --
-pickle_away_team :: PU Team
+pickle_away_team :: PU VTeam
 pickle_away_team =
   xpElem "vteam" $
     xpWrap (from_tuple, to_tuple) $
@@ -566,10 +566,10 @@ pickle_away_team =
              (xpAttr "abbr" (xpOption xpText)) -- Some are blank
              (xpOption xpText) -- Yup, some are nameless
   where
-    from_tuple = uncurryN Team
-    to_tuple t = (team_id t,
-                  abbreviation t,
-                  name t)
+    from_tuple = VTeam . (uncurryN Team)
+    to_tuple (VTeam t) = (team_id t,
+                          abbreviation t,
+                          name t)
 
 
 pickle_status :: PU JFileGameStatus