Class BeanDatabaseImpl

  • All Implemented Interfaces:
    BeanDatabase

    public class BeanDatabaseImpl
    extends java.lang.Object
    implements BeanDatabase
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private long revision  
      private java.util.HashMap<java.lang.String,​TypeImpl> types  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void dumpDatabase()
      Dumps the type and instance names to stderr
      void dumpDatabase​(java.io.PrintStream output)
      Dumps the type and instance names to the given stream
      java.lang.String dumpDatabaseAsString()
      Dumps the type and instance names to a String for debugging
      java.util.Set<Type> getAllTypes()
      Gets an unmodifiable set of all the types in the bean database
      Instance getInstance​(java.lang.String type, java.lang.String instanceKey)
      Returns the instance with the given instanceKey from the type with the given name
      (package private) long getRevision()  
      Type getType​(java.lang.String type)
      Gets the type with the given name
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • revision

        private final long revision
      • types

        private final java.util.HashMap<java.lang.String,​TypeImpl> types
    • Constructor Detail

      • BeanDatabaseImpl

        BeanDatabaseImpl​(long revision)
        Creates a new, fresh database
      • BeanDatabaseImpl

        BeanDatabaseImpl​(long revision,
                         BeanDatabase beanDatabase)
    • Method Detail

      • getAllTypes

        public java.util.Set<Type> getAllTypes()
        Description copied from interface: BeanDatabase
        Gets an unmodifiable set of all the types in the bean database
        Specified by:
        getAllTypes in interface BeanDatabase
        Returns:
        A non-null unmodifiable and possibly empty set of all the types in the database
      • getInstance

        public Instance getInstance​(java.lang.String type,
                                    java.lang.String instanceKey)
        Description copied from interface: BeanDatabase
        Returns the instance with the given instanceKey from the type with the given name
        Specified by:
        getInstance in interface BeanDatabase
        Parameters:
        type - The non-null name of the type to get the instance from
        instanceKey - The non-null key of the instance
        Returns:
        The bean from the given type with the given name. Will return null if the type does not exist or an instance with that key does not exist
      • getType

        public Type getType​(java.lang.String type)
        Description copied from interface: BeanDatabase
        Gets the type with the given name
        Specified by:
        getType in interface BeanDatabase
        Parameters:
        type - The non-null name
        Returns:
        The type corresponding to the given name. May return null
      • getRevision

        long getRevision()
      • dumpDatabase

        public void dumpDatabase()
        Description copied from interface: BeanDatabase
        Dumps the type and instance names to stderr
        Specified by:
        dumpDatabase in interface BeanDatabase
      • dumpDatabase

        public void dumpDatabase​(java.io.PrintStream output)
        Description copied from interface: BeanDatabase
        Dumps the type and instance names to the given stream
        Specified by:
        dumpDatabase in interface BeanDatabase
        Parameters:
        output - - The non-null outut stream to write the database to
      • dumpDatabaseAsString

        public java.lang.String dumpDatabaseAsString()
        Description copied from interface: BeanDatabase
        Dumps the type and instance names to a String for debugging
        Specified by:
        dumpDatabaseAsString in interface BeanDatabase
        Returns:
        A string with all type and instance names
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object