/* * Copyright (C) 2010 Medo <smaxein@googlemail.com> * * This file is part of GmkSplitter. * GmkSplitter is free software and comes with ABSOLUTELY NO WARRANTY. * See LICENSE for details. */ package com.ganggarrison.gmdec; import org.lateralgm.file.GmFile; /** * Some model objects from LateralGM hold references to other model objects. * These references can't be created directly when reading the objects, since * the target objects (denoted by resource id) might not have been read yet. * * To solve this problem, all wrapper beans that are used for reading model * objects which may reference other model objects should implement this * interface. The method createReferences will be called after all objects have * been read, so that the references can be created properly. * * In order for this to work, all code that creates DeferredReferenceCreators * must make sure that they are added to a DeferredReferenceCreatorNotifier, to * ensure that the method will actually get called. */ public interface DeferredReferenceCreator { void createReferences(GmFile gmf); }