差分発生行の前後
無視リスト:
更新日時:
2016/03/14 20:01:59 (9 年 前)
更新者:
nori
ログメッセージ:

クローラー結果としてCrawledDataset が扱えるようにの暫定版

パス:
SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder
ファイル:
7 変更

凡例:

変更なし
追加
削除
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/OWL/AcquiredStructureAnalyzer.java

    r267 r269  
    33import java.util.*; 
    44 
    5 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.JenaModelGenerator; 
    6 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.URICollection; 
     5import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.JenaModelGenerator; 
     6import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.URICollection; 
     7import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.crawler.CrawledMetadata; 
     8import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.crawler.Dataset; 
    79 
    810import com.hp.hpl.jena.query.Query; 
     
    2022public class AcquiredStructureAnalyzer implements RDFSchemaAnalyzer { 
    2123 
    22         private Model model = null; 
    23         private String endpointURI = null; 
    24         private String[] graphURIs = null; 
     24        private CrawledMetadata crawledMetadata = null; 
    2525 
    2626        public String getEndpointURI(){ 
    27                 return endpointURI; 
     27                return crawledMetadata.getEndpointURI(); 
    2828        } 
    2929 
    3030        public String[] getGraphURIs(){ 
    31                 return graphURIs; 
     31                return crawledMetadata.getGraphURIs(); 
    3232        } 
    3333         
     
    5757        */ 
    5858         
    59         public AcquiredStructureAnalyzer(String endpointURI, String[] graphURIs, Model model){ 
    60                 this.model = model; 
    61                 this.endpointURI = endpointURI; 
    62                 this.graphURIs = graphURIs; 
    63         } 
    64  
    65         private String[] filterGraphURIs(String[] orgGraphURIs){ 
     59        public AcquiredStructureAnalyzer(CrawledMetadata crawledMetadata){ 
     60                this.crawledMetadata = crawledMetadata; 
     61        } 
     62 
     63        private String filterGraphURIs(String orgGraphURIs){ 
    6664                // TODO 
    67                 return graphURIs; 
    68         } 
    69  
    70          
    71         public SClass[] listClasses(String[] graphURIs, boolean countInstances) throws Exception{ 
    72                 return getOWLClasses(graphURIs, null, null, countInstances); 
    73         } 
    74                  
    75                  
    76  
    77          
    78         public SClass[] getOWLClasses(String[] graphURIs, String[] keywords, String language, boolean countInstances) throws Exception{ 
    79                 return getOWLClassList(graphURIs, keywords, language, countInstances).toArray(new SClass[0]); 
    80         } 
    81  
    82         public List<SClass> getOWLClassList(String[] graphURIs, String[] keywords, String language, boolean countInstances) throws Exception{ 
    83                 String[] targetGraphURIs = filterGraphURIs(graphURIs); 
    84  
     65                return orgGraphURIs; 
     66        } 
     67 
     68         
     69        public SClass[] listClasses(String graphURI, boolean countInstances) throws Exception{ 
     70                return getOWLClasses(graphURI, null, null, countInstances); 
     71        } 
     72                 
     73                 
     74 
     75         
     76        public SClass[] getOWLClasses(String graphURI, String[] keywords, String language, boolean countInstances) throws Exception{ 
     77                return getOWLClassList(graphURI, keywords, language, countInstances).toArray(new SClass[0]); 
     78        } 
     79 
     80        public List<SClass> getOWLClassList(String graphURI, String[] keywords, String language, boolean countInstances) throws Exception{ 
     81                String targetGraphURI = filterGraphURIs(graphURI); 
     82 
     83                Dataset dataset = crawledMetadata.getDataset(targetGraphURI); 
     84 
     85                 
    8586                StringBuffer queryStr = new StringBuffer(); 
    8687                queryStr.append("PREFIX owl: <http://www.w3.org/2002/07/owl#>\n"); 
     
    8889                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    8990                queryStr.append("SELECT DISTINCT ?c ?pLabel ?entities\n"); 
    90 //              if (targetGraphURIs != null) { 
    91 //                      for (String graphURI : targetGraphURIs) { 
    92 //                              queryStr.append("FROM <"); 
    93 //                              queryStr.append(graphURI); 
    94 //                              queryStr.append(">\n"); 
    95 //                      } 
    96 //              } 
     91                if (targetGraphURI != null) { 
     92                                queryStr.append("FROM <"); 
     93                                queryStr.append(targetGraphURI); 
     94                                queryStr.append(">\n"); 
     95                        } 
    9796                queryStr.append("WHERE{\n"); 
    9897                queryStr.append(" ?cp <").append(URICollection.PROPERTY_VOID_CLASS).append("> ?c. \n"); 
     
    133132                try { 
    134133//                      long start = System.currentTimeMillis(); 
    135                         qexec = QueryExecutionFactory.create(query, model); 
     134                        qexec = QueryExecutionFactory.create(query, dataset.getModel()); 
    136135                        results = qexec.execSelect(); 
    137136//                      long end = System.currentTimeMillis(); 
     
    177176 
    178177 
    179         public ClassLink[] getNextClass(String[] graphURIs, String originClass, int limit, boolean countLinks) throws Exception{ 
    180                 String[] targetGraphURIs = filterGraphURIs(graphURIs); 
    181  
     178        public ClassLink[] getNextClass(String graphURI, String originClass, int limit, boolean countLinks) throws Exception{ 
     179                String targetGraphURI = filterGraphURIs(graphURI); 
     180                Dataset dataset = crawledMetadata.getDataset(targetGraphURI); 
     181 
     182                 
    182183                StringBuffer queryStr = new StringBuffer(); 
    183184                queryStr.append("PREFIX owl: <http://www.w3.org/2002/07/owl#>\n"); 
     
    188189                queryStr.append("SELECT DISTINCT ?indPropCat ?c ?dat ?d ?p ?numLnkInsStart ?numLnkInsEnd ?numInsDom ?numInsRan ?numTriples\n"); 
    189190 
    190 //              if (targetGraphURIs != null) { 
    191 //                      for (String graphURI : targetGraphURIs) { 
    192 //                              queryStr.append("FROM <"); 
    193 //                              queryStr.append(graphURI); 
    194 //                              queryStr.append(">\n"); 
    195 //                      } 
    196 //              } 
     191                if (targetGraphURI != null) { 
     192                                queryStr.append("FROM <"); 
     193                                queryStr.append(targetGraphURI); 
     194                                queryStr.append(">\n"); 
     195                } 
    197196 
    198197                queryStr.append("WHERE{\n"); 
     
    254253                try { 
    255254                        long start = System.currentTimeMillis(); 
    256                         qexec = QueryExecutionFactory.create(query, model); 
     255                        qexec = QueryExecutionFactory.create(query, dataset.getModel()); 
    257256                        results = qexec.execSelect(); 
    258257                        long end = System.currentTimeMillis(); 
     
    363362*/ 
    364363 
    365         public LabelMap[] getLabels(String[] graphURIs, String[] resourceURIs, 
     364        public LabelMap[] getLabels(String graphURI, String[] resourceURIs, 
    366365                        String language) throws Exception { 
    367                 if (resourceURIs == null || resourceURIs.length == 0) { 
    368                         return new LabelMap[0]; 
    369                 } 
     366//              if (resourceURI == null || resourceURIs.length == 0) { 
     367//                      return new LabelMap[0]; 
     368//              } 
     369         
     370                String targetGraphURI = filterGraphURIs(graphURI); 
     371                Dataset dataset = crawledMetadata.getDataset(targetGraphURI); 
     372 
     373                 
    370374                StringBuffer queryStr = new StringBuffer(); 
    371375                queryStr.append("PREFIX owl: <http://www.w3.org/2002/07/owl#>\n"); 
     
    373377                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    374378                queryStr.append("SELECT DISTINCT ?res ?label \n"); 
    375                 if (graphURIs != null) { 
    376                         for (String graphURI : graphURIs) { 
     379                if (targetGraphURI != null) { 
    377380                                queryStr.append("FROM <"); 
    378                                 queryStr.append(graphURI); 
     381                                queryStr.append(targetGraphURI); 
    379382                                queryStr.append(">\n"); 
    380                         } 
    381383                } 
    382384                queryStr.append("WHERE{\n"); 
     
    399401 
    400402                Query query = QueryFactory.create(queryStr.toString()); 
    401                 QueryExecution qexec = QueryExecutionFactory.create(query, model); 
     403                QueryExecution qexec = QueryExecutionFactory.create(query, dataset.getModel()); 
    402404                 
    403405                ResultSet results = qexec.execSelect(); 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/OWL/EndpointAnalyzer.java

    r268 r269  
    148148         */ 
    149149 
    150         public List<SClass> getOWLClassList(String[] graphURIs, String[] keywords, 
     150        public List<SClass> getOWLClassList(String graphURI, String[] keywords, 
    151151                        String language, 
    152152 
     
    157157//        public List<SClass>  
    158158         
    159         public SClass[] getOWLClasses(String[] graphURIs, String[] keywords, 
     159        public SClass[] getOWLClasses(String graphURI, String[] keywords, 
    160160                        String language, 
    161161 
     
    170170                        queryStr.append("SELECT DISTINCT ?c ?pLabel \n"); 
    171171                } 
    172                 if (graphURIs != null) { 
    173                         for (String graphURI : graphURIs) { 
     172                if (graphURI != null) { 
     173//                      for (String graphURI : graphURIs) { 
    174174                                queryStr.append("FROM <"); 
    175175                                queryStr.append(graphURI); 
    176176                                queryStr.append(">\n"); 
    177                         } 
     177//                      } 
    178178                } 
    179179                queryStr.append("WHERE{\n"); 
     
    271271        } 
    272272 
    273         public SClass[] listClasses(String[] graphURIs, boolean countInstances) 
     273        public SClass[] listClasses(String graphURI, boolean countInstances) 
    274274                        throws Exception { 
    275275                StringBuffer queryStr = new StringBuffer(); 
     
    283283                } 
    284284 
    285                 if (graphURIs != null) { 
    286                         for (String graphURI : graphURIs) { 
     285                if (graphURI != null) { 
     286//                      for (String graphURI : graphURIs) { 
    287287                                queryStr.append("FROM <"); 
    288288                                queryStr.append(graphURI); 
    289289                                queryStr.append(">\n"); 
    290                         } 
     290//                      } 
    291291                } 
    292292                queryStr.append("WHERE{\n"); 
     
    374374         * @since 28.01.2014 
    375375         */ 
    376         public Instance[] getInstances(String[] graphURIs, String keyword) 
     376        public Instance[] getInstances(String graphURI, String keyword) 
    377377                        throws Exception { 
    378378                StringBuffer queryStr = new StringBuffer(); 
     
    381381                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    382382                queryStr.append("SELECT DISTINCT ?ins ?c \n"); 
    383                 if (graphURIs != null) { 
    384                         for (String graphURI : graphURIs) { 
     383                if (graphURI != null) { 
    385384                                queryStr.append("FROM <"); 
    386385                                queryStr.append(graphURI); 
    387386                                queryStr.append(">\n"); 
    388                         } 
    389387                } 
    390388                queryStr.append("WHERE{\n"); 
     
    450448         * @since 28.01.2014 
    451449         */ 
    452         public ClassLink[] getNextClass(String[] graphURIs, String originClass, 
     450        public ClassLink[] getNextClass(String graphURI, String originClass, 
    453451                        int limit, boolean countLinks) throws Exception { 
    454                 ClassLink[] cLinks = getNextClassSub(graphURIs, originClass, limit, 
     452                ClassLink[] cLinks = getNextClassSub(graphURI, originClass, limit, 
    455453                                false); 
    456454                if (countLinks) { 
    457                         cLinks = countLinks(graphURIs, originClass, cLinks); 
     455                        cLinks = countLinks(graphURI, originClass, cLinks); 
    458456                } 
    459457                return cLinks; 
    460458        } 
    461459 
    462         private ClassLink[] getNextClassSub(String[] graphURIs, String originClass, 
     460        private ClassLink[] getNextClassSub(String graphURI, String originClass, 
    463461                        int limit, boolean countLinks) throws Exception { 
    464462                StringBuffer queryStr = new StringBuffer(); 
     
    474472                } 
    475473 
    476                 if (graphURIs != null) { 
    477                         for (String graphURI : graphURIs) { 
     474                if (graphURI != null) { 
    478475                                queryStr.append("FROM <"); 
    479476                                queryStr.append(graphURI); 
    480477                                queryStr.append(">\n"); 
    481                         } 
    482478                } 
    483479                queryStr.append("WHERE{\n"); 
     
    615611         * @since 28.01.2014 
    616612         */ 
    617         public ClassLink[] getNextClassViaInstanceLink(String[] graphURIs, 
     613        public ClassLink[] getNextClassViaInstanceLink(String graphURI, 
    618614                        String originClass, int limit) throws Exception { 
    619615                StringBuffer queryStr = new StringBuffer(); 
     
    622618                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    623619                queryStr.append("SELECT DISTINCT ?pf ?pr (COUNT(?pf) AS ?numOfForwardLinks) (COUNT(?pr) AS ?numOfReverseLinks) (COUNT(DISTINCT(?insOrg)) AS ?numOfOriginInstances) (COUNT(DISTINCT(?ins)) AS ?numOfLinkedInstances)  ?c \n"); 
    624                 if (graphURIs != null) { 
    625                         for (String graphURI : graphURIs) { 
     620                if (graphURI != null) { 
     621//                      for (String graphURI : graphURIs) { 
    626622                                queryStr.append("FROM <"); 
    627623                                queryStr.append(graphURI); 
    628624                                queryStr.append(">\n"); 
    629                         } 
     625//                      } 
    630626                } 
    631627                queryStr.append("WHERE{\n"); 
     
    757753         * @since 28.01.2014 
    758754         */ 
    759         public InstanceLink[] getNextInstancesViaInstanceLink(String[] graphURIs, 
     755        public InstanceLink[] getNextInstancesViaInstanceLink(String graphURI, 
    760756                        String originInstance, int limit) throws Exception { 
    761757                StringBuffer queryStr = new StringBuffer(); 
     
    764760                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    765761                queryStr.append("SELECT DISTINCT ?pf ?pr ?ins ?c \n"); 
    766                 if (graphURIs != null) { 
    767                         for (String graphURI : graphURIs) { 
     762                if (graphURI != null) { 
    768763                                queryStr.append("FROM <"); 
    769764                                queryStr.append(graphURI); 
    770765                                queryStr.append(">\n"); 
    771                         } 
    772766                } 
    773767                queryStr.append("WHERE{\n"); 
     
    833827        } 
    834828 
    835         public LabelMap[] getLabels(String[] graphURIs, String[] resourceURIs, 
     829        public LabelMap[] getLabels(String graphURI, String[] resourceURIs, 
    836830                        String language) throws Exception { 
    837                 if (resourceURIs == null || resourceURIs.length == 0) { 
    838                         return new LabelMap[0]; 
    839                 } 
     831//              if (resourceURIs == null || resourceURIs.length == 0) { 
     832//                      return new LabelMap[0]; 
     833//              } 
    840834                StringBuffer queryStr = new StringBuffer(); 
    841835                queryStr.append("PREFIX owl: <http://www.w3.org/2002/07/owl#>\n"); 
     
    843837                queryStr.append("PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\n"); 
    844838                queryStr.append("SELECT DISTINCT ?res ?label \n"); 
    845                 if (graphURIs != null) { 
    846                         for (String graphURI : graphURIs) { 
     839                if (graphURI != null) { 
    847840                                queryStr.append("FROM <"); 
    848841                                queryStr.append(graphURI); 
    849842                                queryStr.append(">\n"); 
    850                         } 
    851843                } 
    852844                queryStr.append("WHERE{\n"); 
     
    896888        } 
    897889 
    898         public ClassLink[] countLinks(String[] graphURIs, String startClassURI, 
     890        public ClassLink[] countLinks(String graphURI, String startClassURI, 
    899891                        ClassLink[] classLinks) throws Exception { 
    900892                if (classLinks == null || classLinks.length == 0) { 
     
    908900 
    909901                        queryStr.append("SELECT (COUNT(?os) AS ?numOfLinks) (COUNT(DISTINCT(?is)) AS ?numOfOriginInstances) (COUNT(DISTINCT(?os)) AS ?numOfLinkedInstances) \n"); 
    910                         if (graphURIs != null) { 
    911                                 for (String graphURI : graphURIs) { 
     902                        if (graphURI != null) { 
    912903                                        queryStr.append("FROM <"); 
    913904                                        queryStr.append(graphURI); 
    914905                                        queryStr.append(">\n"); 
    915                                 } 
    916906                        } 
    917907 
     
    1003993 
    1004994                        queryStr.append("SELECT (COUNT(?ics) AS ?numOfOriginClassInstances) \n"); 
    1005                         if (graphURIs != null) { 
    1006                                 for (String graphURI : graphURIs) { 
     995                        if (graphURI != null) { 
    1007996                                        queryStr.append("FROM <"); 
    1008997                                        queryStr.append(graphURI); 
    1009998                                        queryStr.append(">\n"); 
    1010                                 } 
    1011999                        } 
    10121000 
     
    10561044 
    10571045                        queryStr.append("SELECT (COUNT(?ocs) AS ?numOfLinkedClassInstances) \n"); 
    1058                         if (graphURIs != null) { 
    1059                                 for (String graphURI : graphURIs) { 
     1046                        if (graphURI != null) { 
    10601047                                        queryStr.append("FROM <"); 
    10611048                                        queryStr.append(graphURI); 
    10621049                                        queryStr.append(">\n"); 
    1063                                 } 
    10641050                        } 
    10651051 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/OWL/RDFSchemaAnalyzer.java

    r267 r269  
    2727         * @since 28.01.2014 
    2828         */ 
    29         public SClass[] getOWLClasses(String[] graphURIs, String[] keyword, String language, boolean countInstances) throws Exception; 
     29        public SClass[] getOWLClasses(String graphURI, String[] keyword, String language, boolean countInstances) throws Exception; 
    3030 
    31         public List<SClass> getOWLClassList(String[] graphURIs, String[] keyword, String language, boolean countInstances) throws Exception; 
     31        public List<SClass> getOWLClassList(String graphURI, String[] keyword, String language, boolean countInstances) throws Exception; 
    3232 
    33         public SClass[] listClasses(String[] graphURIs, boolean countInstances) throws Exception; 
     33        public SClass[] listClasses(String graphURI, boolean countInstances) throws Exception; 
    3434         
    3535        /** 
     
    6666         * @since 28.01.2014 
    6767         */ 
    68         public ClassLink[] getNextClass(String[] graphURIs, String originClass, int limit, boolean countLinks) throws Exception; 
     68        public ClassLink[] getNextClass(String graphURI, String originClass, int limit, boolean countLinks) throws Exception; 
    6969 
    7070        /** 
     
    111111//                      int limit) throws Exception; 
    112112 
    113  public LabelMap[] getLabels(String[] graphURIs, String[] resourceURIs, String language) throws Exception; 
     113 public LabelMap[] getLabels(String graphURI, String[] resourceURIs, String language) throws Exception; 
    114114 
    115115// public ClassLink[] countLinks(String[] graphURIs, String startClassURI, 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/OWL/RDFSchemaAnalyzerFactory.java

    r267 r269  
    88import org.biohackathon.SPARQLBuilder.endpointMetadata.MetadataManager; 
    99 
    10 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.JenaModelGenerator; 
     10import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.JenaModelGenerator; 
     11import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.crawler.CrawledMetadata; 
    1112 
    1213public class RDFSchemaAnalyzerFactory { 
     
    4748        } 
    4849 
    49         public MetadataFile[] getMetadataFiles(){ 
    50                 return metadataManager.getMetadataFiles(); 
     50        public CrawledMetadata[] getMetadataFiles(){ 
     51                return metadataManager.getCrawlerMetadataList(); 
    5152        } 
    5253         
    5354 
    5455        public RDFSchemaAnalyzer create(String uri) throws Exception{ 
    55                 MetadataFile mFile = metadataManager.getMetadataFile(uri); 
    56                 if( mFile == null ){ 
     56                CrawledMetadata crawledMetadata = metadataManager.getCrawledMetadata(uri); 
     57                if( crawledMetadata == null ){ 
    5758                        return new EndpointAnalyzer(uri); 
    5859                }else{ 
    59                         JenaModelGenerator jmGene = new JenaModelGenerator(mFile.getFilePath()); 
    60                         return new AcquiredStructureAnalyzer(jmGene.getEndpointURI(), jmGene.getGraphURIs(), jmGene.getModel()); 
     60                        return new AcquiredStructureAnalyzer(crawledMetadata); 
    6161                } 
    6262        } 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/OWL/StructureCrawler.java

    r267 r269  
    66import java.util.Set; 
    77 
    8 import jp.riken.accc.db.rdf.crawler.dataStructure.SchemaCategory; 
    9 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.JenaModelGenerator; 
    10 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.RDFsCrawlerImpl; 
     8import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.SchemaCategory; 
     9import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.JenaModelGenerator; 
     10import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.RDFsCrawlerImpl; 
    1111 
    1212public class StructureCrawler { 
     
    7575        } 
    7676 
    77         public void crawl(String endPURI, String outFileName) throws Exception { 
    78                 RDFsCrawlerImpl impl = new RDFsCrawlerImpl(endPURI); 
    79                 // Resource[] res = impl.getRDFProperties(); 
    80                 // Resource[] res = impl.getInferedRDFsClassesFromInstances(); 
    81                 // Resource[] res = impl.getDomainRangeDeclaredRDFProperties(); 
    82                 // Resource[] res = impl.getDeclaredRDFsClasses(); 
    83                 // for(Resource r: res){ 
    84                 // System.out.println(r.getURI().toString()); 
    85                 // } 
    86                 // Model model = impl.getProperiesFromDomainRangeDecls(); 
    87                 // Model model = impl.getPropertiesFromInstanceDecls(); 
    88                 // RDFWriter writer = model.getWriter("N3"); 
    89                 // writer.setProperty("showXMLDeclaration","true"); 
    90                 // writer.write(model,System.out,""); 
    91                 // model.close(); 
    92  
     77        public void crawl(String endPURI, String crawlName, String outFileName) throws Exception { 
     78                RDFsCrawlerImpl impl = new RDFsCrawlerImpl(endPURI, crawlName); 
    9379                SchemaCategory sc = impl.determineSchemaCategory(); 
    9480 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/endpointMetadata/MetadataFile.java

    r267 r269  
    55import java.util.Calendar; 
    66 
    7 import jp.riken.accc.db.rdf.crawler.dataStructure.sparql.URICollection; 
     7import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.URICollection; 
    88 
    99import org.apache.jena.riot.RDFDataMgr; 
  • SPARQLBuilderWWW2016/src/java/org/biohackathon/SPARQLBuilder/endpointMetadata/MetadataManager.java

    r267 r269  
    55import java.util.Set; 
    66 
     7import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.crawler.CrawledMetadata; 
     8import jp.riken.accc.db.sparqlBuilderMetadata.crawler.dataStructure.sparql.crawler.CrawledMetadataFileReader; 
     9 
    710public class MetadataManager { 
    811 
    9         HashMap<String,MetadataFile> metadataTable = null; 
     12        HashMap<String,CrawledMetadata> metadataTable = null; 
    1013         
    1114        /* 
     
    2225        }*/      
    2326 
    24         public MetadataFile[] getMetadataFiles(){ 
    25                 return metadataTable.values().toArray(new MetadataFile[0]); 
     27        public CrawledMetadata[] getCrawlerMetadataList(){ 
     28                return metadataTable.values().toArray(new CrawledMetadata[0]); 
    2629        } 
    27         public MetadataFile getMetadataFile(String uri){ 
     30        public CrawledMetadata getCrawledMetadata(String uri){ 
    2831                return metadataTable.get(uri); 
    2932        } 
     
    4144         
    4245        public void init(String metadataDirStr) throws Exception{ 
    43                 metadataTable = new HashMap<String,MetadataFile>(); 
     46                metadataTable = new HashMap<String,CrawledMetadata>(); 
    4447                File metadataDir = new File(metadataDirStr); 
    4548                File[] files = null; 
     
    5861                } 
    5962                for(File file: files){ 
    60                         MetadataFile metadataFile = null; 
     63                        CrawledMetadata crawledMetadata = null; 
    6164                        try{ 
    62                                 metadataFile = new MetadataFile(file); 
    63                                 String uri = metadataFile.getEndpointURI(); 
     65                                crawledMetadata = CrawledMetadataFileReader.readFile(file.getCanonicalPath()); 
     66                                String uri = crawledMetadata.getEndpointURI(); 
    6467                                if( uri != null ){ 
    6568                                        if( metadataTable.containsKey(uri)){ 
    66                                                 MetadataFile tempMF = metadataTable.get(uri); 
    67                                                 if(tempMF.getEndDateTime().before(metadataFile.getEndDateTime()) ){ 
     69                                                CrawledMetadata tempMF = metadataTable.get(uri); 
     70                                                if(tempMF.getDefaultDataset().getCrawlLog().crawlEndTime.before(crawledMetadata.getDefaultDataset().getCrawlLog().crawlEndTime) ){ 
    6871                                                        metadataTable.remove(uri); 
    69                                                         metadataTable.put(uri,  metadataFile); 
     72                                                        metadataTable.put(uri,  crawledMetadata); 
    7073                                                } 
    7174                                        }else{ 
    72                                                 metadataTable.put(uri, metadataFile); 
     75                                                metadataTable.put(uri, crawledMetadata); 
    7376                                        } 
    7477                                }