From: dbs Date: Wed, 5 Nov 2008 20:03:49 +0000 (+0000) Subject: dokuwiki-doc-stubber.pl is generated rather than modified in place X-Git-Tag: osrf_rel_2_0_1~525 X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=440712b5e11e2b78efda8eb5a649d602049280f9;p=OpenSRF.git dokuwiki-doc-stubber.pl is generated rather than modified in place git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@1489 9efc2488-bf62-4759-914b-345cdb29e865 --- diff --git a/doc/dokuwiki-doc-stubber.pl b/doc/dokuwiki-doc-stubber.pl deleted file mode 100755 index c098cc8..0000000 --- a/doc/dokuwiki-doc-stubber.pl +++ /dev/null @@ -1,114 +0,0 @@ -#!/usr/bin/perl -w -use OpenSRF::System qw(SYSCONFDIR/opensrf_core.xml); -use Getopt::Long - -$| = 1; - -my $cvs_base = 'http://open-ils.org/cgi-bin/viewcvs.cgi/ILS/Open-ILS/src/perlmods/'; -my $nest = 0; -my $service; -my $filter; -my $sort_ignore; - -GetOptions( 'cvs_base=s' => \$cvs_base, - 'nest' => \$nest, - 'service=s' => \$service, - 'ignore=s' => \$sort_ignore, - 'filter=s' => \$filter, -); - -unless( $service ) { - print "usage: $0 -s [-c -f -n]\n"; - exit; -} - -OpenSRF::System->bootstrap_client(); -my $session = OpenSRF::AppSession->create( $service ); - -my $req; -if ($filter) { - $req = $session->request('opensrf.system.method', $filter); -} else { - $req = $session->request('opensrf.system.method.all'); -} - -my $count = 1; -my %m; -while( my $meth = $req->recv(60) ) { - $meth = $meth->content; - - $api_name = $meth->{api_name}; - - $m{$api_name}{api_name} = $meth->{api_name}; - - $m{$api_name}{package} = $meth->{package}; - $m{$api_name}{method} = $meth->{method}; - - $m{$api_name}{api_level} = int $meth->{api_level}; - $m{$api_name}{server_class} = $meth->{server_class} || '**ALL**'; - $m{$api_name}{stream} = int($meth->{stream} || 0); - $m{$api_name}{cachable} = int($meth->{cachable} || 0); - - $m{$api_name}{note} = $meth->{note} || 'what I do'; - ($m{$api_name}{cvs} = $m{$api_name}{package}) =~ s/::/\//go; - - $m{$api_name}{stream} = $m{$api_name}{stream}?'Yes':'No'; - $m{$api_name}{cachable} = $m{$api_name}{cachable}?'Yes':'No'; - - print STDERR "." unless ($count % 10); - - $count++; -} - -warn "\nThere are ".scalar(keys %m)." methods published by $service\n"; - -my @m_list; -if (!$sort_ignore) { - @m_list = sort keys %m; -} else { - @m_list = - map { ($$_[0]) } - sort { - $$a[1] cmp $$b[1] - || - length($$b[0]) <=> length($$a[0]) - } map { - [$_ => - do { - (my $x = $_) =~ s/^$sort_ignore//go; - $x; - } ] - } keys %m; -} - -for my $meth ( @m_list ) { - - my $pad = 0; - my $header = '====='; - if ($nest) { - no warnings; - (my $x = $meth) =~ s/\./$pad++;$1/eg; - } - $pad = ' 'x$pad; - - print <<" METHOD"; -$pad$header $meth $header - -$m{$meth}{note} - - * [[osrf-devel:terms#opensrf_api-level|API Level]]: $m{$meth}{api_level} - * [[osrf-devel:terms#opensrf_server_class|Server Class]]: $m{$meth}{server_class} - * Implementation Method: [[$cvs_base/$m{$meth}{cvs}.pm|$m{$meth}{package}\::$m{$meth}{method}]] - * Streaming [[osrf-devel:terms#opensrf_method|Method]]: $m{$meth}{stream} - * Cachable [[osrf-devel:terms#opensrf_method|Method]]: $m{$meth}{cachable} - - * **Parameters:** - * //param1//\\\\ what it is... - * **Returns:** - * //Success//\\\\ successful format - * //Failure//\\\\ failure format (exception, etc) - - - METHOD -} - diff --git a/doc/dokuwiki-doc-stubber.pl.in b/doc/dokuwiki-doc-stubber.pl.in new file mode 100755 index 0000000..021f7d4 --- /dev/null +++ b/doc/dokuwiki-doc-stubber.pl.in @@ -0,0 +1,114 @@ +#!/usr/bin/perl -w +use OpenSRF::System qw(@sysconfdir@/opensrf_core.xml); +use Getopt::Long + +$| = 1; + +my $cvs_base = 'http://open-ils.org/cgi-bin/viewcvs.cgi/ILS/Open-ILS/src/perlmods/'; +my $nest = 0; +my $service; +my $filter; +my $sort_ignore; + +GetOptions( 'cvs_base=s' => \$cvs_base, + 'nest' => \$nest, + 'service=s' => \$service, + 'ignore=s' => \$sort_ignore, + 'filter=s' => \$filter, +); + +unless( $service ) { + print "usage: $0 -s [-c -f -n]\n"; + exit; +} + +OpenSRF::System->bootstrap_client(); +my $session = OpenSRF::AppSession->create( $service ); + +my $req; +if ($filter) { + $req = $session->request('opensrf.system.method', $filter); +} else { + $req = $session->request('opensrf.system.method.all'); +} + +my $count = 1; +my %m; +while( my $meth = $req->recv(60) ) { + $meth = $meth->content; + + $api_name = $meth->{api_name}; + + $m{$api_name}{api_name} = $meth->{api_name}; + + $m{$api_name}{package} = $meth->{package}; + $m{$api_name}{method} = $meth->{method}; + + $m{$api_name}{api_level} = int $meth->{api_level}; + $m{$api_name}{server_class} = $meth->{server_class} || '**ALL**'; + $m{$api_name}{stream} = int($meth->{stream} || 0); + $m{$api_name}{cachable} = int($meth->{cachable} || 0); + + $m{$api_name}{note} = $meth->{note} || 'what I do'; + ($m{$api_name}{cvs} = $m{$api_name}{package}) =~ s/::/\//go; + + $m{$api_name}{stream} = $m{$api_name}{stream}?'Yes':'No'; + $m{$api_name}{cachable} = $m{$api_name}{cachable}?'Yes':'No'; + + print STDERR "." unless ($count % 10); + + $count++; +} + +warn "\nThere are ".scalar(keys %m)." methods published by $service\n"; + +my @m_list; +if (!$sort_ignore) { + @m_list = sort keys %m; +} else { + @m_list = + map { ($$_[0]) } + sort { + $$a[1] cmp $$b[1] + || + length($$b[0]) <=> length($$a[0]) + } map { + [$_ => + do { + (my $x = $_) =~ s/^$sort_ignore//go; + $x; + } ] + } keys %m; +} + +for my $meth ( @m_list ) { + + my $pad = 0; + my $header = '====='; + if ($nest) { + no warnings; + (my $x = $meth) =~ s/\./$pad++;$1/eg; + } + $pad = ' 'x$pad; + + print <<" METHOD"; +$pad$header $meth $header + +$m{$meth}{note} + + * [[osrf-devel:terms#opensrf_api-level|API Level]]: $m{$meth}{api_level} + * [[osrf-devel:terms#opensrf_server_class|Server Class]]: $m{$meth}{server_class} + * Implementation Method: [[$cvs_base/$m{$meth}{cvs}.pm|$m{$meth}{package}\::$m{$meth}{method}]] + * Streaming [[osrf-devel:terms#opensrf_method|Method]]: $m{$meth}{stream} + * Cachable [[osrf-devel:terms#opensrf_method|Method]]: $m{$meth}{cachable} + + * **Parameters:** + * //param1//\\\\ what it is... + * **Returns:** + * //Success//\\\\ successful format + * //Failure//\\\\ failure format (exception, etc) + + + METHOD +} +