+=head2 read_validate_delimiters_file
+
+ $validate->read_validate_delimiters_file( 'conf/validate/delimiters/file' );
+
+=cut
+
+sub read_validate_delimiters_file {
+ my $self = shift;
+
+ my $path = shift || die "no path?";
+
+ my $log = $self->_get_logger();
+
+ delete( $self->{_validate_delimiters_templates} );
+ delete( $self->{_delimiters_templates} );
+
+ if ( -e $path ) {
+ $log->info("using delimiter validation rules from $path");
+ open(my $d, $path) || $log->fatal("can't open $path: $!");
+ while(<$d>) {
+ chomp($d);
+ if (/^\s*(#*)\s*(\d+)\t+(\d+)\t+(.*)$/) {
+ my ($comment,$field,$count,$template) = ($1,$2,$3,$4);
+ $self->{_validate_delimiters_templates}->{$field}->{$template} = $count unless ($comment);
+ } else {
+ warn "## ignored $d\n";
+ }
+ }
+ close($d);
+ #warn "_validate_delimiters_templates = ",dump( $self->{_validate_delimiters_templates} );
+ } else {
+ $log->warn("delimiters path $path doesn't exist, it will be created after this run");
+ }
+ $self->{delimiters_path} = $path;