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

org.unlaxer.jaddress.parser.ParsingContextImpl Maven / Gradle / Ivy

package org.unlaxer.jaddress.parser;

import java.util.ArrayList;
import java.util.List;

import org.unlaxer.util.collection.ID;

public class ParsingContextImpl implements ParsingContext {

	final ID id;
	
	final List parsingTargets;
	
	final IntermediateResult intermediateResult;
	
	final DataAccessContext dataAccessContext;

	public ParsingContextImpl(DataAccessContext dataAccessContext) {
		this(ID.generate() , dataAccessContext, new IntermediateResultImpl());
	}
	
	public ParsingContextImpl(ID id , DataAccessContext dataAccessContext) {
		this(id , dataAccessContext, IntermediateResult.create());
	}
	
	public ParsingContextImpl(ID id , DataAccessContext dataAccessContext , IntermediateResult intermediateResult) {
		this.id = id;
		this.dataAccessContext = dataAccessContext;
		this.intermediateResult = intermediateResult;
		parsingTargets = new ArrayList<>();
	}
	
	@Override
	public List parsingTargets(){
		return parsingTargets;
	}

	@Override
	public IntermediateResult intermediateResult() {
		return intermediateResult;
	}
	
	@Override
	public void addParsingTarget(ParsingTarget parsingTarget) {
		parsingTargets.add(parsingTarget);
	}

	@Override
	public DataAccessContext dataAccessContext() {
		return dataAccessContext;
	}

	@Override
	public ID id() {
		return id;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy