1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (https://nette.org)
5: * Copyright (c) 2004 David Grudl (http://davidgrudl.com)
6: * @package Nette\Application
7: */
8:
9:
10:
11: /**
12: * Responsible for creating a new instance of given presenter.
13: *
14: * @author Jan Tichý <tichy@medio.cz>
15: * @package Nette\Application
16: */
17: interface IPresenterFactory
18: {
19:
20: /**
21: * Generates and checks presenter class name.
22: * @param string presenter name
23: * @return string class name
24: * @throws NInvalidPresenterException
25: */
26: function getPresenterClass(& $name);
27:
28: /**
29: * Creates new presenter instance.
30: * @param string presenter name
31: * @return IPresenter
32: */
33: function createPresenter($name);
34:
35: }
36: