]> gitweb.michael.orlitzky.com - dead/htsn-import.git/commitdiff
Move the XML modules into the XML subdirectory.
authorMichael Orlitzky <michael@orlitzky.com>
Tue, 31 Dec 2013 21:40:47 +0000 (16:40 -0500)
committerMichael Orlitzky <michael@orlitzky.com>
Tue, 31 Dec 2013 21:40:47 +0000 (16:40 -0500)
Don't save the default <message> fields along with the news.
Make the makefile a little more accurate.

makefile
src/Main.hs
src/TSN/XML/Injuries.hs [moved from src/TSN/Injuries.hs with 99% similarity]
src/TSN/XML/InjuriesDetail.hs [moved from src/TSN/InjuriesDetail.hs with 99% similarity]
src/TSN/XML/News.hs [moved from src/TSN/News.hs with 96% similarity]
test/TestSuite.hs

index 1be5000fa3b35e2eb13c4dac70f340994ddc1c83..07530a6efb6c04cf9ecf92040b64b4b4e61b04d1 100644 (file)
--- a/makefile
+++ b/makefile
@@ -1,20 +1,22 @@
 PN = htsn-import
 BIN = dist/build/$(PN)/$(PN)
 TESTSUITE_BIN = dist/build/testsuite/testsuite
+SRCS := $(shell find src/ -type f -name '*.hs')
+TEST_SRCS := $(shell find test/ -type f -name '*.hs')
 
 .PHONY : dist hlint
 
-$(BIN): $(PN).cabal src/*.hs src/TSN/*.hs
+$(BIN): $(PN).cabal $(SRCS)
        runghc Setup.hs clean
        runghc Setup.hs configure --user --prefix=/
        runghc Setup.hs build
 
-profile: $(PN).cabal src/*.hs src/TSN/*.hs
+profile: $(PN).cabal $(SRCS)
        runghc Setup.hs clean
        runghc Setup.hs configure --user --enable-executable-profiling --prefix=/
        runghc Setup.hs build
 
-doc: $(PN).cabal src/*.hs src/TSN/*.hs
+doc: $(PN).cabal $(SRCS)
        runghc Setup.hs configure --user --prefix=/
        runghc Setup.hs hscolour --executables
        runghc Setup.hs haddock --internal    \
@@ -27,7 +29,7 @@ clean:
        rm -f *.xml
        rm -rf tmp
 
-$(TESTSUITE_BIN): $(PN).cabal src/*.hs test/TestSuite.hs
+$(TESTSUITE_BIN): $(PN).cabal $(SRCS) $(TEST_SRCS)
        runghc Setup.hs configure --user --enable-tests --prefix=/
        runghc Setup.hs build
 
index 568f0fe99f55c48b105ab31e04fd5e99d12dd08b..3ea260642286dc5cc44efa510152eb892c53e271 100644 (file)
@@ -39,9 +39,9 @@ import Network.Services.TSN.Report (
   report_info,
   report_error )
 import TSN.DbImport
-import qualified TSN.Injuries as Injuries ( Listing )
-import qualified TSN.InjuriesDetail as InjuriesDetail ( PlayerListing )
-import qualified TSN.News as News ( Message )
+import qualified TSN.XML.Injuries as Injuries ( Listing )
+import qualified TSN.XML.InjuriesDetail as InjuriesDetail ( PlayerListing )
+import qualified TSN.XML.News as News ( Message )
 import Xml ( parse_opts )
 
 
similarity index 99%
rename from src/TSN/Injuries.hs
rename to src/TSN/XML/Injuries.hs
index 8c2de14b04006e0a954fd156505ec8dc5fa8ae2c..92bf4e27757dca8c1de4320a920a982be609d1df 100644 (file)
@@ -13,7 +13,7 @@
 --   The listings will be mapped to a database table called "injuries"
 --   automatically. The root message is not retained.
 --
-module TSN.Injuries (
+module TSN.XML.Injuries (
   Listing,
   Message( listings ),
   injuries_tests )
similarity index 99%
rename from src/TSN/InjuriesDetail.hs
rename to src/TSN/XML/InjuriesDetail.hs
index a787ad5251b0d553e99804d2f1c1b98593b0883c..cb3afeae4446892f9dafece85b063a8d29e62716 100644 (file)
@@ -17,7 +17,7 @@
 --   "injuries_detail" automatically. The root "message" and "listing"
 --   are not retained.
 --
-module TSN.InjuriesDetail (
+module TSN.XML.InjuriesDetail (
   Listing ( player_listings ),
   Message ( listings ),
   PlayerListing,
similarity index 96%
rename from src/TSN/News.hs
rename to src/TSN/XML/News.hs
index 2366819dcc35418d5be83ea3c165cda5b6af2da6..61da812807e7920a50f089a3767f13beff9200f6 100644 (file)
@@ -11,7 +11,7 @@
 -- | Parse TSN XML for the DTD "newsxml.dtd". Each document contains a
 --   root element \<message\> that contains an entire news item.
 --
-module TSN.News (
+module TSN.XML.News (
   Message,
   news_tests )
 where
@@ -152,16 +152,12 @@ data MessageXml =
 
 data Message =
   Message {
-    db_xml_file_id :: Int,
-    db_heading :: String,
     db_mid :: MsgId,
-    db_category :: String,
     db_sport :: String,
     db_url :: String,
     db_sms :: String,
     db_text :: String,
-    db_continue :: String,
-    db_time_stamp :: String }
+    db_continue :: String }
   deriving (Eq, Show)
 
 instance ToFromXml Message where
@@ -172,10 +168,10 @@ instance ToFromXml Message where
   -- used our named fields.
   to_xml (Message {..}) =
     MessageXml
-      db_xml_file_id
-      db_heading
+      0
+      ""
       db_mid
-      db_category
+      ""
       db_sport
       db_url
       []
@@ -183,12 +179,12 @@ instance ToFromXml Message where
       db_sms
       db_text
       db_continue
-      db_time_stamp
+      ""
 
   -- We don't need the key argument (from_xml_fk) since the XML type
   -- contains more information in this case.
-  from_xml (MessageXml a b c d e f _ _ g h i j) =
-    Message a b c d e f g h i j
+  from_xml (MessageXml _ _ c _ e f _ _ g h i _) =
+    Message c e f g h i
 
 
 mkPersist tsn_codegen_config [groundhog|
index f5f1b4f9d4bfd23f6fed43c2f4e09870b4c7c894..4446f8c59d85952594af9af9b34e44dc3689fa27 100644 (file)
@@ -1,8 +1,8 @@
 import Test.Tasty ( TestTree, defaultMain, testGroup )
 
-import TSN.Injuries ( injuries_tests )
-import TSN.InjuriesDetail ( injuries_detail_tests )
-import TSN.News ( news_tests )
+import TSN.XML.Injuries ( injuries_tests )
+import TSN.XML.InjuriesDetail ( injuries_detail_tests )
+import TSN.XML.News ( news_tests )
 
 tests :: TestTree
 tests = testGroup