001package io.ebeaninternal.dbmigration.model.visitor; 002 003import io.ebeaninternal.dbmigration.model.build.ModelBuildPropertyVisitor; 004import io.ebeaninternal.server.deploy.BeanDescriptor; 005 006/** 007 * Visitor pattern for visiting a BeanDescriptor and potentially all its bean 008 * properties. 009 */ 010public interface BeanVisitor { 011 012 /** 013 * Visit a BeanDescriptor and return a PropertyVisitor to use to visit each 014 * property on the entity bean (return null to skip visiting this bean). 015 */ 016 ModelBuildPropertyVisitor visitBean(BeanDescriptor<?> descriptor); 017 018}