Class FileDataNodeBuilder

java.lang.Object
uk.ac.starlink.datanode.factory.DataNodeBuilder
uk.ac.starlink.datanode.factory.FileDataNodeBuilder

public class FileDataNodeBuilder extends DataNodeBuilder
A DataNodeBuilder which tries to build a DataNode from a File object. It examines the file and may invoke a constructor of a DataNode subclass if it knows of one which is likely to be suitable. Rather than trying everything, it will only attempt constructors which it thinks has a good chance of succeeding. Thus, if it works, it will probably be faster than going through the whole list of constructor-based builders. It may also make smarter decisions than doing it that way.
  • Method Details

    • getInstance

      public static FileDataNodeBuilder getInstance()
      Obtains the singleton instance of this class.
    • suitable

      public boolean suitable(Class objClass)
      Description copied from class: DataNodeBuilder
      Determine whether this builder can be used to work on an object of a given class.
      Specified by:
      suitable in class DataNodeBuilder
      Parameters:
      objClass - the class of an object which might be passed as the argument of buildNode
      Returns:
      whether it's OK to do that
    • buildNode

      public DataNode buildNode(Object obj) throws NoSuchDataException
      Description copied from class: DataNodeBuilder
      Builds a DataNode from a given object.
      Specified by:
      buildNode in class DataNodeBuilder
      Parameters:
      obj - the object to build a datanode from
      Returns:
      a new DataNode made from obj
      Throws:
      NoSuchDataException - if no new node can be created
    • toString

      public String toString()
      Overrides:
      toString in class Object