org.unlaxer.jaddress.parser.JyuusyoJpResolver Maven / Gradle / Ivy
package org.unlaxer.jaddress.parser;
import java.util.List;
import org.unlaxer.jaddress.entity.jyuusyojp.JyuusyoJP;
import org.unlaxer.jaddress.entity.standard.郵便番号;
import org.unlaxer.jaddress.entity.standard.階層要素;
import org.unlaxer.util.collection.TreeNode;
public class JyuusyoJpResolver implements AddressProcessor{
@Override
public ParsingState targetState() {
return ParsingState.ZIPから住所JPレコード取得;
}
@Override
public NextProcess process(ParsingContext parsingContext) {
AddressContext addressContext = parsingContext.addressContext;
DataAccessContext dataAccessContext = parsingContext.dataAccessContext;
郵便番号 zip = addressContext.zip;
List extends JyuusyoJP> jyuusyoJpFromZip = dataAccessContext.selectJyuusyoJPsByZip(zip);
TreeNode targetNode = targetNode(parsingContext);
if(jyuusyoJpFromZip.isEmpty()) {
return new NextProcess(ParsingState.住所JPレコード取得失敗エラー , 階層要素.全体);
}else {
addressContext.setJyuusyoJpFromZip(jyuusyoJpFromZip);
addressContext.addChild(
targetNode ,
new EmptyAddressElement(階層要素.都道府県から町名まで)
);
return new NextProcess(ParsingState.都道府県から町名までを分割する , 階層要素.都道府県から町名まで);
}
}
} © 2015 - 2025 Weber Informatics LLC | Privacy Policy