All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nl.coinsweb.sdk.validator.InferenceQueryResult Maven / Gradle / Ivy

There is a newer version: 1.1.606
Show newest version
/**
 * MIT License
 *
 * Copyright (c) 2016 Bouw Informatie Raad
 *
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included
 * in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 * IN THE SOFTWARE.
 *
 **/
package nl.coinsweb.sdk.validator;


import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

/**
 * @author Bastiaan Bijl, Sysunite 2016
 */
public class InferenceQueryResult {

  private static final Logger log = LoggerFactory.getLogger(InferenceQueryResult.class);


  private String id;
  private String reference;
  private String description;
  private String sparqlQuery;
  private String errorMessage;
  private long executionTime;
  private Map triplesAdded;



  public InferenceQueryResult(String reference,
                              String description,
                              String sparqlQuery,
                              String errorMessage) {

    // Set passed attributes
    this.id = Long.toHexString(Double.doubleToLongBits(Math.random()));
    this.reference = reference;
    this.description = description;
    this.sparqlQuery = sparqlQuery;
    this.errorMessage = errorMessage;
    this.executionTime = 0l;
    this.triplesAdded = new HashMap<>();
  }


  public String getId() {
    return id;
  }
  public String getReference() {
    return reference;
  }
  public String getDescription() {
    return description;
  }
  public String getSparqlQuery() {
    return sparqlQuery;
  }
  public String getErrorMessage() {
    return errorMessage;
  }
  public long addExecutionTime(long time) {
    executionTime += time;
    return executionTime;
  }
  public long getExecutionTime() {
    return executionTime;
  }
  public Map getTriplesAdded() {
    return triplesAdded;
  }
  public void addTriplesAdded(Map counts) {
    Iterator graphNameIterator = counts.keySet().iterator();
    while(graphNameIterator.hasNext()) {
      String graphName = graphNameIterator.next();

      Long oldValue;
      if(triplesAdded.containsKey(graphName)) {
        oldValue = triplesAdded.get(graphName);
      } else {
        oldValue = 0l;
      }
      Long diff = counts.get(graphName);
      triplesAdded.put(graphName, oldValue + diff);
    }
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy