// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI ESTIMATOR = vf.createURI(NAMESPACE + "cardEstimator");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI EVAL_STRATEGY  = vf.createURI(NAMESPACE + "evalStrategy");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI GROUP_BY_SAMEAS = vf.createURI(NAMESPACE + "groupBySameAs");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI GROUP_BY_SOURCE = vf.createURI(NAMESPACE + "groupBySource");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI OPT_TYPE  = vf.createURI(NAMESPACE + "optimizerType");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI USE_BIND_JOIN = vf.createURI(NAMESPACE + "useBindJoin");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI USE_HASH_JOIN = vf.createURI(NAMESPACE + "useHashJoin");


import org.openrdf.model.Resource;
import org.openrdf.model.ValueFactory;
import org.openrdf.model.impl.ValueFactoryImpl;
import org.openrdf.query.algebra.evaluation.EvaluationStrategy;
import org.openrdf.sail.config.SailConfigException;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.ESTIMATOR;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.EVAL_STRATEGY;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.GROUP_BY_SAMEAS;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.GROUP_BY_SOURCE;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.OPT_TYPE;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.USE_BIND_JOIN;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.USE_HASH_JOIN;
import org.openrdf.model.Graph;
import org.openrdf.model.Literal;
	
	public EvaluationStrategy getEvalStrategy() {
		return this.evalStrategy;
	}
	
	public boolean isGroupBySameAs() {
		return this.groupBySameAs;
	}

	public boolean isGroupBySource() {
		return this.groupBySource;
	}

	
	public boolean isUseBindJoin() {
		return this.useBindJoin;
	}
	
	public boolean isUseHashJoin() {
		return this.useHashJoin;
	}

	@Override
	public Resource export(Graph model) {
		ValueFactory vf = ValueFactoryImpl.getInstance();
		
		Resource self = super.export(model);
		
		model.add(self, ESTIMATOR, vf.createLiteral(this.estimatorType));
		
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI ESTIMATOR = vf.createURI(NAMESPACE + "cardEstimator");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI EVAL_STRATEGY  = vf.createURI(NAMESPACE + "evalStrategy");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI GROUP_BY_SAMEAS = vf.createURI(NAMESPACE + "groupBySameAs");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI GROUP_BY_SOURCE = vf.createURI(NAMESPACE + "groupBySource");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI OPT_TYPE  = vf.createURI(NAMESPACE + "optimizerType");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI USE_BIND_JOIN = vf.createURI(NAMESPACE + "useBindJoin");
// 
// Path: src/de/uni_koblenz/west/splendid/config/FederationSailSchema.java
// public static final URI USE_HASH_JOIN = vf.createURI(NAMESPACE + "useHashJoin");


// Path: src/de/uni_koblenz/west/splendid/config/QueryOptimizerConfig.java
import org.openrdf.model.Resource;
import org.openrdf.model.ValueFactory;
import org.openrdf.model.impl.ValueFactoryImpl;
import org.openrdf.query.algebra.evaluation.EvaluationStrategy;
import org.openrdf.sail.config.SailConfigException;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.ESTIMATOR;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.EVAL_STRATEGY;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.GROUP_BY_SAMEAS;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.GROUP_BY_SOURCE;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.OPT_TYPE;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.USE_BIND_JOIN;
import static de.uni_koblenz.west.splendid.config.FederationSailSchema.USE_HASH_JOIN;
import org.openrdf.model.Graph;
import org.openrdf.model.Literal;

	
	public EvaluationStrategy getEvalStrategy() {
		return this.evalStrategy;
	}
	
	public boolean isGroupBySameAs() {
		return this.groupBySameAs;
	}

	public boolean isGroupBySource() {
		return this.groupBySource;
	}

	
	public boolean isUseBindJoin() {
		return this.useBindJoin;
	}
	
	public boolean isUseHashJoin() {
		return this.useHashJoin;
	}

	@Override
	public Resource export(Graph model) {
		ValueFactory vf = ValueFactoryImpl.getInstance();
		
		Resource self = super.export(model);
		
		model.add(self, ESTIMATOR, vf.createLiteral(this.estimatorType));
		
		model.add(self, GROUP_BY_SAMEAS, vf.createLiteral(this.groupBySameAs));