Interface IModel

All Known Implementing Classes:
AbstractSingleFileModel

public interface IModel
For use with ResourceFileTypeManifold. Implementors of IModel store and manage state necessary to generate source code in the context of ResourceFileTypeManifold.contribute(javax.tools.JavaFileManager.Location, String, boolean, String, IModel, DiagnosticListener)
  • Method Details

    • getHost

      IManifoldHost getHost()
      Returns:
      The Manifold host within which this model operates
    • getFqn

      String getFqn()
      Returns:
      The fully qualified type name to which code will be contributed
    • getFiles

      Set<IFile> getFiles()
      Returns:
      The resource file[s] from which information is gathered to contribute source
    • addFile

      void addFile(IFile file)
      Add file to the set of files this model uses. The addition of a new flie
    • removeFile

      void removeFile(IFile file)
      Remove file from the set of files this model uses
    • updateFile

      void updateFile(IFile file)
      Updates file in the set of files this model uses
    • isProcessing

      default boolean isProcessing(String fqn)
      Returns:
      True if the model is processing or otherwise in an unsettled state