Implements the BaseAdaptor and FileAdaptor