/[cvs]/nfo/perl/scripts/outlook2ldap/libs/Torus/Core.pm
ViewVC logotype

Diff of /nfo/perl/scripts/outlook2ldap/libs/Torus/Core.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by joko, Sun Jan 19 03:35:25 2003 UTC revision 1.4 by joko, Mon Jan 20 16:18:02 2003 UTC
# Line 2  Line 2 
2  ##    $Id$  ##    $Id$
3  ##    ------------------------------------------------------------------------  ##    ------------------------------------------------------------------------
4  ##    $Log$  ##    $Log$
5    ##    Revision 1.4  2003/01/20 16:18:02  joko
6    ##    + connect to mapi via 'my $mapiLocator = Data::Storage::Locator->new( ... )'
7    ##
8  ##    Revision 1.3  2003/01/19 03:35:25  joko  ##    Revision 1.3  2003/01/19 03:35:25  joko
9  ##    + added cvs-header  ##    + added cvs-header
 ##  
10  ##    ------------------------------------------------------------------------  ##    ------------------------------------------------------------------------
11    
12    
13  package Torus::Core;  package Torus::Core;
14    
15    use strict;
16    use warnings;
17    
18    =pod
19  use base qw(  use base qw(
20    DesignPattern::Object    DesignPattern::Object
21    DesignPattern::Object::Logger    DesignPattern::Object::Logger
22  );  );
23    =cut
24    
25    use mixin::with qw( Torus );
26    
 use strict;  
 use warnings;  
27    
28  use Data::Dumper;  use Data::Dumper;
29    
 use loadConfig;  
30  use Data::Storage;  use Data::Storage;
31  use Data::Storage::Locator;  use Data::Storage::Locator;
32  use Data::Transfer::Sync;  use Data::Transfer::Sync;
33    
 my $logger = Log::Dispatch::Config->instance;  
34    
35    # get logger instance
36    my $logger = Log::Dispatch::Config->instance;
37    
38  my $DEBUGLEVEL = $config->get("debug_level");  my $DEBUGLEVEL;
39  my $TRACELEVEL = $config->get("trace_level");  my $TRACELEVEL;
40  my $bool_started;  my $bool_started;
41    
42    sub initDebugLevel {
43      my $self = shift;
44    
45      $DEBUGLEVEL = $self->{config}->get("debug_level");
46      $TRACELEVEL = $self->{config}->get("trace_level");
47    
48     }
49    
50    
51    
52    
53  sub addItem {  sub addItem {
54    
# Line 71  sub startSync { Line 88  sub startSync {
88    my $self = shift;    my $self = shift;
89    my $opts = shift;    my $opts = shift;
90    
91    #print Dumper($self);
92    
93  #print Dumper($opts);  #print Dumper($opts);
94  #exit;  #exit;
95    
96    my $host = $config->get("ldapserver_host");    my $host = $self->{config}->get("ldapserver_host");
97    my $binddn = $config->get("ldapserver_binddn");    my $binddn = $self->{config}->get("ldapserver_binddn");
98    my $pass = $config->get("ldapserver_pass");    my $pass = $self->{config}->get("ldapserver_pass");
99    my $basedn = $config->get("ldapserver_basedn");    my $basedn = $self->{config}->get("ldapserver_basedn");
100        
101    my $dsn = "ldap:host=$host;binddn='$binddn';pass=$pass";    my $dsn = "ldap:host=$host;binddn='$binddn';pass=$pass";
102    $logger->info(__PACKAGE__ . "->startSync: using dsn: $dsn");    $logger->notice(__PACKAGE__ . "->startSync: using dsn: $dsn");
103    
104    my $ldapLocator = Data::Storage::Locator->new(    # connect to LDAP
105      ldap => {      my $ldapLocator = Data::Storage::Locator->new(
106        type => "NetLDAP",        ldap => {
107  #      dsn => "ldap:host=192.168.1.56;binddn='cn=root, dc=labnet, dc=de';pass=Geheim",          type => "NetLDAP",
108  #      dsn => "ldap:host=192.168.10.150;binddn='cn=root, o=netfrag.org, c=de';pass=secret",          #dsn => "ldap:host=192.168.1.56;binddn='cn=root, dc=labnet, dc=de';pass=Geheim",
109        dsn => $dsn,          #dsn => "ldap:host=192.168.10.150;binddn='cn=root, o=netfrag.org, c=de';pass=secret",
110  #      basedn => "o=netfrag.org, c=de",          dsn => $dsn,
111        basedn => $basedn,          #basedn => "o=netfrag.org, c=de",
112        #schema => 'BizWorks::BackendDbSchema',          basedn => $basedn,
113        #classnames => [qw( SystemEvent LangText )],          #schema => 'BizWorks::BackendDbSchema',
114        #classnames => [qw( SystemEvent Person Address LangText )],          #classnames => [qw( SystemEvent LangText )],
115        #test_availability => 1,          #classnames => [qw( SystemEvent Person Address LangText )],
116        #test_integrity => 1,          #test_availability => 1,
117        #test_emptyness => 1,          #test_integrity => 1,
118        # TODO: re-enable this! (multiple-target-logging!)          #test_emptyness => 1,
119        #logger => 1,          # TODO: re-enable this! (multiple-target-logging!)
120        want_transactions => 0,          #logger => 1,
121        syncable => 1,          want_transactions => 0,
122      },          syncable => 1,
123    );        },
124    my $ldapStorage = Data::Storage->new($ldapLocator);      );
125    $ldapStorage->connect();      my $ldapStorage = Data::Storage->new($ldapLocator);
126        $ldapStorage->connect();
127    my $mapiStorage;  
128      # connect to MAPI
129        my $mapiLocator = Data::Storage::Locator->new(
130          outlook => {
131            type => "MAPI",
132            #dsn => "ldap:host=192.168.1.56;binddn='cn=root, dc=labnet, dc=de';pass=Geheim",
133            #dsn => "ldap:host=192.168.10.150;binddn='cn=root, o=netfrag.org, c=de';pass=secret",
134            #dsn => $dsn,
135            #basedn => "o=netfrag.org, c=de",
136            #basedn => $basedn,
137            #schema => 'BizWorks::BackendDbSchema',
138            #classnames => [qw( SystemEvent LangText )],
139            #classnames => [qw( SystemEvent Person Address LangText )],
140            #test_availability => 1,
141            #test_integrity => 1,
142            #test_emptyness => 1,
143            # TODO: re-enable this! (multiple-target-logging!)
144            #logger => 1,
145            #want_transactions => 0,
146            syncable => 1,
147            showProfileChooser => $self->{config}->get("mapi_showProfileChooser"),
148            ProfileName => $self->{config}->get("mapi_ProfileName"),
149            ProfilePass => $self->{config}->get("mapi_ProfilePass"),
150          },
151        );
152        my $mapiStorage = Data::Storage->new($mapiLocator);
153        $mapiStorage->connect();
154        
155    
156    # create a new synchronization object    # create a new synchronization object
# Line 154  sub startSync { Line 199  sub startSync {
199    );    );
200        
201    # patch options    # patch options
202    $opts->{source} = "L:$opts->{source_node}" if $opts->{source_node};    #$opts->{source} = "L:$opts->{source_node}" if $opts->{source_node};
203    $opts->{target} = "R:$opts->{target_node}" if $opts->{target_node};    #$opts->{target} = "R:$opts->{target_node}" if $opts->{target_node};
204    
205  #print Dumper($opts);  #print Dumper($opts);
206    
207    $sync->syncNodes($opts);  #  $sync->syncNodes($opts);
208      $sync->syncNodes();
209    
210      #$mapiStorage->disconnect();
211    
212  }  }
213    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed