1 |
|
## ------------------------------------------------------------------------ |
2 |
|
## $Id$ |
3 |
|
## ------------------------------------------------------------------------ |
4 |
|
## $Log$ |
5 |
|
## Revision 1.3 2003/01/20 16:25:41 joko |
6 |
|
## - removed old code (object-constructor) |
7 |
|
## + introduced new property for mapping-declaration: "autocreateFolders": should ldap-ou's be created automagically? |
8 |
|
## + modified source-ident: it's the "EntryID" by now - FIXME: use a 'rule-built-dn' here as source-identifier! |
9 |
|
## |
10 |
|
## Revision 1.2 2003/01/19 03:32:39 joko |
11 |
|
## + new proposal for passing metadata-information to 'Data::Transfer::Sync' |
12 |
|
## |
13 |
|
## ------------------------------------------------------------------------ |
14 |
|
|
15 |
|
|
16 |
package Torus::Map::Outlook; |
package Torus::Map::Outlook; |
17 |
|
|
18 |
use strict; |
use strict; |
19 |
use warnings; |
use warnings; |
20 |
|
|
21 |
sub new { |
use base qw( DesignPattern::Object ); |
22 |
my $invocant = shift; |
|
23 |
my $class = ref($invocant) || $invocant; |
use Data::Transform::Map; |
24 |
#bless $self, "BizWorks::SatelliteMapping"; |
use Data::Dumper; |
25 |
my $self = { @_ }; |
|
26 |
bless $self, $class; |
=pod |
27 |
return $self; |
sub Folder { |
28 |
|
my $self = shift; |
29 |
|
my $baseMap = shift; |
30 |
|
print Dumper($baseMap); |
31 |
|
exit; |
32 |
|
|
33 |
|
my $sourceFolder = $baseMap->{source}; |
34 |
|
my $targetFolder = $sourceFolder; |
35 |
|
print "Mapping MAPI-Folder \"$sourceFolder\" to LDAP-Folder \"$targetFolder\".", "\n"; |
36 |
} |
} |
37 |
|
=cut |
38 |
|
|
39 |
|
|
40 |
sub ContactItem { |
sub ContactItem { |
41 |
return { |
return { |
42 |
target => 'Adressen', |
|
43 |
source_ident => 'storage_method:id', |
metadata => { |
44 |
target_ident => 'property:rid', |
version => 0.2, |
45 |
details => [ |
syncMethod => 'checksum', |
46 |
[ 'source:ckey' => 'target:rkey' ], |
}, |
47 |
[ 'source:cname' => 'target:rval' ], |
|
48 |
], |
# metadata on node-level |
49 |
|
source => { |
50 |
|
#nodeType => 'ContactItem', |
51 |
|
ident => 'property:EntryID', |
52 |
|
exclude => [qw( cs )], |
53 |
|
}, |
54 |
|
target => { |
55 |
|
#address => 'code:Folder', |
56 |
|
#ident => 'property:rid', |
57 |
|
ident => 'code:dn', |
58 |
|
autocreateFolders => 1, |
59 |
|
}, |
60 |
|
|
61 |
|
# metadata on field-level |
62 |
|
fieldmap => Data::Transform::Map->new( |
63 |
|
lookup => 'local', # local|dsn(csv|xml|ldap) |
64 |
|
rules => [ |
65 |
|
{ source => 'ckey', target => 'rkey' }, |
66 |
|
{ source => 'cname', target => 'rval' }, |
67 |
|
], |
68 |
|
), |
69 |
}; |
}; |
70 |
} |
} |
71 |
|
|