1: <?php
2: 3: 4: 5:
6: class Horde_Core_Factory_ActiveSyncBackend extends Horde_Core_Factory_Injector
7: {
8: public function create(Horde_Injector $injector)
9: {
10: global $conf;
11:
12: $params = array();
13:
14:
15: if ($conf['activesync']['logging']['type'] == 'custom') {
16: $params['logger'] = new Horde_Log_Logger(new Horde_Log_Handler_Stream(fopen($conf['activesync']['logging']['path'], 'a')));
17: } else {
18: $params['logger'] = $injector->getInstance('Horde_Log_Logger');
19: }
20:
21:
22: $params['registry'] = $GLOBALS['registry'];
23: $driver_params = array(
24: 'connector' => new Horde_Core_ActiveSync_Connector($params),
25: 'ping' => $conf['activesync']['ping'],
26: 'state_basic' => $injector->getInstance('Horde_ActiveSyncState'),
27: 'auth' => $injector->getInstance('Horde_Core_Factory_Auth')->create());
28: if ($params['provisioning'] = $conf['activesync']['securitypolicies']['provisioning']) {
29: $driver_params['policies'] = $conf['activesync']['securitypolicies'];
30: }
31:
32: return new Horde_Core_ActiveSync_Driver($driver_params);
33: }
34:
35: }
36: