Changeset 685:68f4e9215b28


Ignore:
Timestamp:
11/02/12 18:25:39 (5 years ago)
Author:
Panayiotis Smeros <psmeros@…>
Branch:
temporals
Message:

Added a regex to spot quadruples.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • runtime/src/main/java/eu/earthobservatory/runtime/generaldb/Strabon.java

    r665 r685  
    77 *  
    88 * http://www.strabon.di.uoa.gr/ 
     9 *  
     10 * @author Panayiotis Smeros <psmeros@di.uoa.gr> 
    911 */ 
    1012package eu.earthobservatory.runtime.generaldb; 
     
    2325import java.util.Collection; 
    2426import java.util.Iterator; 
     27import java.util.regex.Matcher; 
     28import java.util.regex.Pattern; 
    2529 
    2630import org.openrdf.model.Statement; 
     
    216220                boolean status = true; 
    217221                 
    218                 logger.info("[Strabon.query] Executing query: {}", queryString); 
     222                logger.info("[Strabon.query] Executing query: \n{}", queryString); 
    219223                 
    220224                // check for null stream 
     
    227231                TupleQuery tupleQuery = null; 
    228232                try { 
     233                        queryString = convertQueryToSparql(queryString); 
    229234                        tupleQuery = con.prepareTupleQuery(QueryLanguage.SPARQL, queryString); 
    230235                         
     
    271276                return status; 
    272277        } 
     278 
     279        private String convertQueryToSparql(String queryString) { 
     280                 
     281                //TODO 
     282                String newQueryString=""; 
     283                 
     284                // check whether the query contains quadtruples 
     285                String REGEX = ".*\\{.*([[a-z][A-Z][?/<>^#]]+(\\s)+){3}(\\s)*[.}(.})]?.*\\}.*"; 
     286                Pattern limitPattern = Pattern.compile(REGEX, Pattern.DOTALL);                                                   
     287                Matcher limitMatcher = limitPattern.matcher(queryString); 
     288                 
     289                if(limitMatcher.matches())               
     290                { 
     291                        logger.info("\n\nQUADRUPLE SPOTTED\n\n"); 
     292                } 
     293                else 
     294                { 
     295                        logger.info("\n\nQUADRUPLE NOT SPOTTED\n\n"); 
     296                        newQueryString=queryString; 
     297                } 
     298                return newQueryString; 
     299        } 
     300 
    273301 
    274302        public void update(String updateString, SailRepositoryConnection con) throws MalformedQueryException  
Note: See TracChangeset for help on using the changeset viewer.