001package io.ebeanservice.docstore.api.mapping; 002 003/** 004 * Used to visit the properties in a document structure. 005 */ 006public interface DocPropertyVisitor { 007 008 /** 009 * Begin visiting the document structure. 010 */ 011 void visitBegin(); 012 013 /** 014 * Visit a property. 015 */ 016 void visitProperty(DocPropertyMapping property); 017 018 /** 019 * Start visiting a nested object. 020 */ 021 void visitBeginObject(DocPropertyMapping property); 022 023 /** 024 * End visiting a nested object. 025 */ 026 void visitEndObject(DocPropertyMapping property); 027 028 /** 029 * Start visiting a nested list. 030 */ 031 void visitBeginList(DocPropertyMapping property); 032 033 /** 034 * End visiting a nested list. 035 */ 036 void visitEndList(DocPropertyMapping property); 037 038 /** 039 * Finished visiting the document structure. 040 */ 041 void visitEnd(); 042 043}