=>($rel->{ddcTimeout}//300),
connect=>{PeerAddr=>$server,PeerPort=>$port},
mode=>'json',
%opts
);
}
##--------------------------------------------------------------
##
DDC server on $rel->{ddcServer}: $!")
if (!defined($cli->{sock}));
my $result = $cli->queryJson($qstr);
$rel->logconfess($coldb->{error}="$logas ERROR: DDC query failed: ".($result->{error_}
class, ##-- DiaColloDB::Document subclass for loading (OVERRIDE forces 'DiaColloDB::Document::JSON')
dopts => \%opts, ##-- options for $dclass->fromFile() (override default={})
cur
C<$pos> (second form).
Override always returns filenames of the form
C<"$corpus-E<gt>{dbdir}/$pos.json">.
=item idocument
$doc_or_undef = $corpus->idocument();
$doc_or_undef = $corpus->idocument($
ic: HTTP wrappers
## $obj_or_undef = $cli->jget($url,\%query_form,$class)
## + wrapper for http json GET requests
sub jget {
my ($cli,$url,$form,$class) = @_;
my $uri = URI->new($url // $cli->{u
>content_ref;
return $class->loadJsonString($cref,utf8=>!utf8::is_utf8($$cref));
}
## $obj_or_undef = $cli->jpost($url,\%query_form,$class)
## + wrapper for json http POST requests
sub jpost {
m
} = $rsp->status_line;
return undef;
}
my $cref = $rsp->content_ref;
return $class->loadJsonString($cref,utf8=>!utf8::is_utf8($$cref));
}
##-------------------------------------------------
en it as one
return $cli->open_rcfile($cli->{url},%opts)
if (!-d $path && !-e "$path/header.json");
$cli->{db} = DiaColloDB->new(%dbopts,dbdir=>$path)
or $cli->logconfess("open_file() fai
: $DiaColloDB::threads::MODULE);
##-- avoid heinous death with JSON::XS backend using threads
$DDC::Client::JSON_BACKEND = 'JSON::PP';
}
##=====================================================
olloDB::Profile::Multi->xkeys(\@mps);
#$cli->trace("extend(): xkeys=", DiaColloDB::Utils::saveJsonString($xkeys, utf8=>0));
#$cli->trace("extend(): N.pre=", join('+',map {$_->{profiles}[0]{N}}
$_[1]);
$sub->extend($rel,%opts,strings=>1,score=>'f',cutoff=>'',fill=>1,slice2keys=>JSON::to_json($xkeys->[$_[1]], {allow_nonref=>1}))
or $_[0]->logconfess("extend() failed for client ur
ColloDB::MultiMapFile::MMap;
use DiaColloDB::MultiMapFile;
use DiaColloDB::Utils qw(:fcntl :file :json :pack);
use File::Map qw(map_handle);
use strict;
##============================================
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: Globals & Constants
=pod
=head2 Globals & Constants
=over 4
=item Variable: @ISA
DiaColloDB:
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: Constructors etc.
=pod
=head2 Constructors etc.
=over 4
=item new
$doc = CLASS_OR_OBJECT->n
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: API: I/O: parse
=pod
=head2 API: I/O: parse
=over 4
=item fromFile
$bool = $doc->fromFile($
=====================
## NAME
=pod
=head1 NAME
DiaColloDB::Document::JSON - diachronic collocation db, source document, raw JSON
=cut
##============================================================
==================================================
## PRELIMINARIES
use DiaColloDB::Document::JSON;
##========================================================================
## Constructors e
DESCRIPTION
DiaColloDB::Document::JSON
provides a L<DiaColloDB::Document|DiaColloDB::Document>-compliant API
for parsing corpus files in raw L<JSON|http://www.json.org> format,
assuming the stored d
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: Globals & Constants
=pod
=head2 Globals & Constants
=over 4
=item Variable: @ISA
DiaColloDB:
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: Constructors etc.
=pod
=head2 Constructors etc.
=over 4
=item new
$doc = CLASS_OR_OBJECT->n
-----------------------------------------------------------
## DESCRIPTION: DiaColloDB::Document::JSON: API: I/O: parse
=pod
=head2 API: I/O: parse
=over 4
=item fromFile
$bool = $doc->fromFile($
&& !-e $up->backupdir."/$_"} map {"tdf.d/$_"} qw(yf.pdl yf.pdl.hdr)),
##-- header
#'header.json',
);
}
## @files = $up->revert_updated()
## + returns list of files updated by this upgrade,
e $up->backupdir."/$_"} map {"tdf.$_"} qw(hdr d/yf.pdl d/yf.pdl.hdr)),
##-- header
'header.json',
);
}
##==============================================================================
## Fo
dclass, ##-- DiaColloDB::Document subclass for loading (OVERRIDE force 'DiaColloDB::Document::JSON')
## dopts => \%opts, ##-- options for $dclass->fromFile() (override default={})
## c
##-- strong overrides
dclass => 'DiaColloDB::Document::JSON',
);
$corpus->{filters} = DiaColloDB::Corpus::Filters->new() i
ions: dclass, files, opened
$corpus->{opened} = 1;
$corpus->{dclass} = 'DiaColloDB::Document::JSON';
delete $corpus->{files};
return $corpus;
}
## $bool = $corpus->close()
sub close {
my $
File()
## + returns header filename; default returns "$obj->{base}.hdr" or "$obj->{dbdir}/header.json"
sub headerFile {
return undef if (!ref($_[0]));
return "$_[0]{file}.hdr" if (defined($_[0]{f
use strict;
use warnings;
use List::MoreUtils qw(zip_unflatten);
use JSON::PP;
use Try::Tiny;
use File::Temp qw(tempfile);
use Encode qw(find_encoding);
use Zonemaster::Backend::Config;
use Zonemast
unt to your needs
sub _update_data_result_entries {
my ( $dbh, $row_count ) = @_;
my $json = JSON::PP->new->allow_blessed->convert_blessed->canonical;
# update only jobs with results
= @$row;
next unless $results;
my @records;
my $entries = $json->decode( $results );
foreach my $m ( @$entries ) {
my $module = $mod
#-- dump: header
$coldb->saveHeader("$outdir/header.json")
or $coldb->logconfess("dbexport(): could not export header to $outdir/header.json: $!");
##-- dump: load enums
my $adata = $coldb
use strict;
use warnings;
use List::Util qw(zip);
use JSON::PP;
use Try::Tiny;
use Zonemaster::Backend::Config;
use Zonemaster::Engine;
my $config = Zonemaster::Backend::Config->load_config();
my
unt to your needs
sub _update_data_result_entries {
my ( $dbh, $row_count ) = @_;
my $json = JSON::PP->new->allow_blessed->convert_blessed->canonical;
# update only jobs with results
= @$row;
next unless $results;
my @records;
my $entries = $json->decode( $results );
foreach my $m ( @$entries ) {
my $module = $mod
oDB::Compat;
use DiaColloDB::Logger;
use DiaColloDB::Persistent;
use DiaColloDB::Utils qw(:fcntl :json :pack);
use Fcntl qw(:DEFAULT :seek);
use strict;
##============================================
Temp;
use Tie::File::Indexed::JSON;
use strict;
##======================================================================
## Globals
our @ISA = qw(Tie::File::Indexed::JSON DiaColloDB::Temp);
##======
ColloDB::PackedFile;
use DiaColloDB::PackedFile::MMap;
use DiaColloDB::Utils qw(:fcntl :env :run :json :pack);
use Fcntl qw(:DEFAULT :seek);
use File::Basename qw(dirname);
use version;
use strict;
#
elation;
use DiaColloDB::Relation::TDF::Query;
use DiaColloDB::Utils qw(:pack :fcntl :file :math :json :list :pdl :temp :env :run);
use DiaColloDB::PackedFile;
use DiaColloDB::PDL::MM;
use DiaColloDB:
4
=item Variable: @ISA
DiaColloDB::Temp::Array inherits from
L<Tie::File::Indexed::JSON|Tie::File::Indexed::JSON>
and L<DiaColloDB::Temp|DiaColloDB::Temp>.
=back
=cut
##-------------------------
kedFile(3pm)|DiaColloDB::PackedFile>,
L<DiaColloDB::Temp(3pm)|DiaColloDB::Temp>,
L<DiaColloDB(3pm)|DiaColloDB>,
L<Tie::File::Indexed::JSON(3pm)|Tie::File::Indexed::JSON>,
L<perl(1)|perl>,
...
=cut