001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package gov.nist.secauto.metaschema.databind.io;
007
008/**
009 * Provides methods used during deserialization to perform additional actions
010 * before and after data is loaded into a bound object.
011 * <p>
012 * Methods with these method signatures will be called if defined on a bound
013 * object regardless of if this interface is implemented by the object.
014 */
015public interface IDeserializationHandler {
016
017  /**
018   * A method called just before the object data is read and added to the object.
019   *
020   * @param parent
021   *          the Java object containing this object
022   */
023  void beforeDeserialize(Object parent);
024
025  /**
026   * A method called just after the object's data is read and added to the object.
027   *
028   * @param parent
029   *          the Java object containing this object
030   */
031  void afterDeserialize(Object parent);
032
033}