14 |
use Sort::External; |
use Sort::External; |
15 |
use File::Path; |
use File::Path; |
16 |
use Data::Dump qw/dump/; |
use Data::Dump qw/dump/; |
17 |
|
use WebPAC::Common qw/force_array/; |
18 |
|
|
19 |
=head1 NAME |
=head1 NAME |
20 |
|
|
61 |
$log->info("created ", $self->path); |
$log->info("created ", $self->path); |
62 |
} |
} |
63 |
|
|
64 |
|
return 1; |
65 |
} |
} |
66 |
|
|
67 |
|
|
82 |
$log->logdie("need id") unless defined $id; |
$log->logdie("need id") unless defined $id; |
83 |
$log->logdie("need ds") unless $ds; |
$log->logdie("need ds") unless $ds; |
84 |
|
|
85 |
$log->debug("id: $id ds = ",dump($ds)); |
$log->debug("id: $id ds = ",sub { dump($ds) }); |
86 |
|
|
87 |
my $hash = $self->ds_to_hash( $ds, 'sorted' ) || return; |
my $hash = $self->ds_to_hash( $ds, 'sorted' ) || return; |
88 |
|
|
89 |
warn "add( $id, ",dump($ds)," ) => ", dump( $hash ); |
$log->debug("add( $id, ", sub { dump($ds) }," ) => ", sub { dump( $hash ) }); |
90 |
|
|
91 |
foreach my $f ( keys %$hash ) { |
foreach my $f ( keys %$hash ) { |
92 |
|
|
112 |
|
|
113 |
my @v; |
my @v; |
114 |
|
|
|
if ( ref( $hash->{$f} ) eq 'ARRAY' ) { |
|
|
@v = @{ $hash->{$f} }; |
|
|
} else { |
|
|
@v = $hash->{$f} ; |
|
|
} |
|
|
|
|
115 |
# we want LF in output file :-) |
# we want LF in output file :-) |
116 |
@v = map { "$_\n" } @v; |
@v = map { "$_\n" } force_array( $hash->{$f} ); |
117 |
|
|
118 |
$self->{sortex}->{$f}->feed( @v ); |
$self->{sortex}->{$f}->feed( @v ); |
119 |
|
|
151 |
} |
} |
152 |
|
|
153 |
$log->info("over with sorted lists"); |
$log->info("over with sorted lists"); |
154 |
|
|
155 |
|
return 1; |
156 |
} |
} |
157 |
|
|
158 |
|
|