66import java .util .Set ;
77
88import com .marklogic .client .DatabaseClient ;
9+ import com .marklogic .client .document .JSONDocumentManager ;
910import com .marklogic .client .document .TextDocumentManager ;
1011import com .marklogic .client .document .XMLDocumentManager ;
1112import com .marklogic .client .helper .LoggingObject ;
13+ import com .marklogic .client .impl .JSONDocumentImpl ;
14+ import com .marklogic .client .io .DocumentMetadataHandle ;
1215import com .marklogic .client .io .FileHandle ;
1316import com .marklogic .client .io .Format ;
1417import com .marklogic .client .schemasloader .SchemasFinder ;
@@ -20,15 +23,22 @@ public class DefaultSchemasLoader extends LoggingObject implements SchemasLoader
2023 public Set <File > loadSchemas (File baseDir , SchemasFinder schemasDataFinder , DatabaseClient client ) {
2124 XMLDocumentManager xmlDocMgr = client .newXMLDocumentManager ();
2225 TextDocumentManager textDocMgr = client .newTextDocumentManager ();
26+ JSONDocumentManager jsonDocMgr = client .newJSONDocumentManager ();
2327
2428 List <File > schemasData = schemasDataFinder .findSchemas (baseDir );
2529
2630 Set <File > loadedSchemas = new HashSet <>();
27-
31+ DocumentMetadataHandle tdeCollection = new DocumentMetadataHandle (). withCollections ( "http://marklogic.com/xdmp/tde" );
2832 for (File f : schemasData ) {
2933 String extension = getExtensionNameFromFile (f );
3034 FileHandle handle = new FileHandle (f );
31- if (extension .equals ("tde" ) || extension .equals ("xsd" )) {
35+ if (extension .equals ("tdej" )) {
36+ jsonDocMgr .write (f .getName (), tdeCollection , handle .withFormat (Format .JSON ));
37+ }
38+ else if (extension .equals ("tdex" )) {
39+ xmlDocMgr .write (f .getName (), tdeCollection , handle .withFormat (Format .XML ));
40+ }
41+ else if (extension .equals ("xsd" )) {
3242 xmlDocMgr .write (f .getName (), handle .withFormat (Format .XML ));
3343 } else {
3444 textDocMgr .write (f .getName (), handle .withFormat (Format .TEXT ));
0 commit comments