Commit 6a45919d authored by Alexandre Delanoë's avatar Alexandre Delanoë

[FACTO|FLOW] HyperdataDocument.

parent be59e592
......@@ -76,13 +76,17 @@ type FlowCmdM env err m =
, HasRepoVar env
)
flowCorpus :: FlowCmdM env ServantErr m
=> Username -> CorpusName -> TermType Lang -> FileFormat -> FilePath -> m CorpusId
flowCorpus u cn la ff fp = do
ids <- flowCorpusMaster la ff fp
flowCorpus u cn la ff fp = liftIO (parseDocs ff fp) >>= \docs -> flowCorpus' u cn la docs
flowCorpus' :: FlowCmdM env ServantErr m
=> Username -> CorpusName -> TermType Lang -> [HyperdataDocument] -> m CorpusId
flowCorpus' u cn la docs = do
ids <- flowCorpusMaster la docs
flowCorpusUser u cn ids
-- TODO query with complex query
flowCorpusSearchInDatabase :: FlowCmdM env ServantErr m
=> Username -> Text -> m CorpusId
......@@ -92,13 +96,10 @@ flowCorpusSearchInDatabase u q = do
flowCorpusUser u q [ids]
flowCorpusMaster :: FlowCmdM env ServantErr m => TermType Lang -> FileFormat -> FilePath -> m [[NodeId]]
flowCorpusMaster la ff fp = do
flowCorpusMaster :: FlowCmdM env ServantErr m => TermType Lang -> [HyperdataDocument] -> m [[NodeId]]
flowCorpusMaster la hd = do
-- Master Flow
docs <- map addUniqIdsDoc <$> liftIO (parseDocs ff fp)
-- ChunkAlong needed for big corpora
-- TODO add LANG as parameter
let docs = map addUniqIdsDoc hd
-- TODO uniformize language of corpus
ids <- mapM (insertMasterDocs la) $ splitEvery 10000 docs
pure ids
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment