[flow] insertMasterDocs with HasNLPServer

This simplifies call still a bit more
parent d4121834
...@@ -9,8 +9,8 @@ Portability : POSIX ...@@ -9,8 +9,8 @@ Portability : POSIX
-} -}
{-# OPTIONS_GHC -fno-warn-unused-top-binds #-}
{-# LANGUAGE ViewPatterns #-} {-# LANGUAGE ViewPatterns #-}
{-# OPTIONS_GHC -fno-warn-unused-top-binds #-}
module Gargantext.Core.Text.Corpus.API.Arxiv module Gargantext.Core.Text.Corpus.API.Arxiv
( get ( get
...@@ -18,7 +18,7 @@ module Gargantext.Core.Text.Corpus.API.Arxiv ...@@ -18,7 +18,7 @@ module Gargantext.Core.Text.Corpus.API.Arxiv
, convertQuery , convertQuery
) where ) where
import Arxiv qualified as Arxiv import Arxiv qualified
import Conduit import Conduit
import Data.Text qualified as Text import Data.Text qualified as Text
import Gargantext.Core (Lang(..)) import Gargantext.Core (Lang(..))
......
...@@ -64,7 +64,7 @@ import Data.Set qualified as Set ...@@ -64,7 +64,7 @@ import Data.Set qualified as Set
import Data.Text qualified as T import Data.Text qualified as T
import Gargantext.API.Ngrams.Tools (getTermsWith) import Gargantext.API.Ngrams.Tools (getTermsWith)
import Gargantext.API.Ngrams.Types (NgramsTerm) import Gargantext.API.Ngrams.Types (NgramsTerm)
import Gargantext.Core (Lang(..), NLPServerConfig, withDefaultLanguage) import Gargantext.Core (Lang(..), withDefaultLanguage)
import Gargantext.Core.Notifications.CentralExchange.Types (HasCentralExchangeNotification(ce_notify), CEMessage(..)) import Gargantext.Core.Notifications.CentralExchange.Types (HasCentralExchangeNotification(ce_notify), CEMessage(..))
import Gargantext.Core.Config (GargConfig(..), hasConfig) import Gargantext.Core.Config (GargConfig(..), hasConfig)
import Gargantext.Core.Config.Types (APIsConfig(..)) import Gargantext.Core.Config.Types (APIsConfig(..))
...@@ -306,8 +306,7 @@ addDocumentsToHyperCorpus :: ( IsDBCmd env err m ...@@ -306,8 +306,7 @@ addDocumentsToHyperCorpus :: ( IsDBCmd env err m
-> [document] -> [document]
-> m [DocId] -> m [DocId]
addDocumentsToHyperCorpus mb_hyper la corpusId docs = do addDocumentsToHyperCorpus mb_hyper la corpusId docs = do
nlpServer <- view $ nlpServerGet (_tt_lang la) ids <- insertMasterDocs mb_hyper la docs
ids <- insertMasterDocs nlpServer mb_hyper la docs
void $ Doc.add corpusId (map nodeId2ContextId ids) void $ Doc.add corpusId (map nodeId2ContextId ids)
pure ids pure ids
...@@ -401,15 +400,16 @@ buildSocialList l user userCorpusId listId ctype mfslw = do ...@@ -401,15 +400,16 @@ buildSocialList l user userCorpusId listId ctype mfslw = do
insertMasterDocs :: ( IsDBCmd env err m insertMasterDocs :: ( IsDBCmd env err m
, HasNodeError err , HasNodeError err
, HasNLPServer env
, FlowCorpus a , FlowCorpus a
, MkCorpus c , MkCorpus c
) )
=> NLPServerConfig => Maybe c
-> Maybe c
-> TermType Lang -> TermType Lang
-> [a] -> [a]
-> m [DocId] -> m [DocId]
insertMasterDocs ncs c lang hs = do insertMasterDocs c lang hs = do
nlpServer <- view $ nlpServerGet (_tt_lang lang)
(masterUserId, _, masterCorpusId) <- getOrMkRootWithCorpus MkCorpusUserMaster c (masterUserId, _, masterCorpusId) <- getOrMkRootWithCorpus MkCorpusUserMaster c
(ids', documentsWithId) <- insertDocs masterUserId masterCorpusId (map (toNode masterUserId Nothing) hs ) (ids', documentsWithId) <- insertDocs masterUserId masterCorpusId (map (toNode masterUserId Nothing) hs )
_ <- Doc.add masterCorpusId ids' _ <- Doc.add masterCorpusId ids'
...@@ -421,7 +421,7 @@ insertMasterDocs ncs c lang hs = do ...@@ -421,7 +421,7 @@ insertMasterDocs ncs c lang hs = do
mapNgramsDocs' :: HashMap.HashMap ExtractedNgrams (Map NgramsType (Map NodeId (TermsWeight, TermsCount))) mapNgramsDocs' :: HashMap.HashMap ExtractedNgrams (Map NgramsType (Map NodeId (TermsWeight, TermsCount)))
<- mapNodeIdNgrams <- mapNodeIdNgrams
<$> documentIdWithNgrams <$> documentIdWithNgrams
(extractNgramsT ncs $ withLang lang documentsWithId) (extractNgramsT nlpServer $ withLang lang documentsWithId)
(map (B.first contextId2NodeId) documentsWithId) (map (B.first contextId2NodeId) documentsWithId)
lId <- getOrMkList masterCorpusId masterUserId lId <- getOrMkList masterCorpusId masterUserId
......
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