/**
  * The constructor for the storage mechanism
  * @param string $name
  * @param array $global_options. Default to empty array. The array of options that are 
  * the same across all all forms which share a commone storage mechanisms
  */
 public function __construct($name, $global_options = array())
 {
     parent::__construct($name, $global_options);
     $this->storage_options_cache[] = array();
     $this->componentized_forms = I2CE_FormStorage::getComponentizedForms();
     if (!array_key_exists('components', $this->global_options) || !is_array($this->global_options['components'])) {
         I2CE::raiseError("No components specifed for multi-flat storage");
         return false;
     }
     $this->databases = array();
     foreach ($this->global_options['components'] as $component => $data) {
         if (!is_array($data) || !array_key_exists('database', $data) || !is_string($data['database']) || strlen($data['database']) < 1) {
             continue;
         }
         $this->databases[$component] = $data['database'];
     }
 }