1818import com .antgroup .openspg .builder .core .runtime .BuilderContext ;
1919import com .antgroup .openspg .builder .core .runtime .impl .DefaultBuilderCatalog ;
2020import com .antgroup .openspg .builder .model .pipeline .config .GraphStoreSinkNodeConfig ;
21+ import com .antgroup .openspg .builder .model .pipeline .config .Neo4jSinkNodeConfig ;
2122import com .antgroup .openspg .builder .model .record .BaseRecord ;
2223import com .antgroup .openspg .builder .model .record .RecordAlterOperationEnum ;
2324import com .antgroup .openspg .builder .model .record .SubGraphRecord ;
2425import com .antgroup .openspg .builder .runner .local .physical .sink .impl .GraphStoreSinkWriter ;
26+ import com .antgroup .openspg .builder .runner .local .physical .sink .impl .Neo4jSinkWriter ;
2527import com .antgroup .openspg .core .schema .model .identifier .SPGTypeIdentifier ;
2628import com .antgroup .openspg .core .schema .model .type .BaseSPGType ;
2729import com .antgroup .openspg .core .schema .model .type .ConceptList ;
3941import com .antgroup .openspg .server .biz .schema .SchemaManager ;
4042import com .antgroup .openspg .server .biz .service .GraphManager ;
4143import com .google .common .collect .Lists ;
42- import java .util .*;
44+ import java .util .HashMap ;
45+ import java .util .List ;
46+ import java .util .Map ;
47+ import java .util .UUID ;
4348import lombok .extern .slf4j .Slf4j ;
4449import org .apache .commons .collections4 .CollectionUtils ;
4550import org .springframework .beans .factory .annotation .Autowired ;
@@ -173,12 +178,13 @@ public void check() {
173178 @ Override
174179 public Boolean action () {
175180 ProjectSchema projectSchema = schemaManager .getProjectSchema (request .getProjectId ());
176- boolean enableLeadTo = request .getEnableLeadTo () != null && request .getEnableLeadTo ();
181+ boolean enableLeadTo =
182+ (request .getEnableLeadTo () == null ) ? false : request .getEnableLeadTo ();
177183 Map <SPGTypeIdentifier , ConceptList > conceptLists =
178184 getConceptLists (enableLeadTo , projectSchema );
179- GraphStoreSinkWriter writer =
180- new GraphStoreSinkWriter (
181- UUID .randomUUID ().toString (), "图存储" , new GraphStoreSinkNodeConfig (true ));
185+ Neo4jSinkWriter writer =
186+ new Neo4jSinkWriter (
187+ UUID .randomUUID ().toString (), "图存储" , new Neo4jSinkNodeConfig (true ));
182188 BuilderContext context =
183189 new BuilderContext ()
184190 .setProjectId (request .getProjectId ())
@@ -195,13 +201,12 @@ public Boolean action() {
195201
196202 SubGraphRecord subGraph =
197203 JSON .parseObject (JSON .toJSONString (request .getSubGraph ()), SubGraphRecord .class );
198- List <BaseRecord > records = Lists .newArrayList ();
199- records .add (subGraph );
200- writer .write (records );
201-
204+ writer .writeToNeo4j (subGraph );
202205 if (context .isEnableLeadTo ()) {
203206 ReasonProcessor reasonProcessor = new ReasonProcessor ();
204207 reasonProcessor .init (context );
208+ List <BaseRecord > records = Lists .newArrayList ();
209+ records .add (subGraph );
205210 List <BaseRecord > reasonResults = reasonProcessor .process (records );
206211 if (CollectionUtils .isNotEmpty (reasonResults )) {
207212 GraphStoreSinkWriter sinkWriter =
0 commit comments