they would not have to call the method, you could call it in __construct.  Really doesn't even need to be a separate method.
```php
class Foo
  static $indexEnsured = false;

  public function __construct()
  {
    if(!self::$indexEnsured)
    {
      //ensure index
      self::$indexEnsured = true;
    }
  }
}
```