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

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

package org.unlaxer.jaddress.parser;

import java.nio.file.Path;
import java.util.List;
import java.util.stream.Stream;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.unlaxer.jaddress.ElaticeSearchAccessor;
import org.unlaxer.jaddress.entity.jyuusyojp.JyuusyoJP;
import org.unlaxer.jaddress.entity.standard.郵便番号;
import org.unlaxer.util.collection.ID;

public class DataAccessContextImpl implements DataAccessContext{
	
	SearchEngineDataAccessContext searchEngineDataAccessContext;
	
	JyuusyoJPDataAccessContext jyuusyoJPDataAccessContext;
	
	static Logger logger = LoggerFactory.getLogger(DataAccessContextImpl.class);

	public DataAccessContextImpl(
			Path pathToJyuusyoJpSqlite ,
			ElaticeSearchAccessor elaticeSearchAccessor,
			AddressParser addressParser) {
		super();
		jyuusyoJPDataAccessContext = new JyuusyoJPDataAccessContextImpl(pathToJyuusyoJpSqlite);
		searchEngineDataAccessContext =  
			new SearchEngineDataAccessContextImpl(
					elaticeSearchAccessor, 
					jyuusyoJPDataAccessContext, 
					addressParser);
	}
	
	@Override
	public CheckExistenceResponse search(CheckExistenceParameter parameter) {
		return searchEngineDataAccessContext.search(parameter);
	}

	@Override
	public UpdateResponse update(Stream addresses , DataAccessContext dataAccessContext) {
		return searchEngineDataAccessContext.update(addresses , dataAccessContext);
	}

	@Override
	public CheckExistenceResponse get(ID id) {
		return searchEngineDataAccessContext.get(id);
	}

	@Override
	public List selectJyuusyoJPsByZip(郵便番号 zip) {
		return jyuusyoJPDataAccessContext.selectJyuusyoJPsByZip(zip);
	}

	@Override
	public Stream selectAllJyuusyoJP() {
		return jyuusyoJPDataAccessContext.selectAllJyuusyoJP();
	}

	@Override
	public void addIndexToJyuusyoJP() {
		jyuusyoJPDataAccessContext.addIndexToJyuusyoJP();
	}

	@Override
	public void dropIndexFromJyuusyoJP() {
		jyuusyoJPDataAccessContext.dropIndexFromJyuusyoJP();
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy