code: public function createRepository($className, ObjectIdentifier $identifier)
      {
          switch ($this->type) {
              case self::TYPE_FILE:
                  return new FileRepository($this->getFileName($className), $identifier);
  
              default:
                  return new InMemoryRepository($identifier);
          }
      }
docs: @param string           $className
  @param ObjectIdentifier $identifier
  
  @return Repository